159.96/105.01 MAYBE 159.96/105.02 proof of /export/starexec/sandbox/benchmark/theBenchmark.hs 159.96/105.02 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 159.96/105.02 159.96/105.02 159.96/105.02 H-Termination with start terms of the given HASKELL could not be shown: 159.96/105.02 159.96/105.02 (0) HASKELL 159.96/105.02 (1) BR [EQUIVALENT, 0 ms] 159.96/105.02 (2) HASKELL 159.96/105.02 (3) COR [EQUIVALENT, 0 ms] 159.96/105.02 (4) HASKELL 159.96/105.02 (5) Narrow [SOUND, 0 ms] 159.96/105.02 (6) AND 159.96/105.02 (7) QDP 159.96/105.02 (8) QDPSizeChangeProof [EQUIVALENT, 0 ms] 159.96/105.02 (9) YES 159.96/105.02 (10) QDP 159.96/105.02 (11) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (12) AND 159.96/105.02 (13) QDP 159.96/105.02 (14) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (15) QDP 159.96/105.02 (16) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (17) QDP 159.96/105.02 (18) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (19) QDP 159.96/105.02 (20) UsableRulesProof [EQUIVALENT, 0 ms] 159.96/105.02 (21) QDP 159.96/105.02 (22) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (23) QDP 159.96/105.02 (24) UsableRulesProof [EQUIVALENT, 0 ms] 159.96/105.02 (25) QDP 159.96/105.02 (26) QReductionProof [EQUIVALENT, 0 ms] 159.96/105.02 (27) QDP 159.96/105.02 (28) QDPSizeChangeProof [EQUIVALENT, 0 ms] 159.96/105.02 (29) YES 159.96/105.02 (30) QDP 159.96/105.02 (31) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (32) QDP 159.96/105.02 (33) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (34) QDP 159.96/105.02 (35) QDPSizeChangeProof [EQUIVALENT, 18 ms] 159.96/105.02 (36) YES 159.96/105.02 (37) QDP 159.96/105.02 (38) MNOCProof [EQUIVALENT, 0 ms] 159.96/105.02 (39) QDP 159.96/105.02 (40) InductionCalculusProof [EQUIVALENT, 0 ms] 159.96/105.02 (41) QDP 159.96/105.02 (42) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (43) QDP 159.96/105.02 (44) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (45) AND 159.96/105.02 (46) QDP 159.96/105.02 (47) UsableRulesProof [EQUIVALENT, 0 ms] 159.96/105.02 (48) QDP 159.96/105.02 (49) QReductionProof [EQUIVALENT, 0 ms] 159.96/105.02 (50) QDP 159.96/105.02 (51) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (52) QDP 159.96/105.02 (53) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (54) AND 159.96/105.02 (55) QDP 159.96/105.02 (56) UsableRulesProof [EQUIVALENT, 0 ms] 159.96/105.02 (57) QDP 159.96/105.02 (58) QReductionProof [EQUIVALENT, 0 ms] 159.96/105.02 (59) QDP 159.96/105.02 (60) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (61) QDP 159.96/105.02 (62) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (63) QDP 159.96/105.02 (64) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (65) QDP 159.96/105.02 (66) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (67) QDP 159.96/105.02 (68) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (69) QDP 159.96/105.02 (70) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (71) QDP 159.96/105.02 (72) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (73) QDP 159.96/105.02 (74) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (75) QDP 159.96/105.02 (76) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (77) QDP 159.96/105.02 (78) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (79) QDP 159.96/105.02 (80) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (81) QDP 159.96/105.02 (82) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (83) QDP 159.96/105.02 (84) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (85) QDP 159.96/105.02 (86) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (87) QDP 159.96/105.02 (88) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (89) QDP 159.96/105.02 (90) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (91) QDP 159.96/105.02 (92) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (93) QDP 159.96/105.02 (94) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (95) QDP 159.96/105.02 (96) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (97) QDP 159.96/105.02 (98) QDPSizeChangeProof [EQUIVALENT, 0 ms] 159.96/105.02 (99) YES 159.96/105.02 (100) QDP 159.96/105.02 (101) UsableRulesProof [EQUIVALENT, 0 ms] 159.96/105.02 (102) QDP 159.96/105.02 (103) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (104) QDP 159.96/105.02 (105) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (106) AND 159.96/105.02 (107) QDP 159.96/105.02 (108) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (109) QDP 159.96/105.02 (110) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (111) QDP 159.96/105.02 (112) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (113) QDP 159.96/105.02 (114) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (115) QDP 159.96/105.02 (116) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (117) QDP 159.96/105.02 (118) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (119) QDP 159.96/105.02 (120) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (121) QDP 159.96/105.02 (122) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (123) QDP 159.96/105.02 (124) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (125) QDP 159.96/105.02 (126) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (127) QDP 159.96/105.02 (128) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (129) QDP 159.96/105.02 (130) QDPOrderProof [EQUIVALENT, 40 ms] 159.96/105.02 (131) QDP 159.96/105.02 (132) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (133) TRUE 159.96/105.02 (134) QDP 159.96/105.02 (135) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (136) QDP 159.96/105.02 (137) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (138) AND 159.96/105.02 (139) QDP 159.96/105.02 (140) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (141) QDP 159.96/105.02 (142) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (143) QDP 159.96/105.02 (144) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (145) QDP 159.96/105.02 (146) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (147) QDP 159.96/105.02 (148) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (149) QDP 159.96/105.02 (150) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (151) QDP 159.96/105.02 (152) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (153) QDP 159.96/105.02 (154) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (155) QDP 159.96/105.02 (156) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (157) QDP 159.96/105.02 (158) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (159) QDP 159.96/105.02 (160) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (161) QDP 159.96/105.02 (162) QDPOrderProof [EQUIVALENT, 0 ms] 159.96/105.02 (163) QDP 159.96/105.02 (164) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (165) TRUE 159.96/105.02 (166) QDP 159.96/105.02 (167) InductionCalculusProof [EQUIVALENT, 6 ms] 159.96/105.02 (168) QDP 159.96/105.02 (169) QDP 159.96/105.02 (170) UsableRulesProof [EQUIVALENT, 0 ms] 159.96/105.02 (171) QDP 159.96/105.02 (172) QReductionProof [EQUIVALENT, 0 ms] 159.96/105.02 (173) QDP 159.96/105.02 (174) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (175) QDP 159.96/105.02 (176) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (177) AND 159.96/105.02 (178) QDP 159.96/105.02 (179) UsableRulesProof [EQUIVALENT, 0 ms] 159.96/105.02 (180) QDP 159.96/105.02 (181) QReductionProof [EQUIVALENT, 0 ms] 159.96/105.02 (182) QDP 159.96/105.02 (183) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (184) QDP 159.96/105.02 (185) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (186) AND 159.96/105.02 (187) QDP 159.96/105.02 (188) UsableRulesProof [EQUIVALENT, 0 ms] 159.96/105.02 (189) QDP 159.96/105.02 (190) QReductionProof [EQUIVALENT, 0 ms] 159.96/105.02 (191) QDP 159.96/105.02 (192) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (193) QDP 159.96/105.02 (194) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (195) QDP 159.96/105.02 (196) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (197) QDP 159.96/105.02 (198) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (199) QDP 159.96/105.02 (200) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (201) QDP 159.96/105.02 (202) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (203) QDP 159.96/105.02 (204) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (205) QDP 159.96/105.02 (206) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (207) QDP 159.96/105.02 (208) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (209) QDP 159.96/105.02 (210) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (211) QDP 159.96/105.02 (212) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (213) QDP 159.96/105.02 (214) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (215) QDP 159.96/105.02 (216) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (217) QDP 159.96/105.02 (218) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (219) QDP 159.96/105.02 (220) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (221) QDP 159.96/105.02 (222) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (223) QDP 159.96/105.02 (224) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (225) QDP 159.96/105.02 (226) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (227) QDP 159.96/105.02 (228) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (229) QDP 159.96/105.02 (230) QDPSizeChangeProof [EQUIVALENT, 0 ms] 159.96/105.02 (231) YES 159.96/105.02 (232) QDP 159.96/105.02 (233) UsableRulesProof [EQUIVALENT, 0 ms] 159.96/105.02 (234) QDP 159.96/105.02 (235) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (236) QDP 159.96/105.02 (237) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (238) AND 159.96/105.02 (239) QDP 159.96/105.02 (240) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (241) QDP 159.96/105.02 (242) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (243) QDP 159.96/105.02 (244) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (245) QDP 159.96/105.02 (246) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (247) QDP 159.96/105.02 (248) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (249) QDP 159.96/105.02 (250) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (251) QDP 159.96/105.02 (252) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (253) QDP 159.96/105.02 (254) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (255) QDP 159.96/105.02 (256) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (257) QDP 159.96/105.02 (258) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (259) QDP 159.96/105.02 (260) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (261) QDP 159.96/105.02 (262) QDPOrderProof [EQUIVALENT, 19 ms] 159.96/105.02 (263) QDP 159.96/105.02 (264) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (265) TRUE 159.96/105.02 (266) QDP 159.96/105.02 (267) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (268) QDP 159.96/105.02 (269) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (270) AND 159.96/105.02 (271) QDP 159.96/105.02 (272) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (273) QDP 159.96/105.02 (274) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (275) QDP 159.96/105.02 (276) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (277) QDP 159.96/105.02 (278) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (279) QDP 159.96/105.02 (280) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (281) QDP 159.96/105.02 (282) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (283) QDP 159.96/105.02 (284) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (285) QDP 159.96/105.02 (286) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (287) QDP 159.96/105.02 (288) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (289) QDP 159.96/105.02 (290) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (291) QDP 159.96/105.02 (292) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (293) QDP 159.96/105.02 (294) QDPOrderProof [EQUIVALENT, 0 ms] 159.96/105.02 (295) QDP 159.96/105.02 (296) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (297) TRUE 159.96/105.02 (298) QDP 159.96/105.02 (299) InductionCalculusProof [EQUIVALENT, 0 ms] 159.96/105.02 (300) QDP 159.96/105.02 (301) QDP 159.96/105.02 (302) UsableRulesProof [EQUIVALENT, 0 ms] 159.96/105.02 (303) QDP 159.96/105.02 (304) QReductionProof [EQUIVALENT, 0 ms] 159.96/105.02 (305) QDP 159.96/105.02 (306) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (307) QDP 159.96/105.02 (308) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (309) QDP 159.96/105.02 (310) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (311) QDP 159.96/105.02 (312) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (313) QDP 159.96/105.02 (314) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (315) QDP 159.96/105.02 (316) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (317) QDP 159.96/105.02 (318) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (319) QDP 159.96/105.02 (320) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (321) QDP 159.96/105.02 (322) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.02 (323) AND 159.96/105.02 (324) QDP 159.96/105.02 (325) UsableRulesProof [EQUIVALENT, 0 ms] 159.96/105.02 (326) QDP 159.96/105.02 (327) QReductionProof [EQUIVALENT, 0 ms] 159.96/105.02 (328) QDP 159.96/105.02 (329) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.02 (330) QDP 159.96/105.02 (331) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (332) QDP 159.96/105.03 (333) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (334) QDP 159.96/105.03 (335) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.03 (336) QDP 159.96/105.03 (337) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (338) QDP 159.96/105.03 (339) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (340) QDP 159.96/105.03 (341) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (342) QDP 159.96/105.03 (343) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.03 (344) QDP 159.96/105.03 (345) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (346) QDP 159.96/105.03 (347) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (348) QDP 159.96/105.03 (349) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.03 (350) QDP 159.96/105.03 (351) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (352) QDP 159.96/105.03 (353) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (354) QDP 159.96/105.03 (355) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (356) QDP 159.96/105.03 (357) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.03 (358) QDP 159.96/105.03 (359) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (360) QDP 159.96/105.03 (361) QDPSizeChangeProof [EQUIVALENT, 0 ms] 159.96/105.03 (362) YES 159.96/105.03 (363) QDP 159.96/105.03 (364) UsableRulesProof [EQUIVALENT, 0 ms] 159.96/105.03 (365) QDP 159.96/105.03 (366) QReductionProof [EQUIVALENT, 0 ms] 159.96/105.03 (367) QDP 159.96/105.03 (368) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (369) QDP 159.96/105.03 (370) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.03 (371) QDP 159.96/105.03 (372) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (373) QDP 159.96/105.03 (374) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (375) QDP 159.96/105.03 (376) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (377) QDP 159.96/105.03 (378) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.03 (379) QDP 159.96/105.03 (380) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (381) QDP 159.96/105.03 (382) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (383) QDP 159.96/105.03 (384) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.03 (385) QDP 159.96/105.03 (386) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (387) QDP 159.96/105.03 (388) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (389) QDP 159.96/105.03 (390) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (391) QDP 159.96/105.03 (392) DependencyGraphProof [EQUIVALENT, 0 ms] 159.96/105.03 (393) QDP 159.96/105.03 (394) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (395) QDP 159.96/105.03 (396) QDPSizeChangeProof [EQUIVALENT, 0 ms] 159.96/105.03 (397) YES 159.96/105.03 (398) QDP 159.96/105.03 (399) UsableRulesProof [EQUIVALENT, 0 ms] 159.96/105.03 (400) QDP 159.96/105.03 (401) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (402) QDP 159.96/105.03 (403) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (404) QDP 159.96/105.03 (405) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (406) QDP 159.96/105.03 (407) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (408) QDP 159.96/105.03 (409) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (410) QDP 159.96/105.03 (411) TransformationProof [EQUIVALENT, 0 ms] 159.96/105.03 (412) QDP 162.51/105.75 (413) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.75 (414) QDP 162.51/105.75 (415) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.75 (416) QDP 162.51/105.75 (417) DependencyGraphProof [EQUIVALENT, 0 ms] 162.51/105.75 (418) QDP 162.51/105.75 (419) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.75 (420) QDP 162.51/105.75 (421) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.75 (422) QDP 162.51/105.75 (423) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.75 (424) QDP 162.51/105.75 (425) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.75 (426) QDP 162.51/105.75 (427) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.75 (428) QDP 162.51/105.76 (429) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (430) QDP 162.51/105.76 (431) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (432) QDP 162.51/105.76 (433) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (434) QDP 162.51/105.76 (435) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (436) QDP 162.51/105.76 (437) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (438) QDP 162.51/105.76 (439) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (440) QDP 162.51/105.76 (441) DependencyGraphProof [EQUIVALENT, 0 ms] 162.51/105.76 (442) QDP 162.51/105.76 (443) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (444) QDP 162.51/105.76 (445) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (446) QDP 162.51/105.76 (447) DependencyGraphProof [EQUIVALENT, 0 ms] 162.51/105.76 (448) AND 162.51/105.76 (449) QDP 162.51/105.76 (450) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (451) QDP 162.51/105.76 (452) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (453) QDP 162.51/105.76 (454) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (455) QDP 162.51/105.76 (456) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (457) QDP 162.51/105.76 (458) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (459) QDP 162.51/105.76 (460) DependencyGraphProof [EQUIVALENT, 0 ms] 162.51/105.76 (461) QDP 162.51/105.76 (462) QDPOrderProof [EQUIVALENT, 290 ms] 162.51/105.76 (463) QDP 162.51/105.76 (464) DependencyGraphProof [EQUIVALENT, 0 ms] 162.51/105.76 (465) TRUE 162.51/105.76 (466) QDP 162.51/105.76 (467) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (468) QDP 162.51/105.76 (469) DependencyGraphProof [EQUIVALENT, 0 ms] 162.51/105.76 (470) QDP 162.51/105.76 (471) QDPOrderProof [EQUIVALENT, 290 ms] 162.51/105.76 (472) QDP 162.51/105.76 (473) DependencyGraphProof [EQUIVALENT, 0 ms] 162.51/105.76 (474) TRUE 162.51/105.76 (475) QDP 162.51/105.76 (476) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (477) QDP 162.51/105.76 (478) DependencyGraphProof [EQUIVALENT, 0 ms] 162.51/105.76 (479) AND 162.51/105.76 (480) QDP 162.51/105.76 (481) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (482) QDP 162.51/105.76 (483) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (484) QDP 162.51/105.76 (485) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (486) QDP 162.51/105.76 (487) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (488) QDP 162.51/105.76 (489) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (490) QDP 162.51/105.76 (491) QDPOrderProof [EQUIVALENT, 189 ms] 162.51/105.76 (492) QDP 162.51/105.76 (493) DependencyGraphProof [EQUIVALENT, 0 ms] 162.51/105.76 (494) TRUE 162.51/105.76 (495) QDP 162.51/105.76 (496) QDPOrderProof [EQUIVALENT, 189 ms] 162.51/105.76 (497) QDP 162.51/105.76 (498) DependencyGraphProof [EQUIVALENT, 0 ms] 162.51/105.76 (499) TRUE 162.51/105.76 (500) QDP 162.51/105.76 (501) InductionCalculusProof [EQUIVALENT, 0 ms] 162.51/105.76 (502) QDP 162.51/105.76 (503) QDP 162.51/105.76 (504) QDPSizeChangeProof [EQUIVALENT, 0 ms] 162.51/105.76 (505) YES 162.51/105.76 (506) QDP 162.51/105.76 (507) DependencyGraphProof [EQUIVALENT, 0 ms] 162.51/105.76 (508) AND 162.51/105.76 (509) QDP 162.51/105.76 (510) TransformationProof [EQUIVALENT, 32 ms] 162.51/105.76 (511) QDP 162.51/105.76 (512) DependencyGraphProof [EQUIVALENT, 0 ms] 162.51/105.76 (513) AND 162.51/105.76 (514) QDP 162.51/105.76 (515) UsableRulesProof [EQUIVALENT, 0 ms] 162.51/105.76 (516) QDP 162.51/105.76 (517) QReductionProof [EQUIVALENT, 0 ms] 162.51/105.76 (518) QDP 162.51/105.76 (519) MNOCProof [EQUIVALENT, 0 ms] 162.51/105.76 (520) QDP 162.51/105.76 (521) NonTerminationLoopProof [COMPLETE, 0 ms] 162.51/105.76 (522) NO 162.51/105.76 (523) QDP 162.51/105.76 (524) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (525) QDP 162.51/105.76 (526) UsableRulesProof [EQUIVALENT, 0 ms] 162.51/105.76 (527) QDP 162.51/105.76 (528) QReductionProof [EQUIVALENT, 0 ms] 162.51/105.76 (529) QDP 162.51/105.76 (530) TransformationProof [EQUIVALENT, 46 ms] 162.51/105.76 (531) QDP 162.51/105.76 (532) DependencyGraphProof [EQUIVALENT, 0 ms] 162.51/105.76 (533) QDP 162.51/105.76 (534) UsableRulesProof [EQUIVALENT, 0 ms] 162.51/105.76 (535) QDP 162.51/105.76 (536) QReductionProof [EQUIVALENT, 0 ms] 162.51/105.76 (537) QDP 162.51/105.76 (538) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (539) QDP 162.51/105.76 (540) QDPSizeChangeProof [EQUIVALENT, 0 ms] 162.51/105.76 (541) YES 162.51/105.76 (542) QDP 162.51/105.76 (543) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (544) QDP 162.51/105.76 (545) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (546) QDP 162.51/105.76 (547) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (548) QDP 162.51/105.76 (549) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (550) QDP 162.51/105.76 (551) DependencyGraphProof [EQUIVALENT, 0 ms] 162.51/105.76 (552) AND 162.51/105.76 (553) QDP 162.51/105.76 (554) UsableRulesProof [EQUIVALENT, 0 ms] 162.51/105.76 (555) QDP 162.51/105.76 (556) QReductionProof [EQUIVALENT, 0 ms] 162.51/105.76 (557) QDP 162.51/105.76 (558) MNOCProof [EQUIVALENT, 0 ms] 162.51/105.76 (559) QDP 162.51/105.76 (560) NonTerminationLoopProof [COMPLETE, 0 ms] 162.51/105.76 (561) NO 162.51/105.76 (562) QDP 162.51/105.76 (563) UsableRulesProof [EQUIVALENT, 0 ms] 162.51/105.76 (564) QDP 162.51/105.76 (565) QReductionProof [EQUIVALENT, 0 ms] 162.51/105.76 (566) QDP 162.51/105.76 (567) TransformationProof [EQUIVALENT, 12 ms] 162.51/105.76 (568) QDP 162.51/105.76 (569) UsableRulesProof [EQUIVALENT, 0 ms] 162.51/105.76 (570) QDP 162.51/105.76 (571) QReductionProof [EQUIVALENT, 0 ms] 162.51/105.76 (572) QDP 162.51/105.76 (573) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (574) QDP 162.51/105.76 (575) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (576) QDP 162.51/105.76 (577) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (578) QDP 162.51/105.76 (579) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (580) QDP 162.51/105.76 (581) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (582) QDP 162.51/105.76 (583) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (584) QDP 162.51/105.76 (585) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (586) QDP 162.51/105.76 (587) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (588) QDP 162.51/105.76 (589) DependencyGraphProof [EQUIVALENT, 0 ms] 162.51/105.76 (590) QDP 162.51/105.76 (591) MNOCProof [EQUIVALENT, 0 ms] 162.51/105.76 (592) QDP 162.51/105.76 (593) InductionCalculusProof [EQUIVALENT, 0 ms] 162.51/105.76 (594) QDP 162.51/105.76 (595) QDPPairToRuleProof [EQUIVALENT, 0 ms] 162.51/105.76 (596) AND 162.51/105.76 (597) QDP 162.51/105.76 (598) MNOCProof [EQUIVALENT, 0 ms] 162.51/105.76 (599) QDP 162.51/105.76 (600) InductionCalculusProof [EQUIVALENT, 0 ms] 162.51/105.76 (601) QDP 162.51/105.76 (602) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (603) QDP 162.51/105.76 (604) DependencyGraphProof [EQUIVALENT, 0 ms] 162.51/105.76 (605) QDP 162.51/105.76 (606) UsableRulesProof [EQUIVALENT, 0 ms] 162.51/105.76 (607) QDP 162.51/105.76 (608) QReductionProof [EQUIVALENT, 0 ms] 162.51/105.76 (609) QDP 162.51/105.76 (610) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (611) QDP 162.51/105.76 (612) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (613) QDP 162.51/105.76 (614) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (615) QDP 162.51/105.76 (616) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (617) QDP 162.51/105.76 (618) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (619) QDP 162.51/105.76 (620) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (621) QDP 162.51/105.76 (622) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (623) QDP 162.51/105.76 (624) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (625) QDP 162.51/105.76 (626) UsableRulesProof [EQUIVALENT, 0 ms] 162.51/105.76 (627) QDP 162.51/105.76 (628) QReductionProof [EQUIVALENT, 0 ms] 162.51/105.76 (629) QDP 162.51/105.76 (630) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (631) QDP 162.51/105.76 (632) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (633) QDP 162.51/105.76 (634) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (635) QDP 162.51/105.76 (636) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (637) QDP 162.51/105.76 (638) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (639) QDP 162.51/105.76 (640) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (641) QDP 162.51/105.76 (642) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (643) QDP 162.51/105.76 (644) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (645) QDP 162.51/105.76 (646) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (647) QDP 162.51/105.76 (648) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (649) QDP 162.51/105.76 (650) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (651) QDP 162.51/105.76 (652) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (653) QDP 162.51/105.76 (654) TransformationProof [EQUIVALENT, 0 ms] 162.51/105.76 (655) QDP 162.51/105.76 (656) MNOCProof [EQUIVALENT, 0 ms] 162.51/105.76 (657) QDP 162.51/105.76 (658) InductionCalculusProof [EQUIVALENT, 20 ms] 162.51/105.76 (659) QDP 162.51/105.76 (660) QDP 162.51/105.76 (661) QDPSizeChangeProof [EQUIVALENT, 0 ms] 162.51/105.76 (662) YES 162.51/105.76 (663) QDP 162.51/105.76 (664) QDPSizeChangeProof [EQUIVALENT, 0 ms] 162.51/105.76 (665) YES 162.51/105.76 (666) QDP 162.51/105.76 (667) QDPSizeChangeProof [EQUIVALENT, 0 ms] 162.51/105.76 (668) YES 162.51/105.76 (669) QDP 162.51/105.76 (670) QDPSizeChangeProof [EQUIVALENT, 0 ms] 162.51/105.76 (671) YES 162.51/105.76 (672) QDP 162.51/105.76 (673) DependencyGraphProof [EQUIVALENT, 0 ms] 162.51/105.76 (674) AND 162.51/105.76 (675) QDP 162.51/105.76 (676) QDPSizeChangeProof [EQUIVALENT, 0 ms] 162.51/105.76 (677) YES 162.51/105.76 (678) QDP 162.51/105.76 (679) MRRProof [EQUIVALENT, 0 ms] 162.51/105.76 (680) QDP 162.51/105.76 (681) PisEmptyProof [EQUIVALENT, 0 ms] 162.51/105.76 (682) YES 162.51/105.76 (683) Narrow [COMPLETE, 0 ms] 162.51/105.76 (684) QDP 162.51/105.76 (685) PisEmptyProof [EQUIVALENT, 0 ms] 162.51/105.76 (686) YES 162.51/105.76 162.51/105.76 162.51/105.76 ---------------------------------------- 162.51/105.76 162.51/105.76 (0) 162.51/105.76 Obligation: 162.51/105.76 mainModule Main 162.51/105.76 module Main where { 162.51/105.76 import qualified Prelude; 162.51/105.76 data MyBool = MyTrue | MyFalse ; 162.51/105.76 162.51/105.76 data MyInt = Pos Main.Nat | Neg Main.Nat ; 162.51/105.76 162.51/105.76 data Main.Nat = Succ Main.Nat | Zero ; 162.51/105.76 162.51/105.76 data Ordering = LT | EQ | GT ; 162.51/105.76 162.51/105.76 data Ratio a = CnPc a a ; 162.51/105.76 162.51/105.76 absMyInt :: MyInt -> MyInt; 162.51/105.76 absMyInt = absReal; 162.51/105.76 162.51/105.76 absReal x = absReal2 x; 162.51/105.76 162.51/105.76 absReal0 x MyTrue = negateMyInt x; 162.51/105.76 162.51/105.76 absReal1 x MyTrue = x; 162.51/105.76 absReal1 x MyFalse = absReal0 x otherwise; 162.51/105.76 162.51/105.76 absReal2 x = absReal1 x (gtEsMyInt x (fromIntMyInt (Main.Pos Main.Zero))); 162.51/105.76 162.51/105.76 compareMyInt :: MyInt -> MyInt -> Ordering; 162.51/105.76 compareMyInt = primCmpInt; 162.51/105.76 162.51/105.76 error :: a; 162.51/105.76 error = stop MyTrue; 162.51/105.76 162.51/105.76 esEsMyInt :: MyInt -> MyInt -> MyBool; 162.51/105.76 esEsMyInt = primEqInt; 162.51/105.76 162.51/105.76 esEsOrdering :: Ordering -> Ordering -> MyBool; 162.51/105.76 esEsOrdering LT LT = MyTrue; 162.51/105.76 esEsOrdering LT EQ = MyFalse; 162.51/105.76 esEsOrdering LT GT = MyFalse; 162.51/105.76 esEsOrdering EQ LT = MyFalse; 162.51/105.76 esEsOrdering EQ EQ = MyTrue; 162.51/105.76 esEsOrdering EQ GT = MyFalse; 162.51/105.76 esEsOrdering GT LT = MyFalse; 162.51/105.76 esEsOrdering GT EQ = MyFalse; 162.51/105.76 esEsOrdering GT GT = MyTrue; 162.51/105.76 162.51/105.76 evenMyInt :: MyInt -> MyBool; 162.51/105.76 evenMyInt = primEvenInt; 162.51/105.76 162.51/105.76 fromIntMyInt :: MyInt -> MyInt; 162.51/105.76 fromIntMyInt x = x; 162.51/105.76 162.51/105.76 fromIntRatio :: MyInt -> Ratio MyInt; 162.51/105.76 fromIntRatio = intToRatio; 162.51/105.76 162.51/105.76 fsEsOrdering :: Ordering -> Ordering -> MyBool; 162.51/105.76 fsEsOrdering x y = not (esEsOrdering x y); 162.51/105.76 162.51/105.76 gcd zu zv = gcd3 zu zv; 162.51/105.76 gcd x y = gcd0 x y; 162.51/105.76 162.51/105.76 gcd0 x y = gcd0Gcd' (absMyInt x) (absMyInt y); 162.51/105.76 162.51/105.76 gcd0Gcd' x yu = gcd0Gcd'2 x yu; 162.51/105.76 gcd0Gcd' x y = gcd0Gcd'0 x y; 162.51/105.76 162.51/105.76 gcd0Gcd'0 x y = gcd0Gcd' y (remMyInt x y); 162.51/105.76 162.51/105.76 gcd0Gcd'1 MyTrue x yu = x; 162.51/105.76 gcd0Gcd'1 yv yw yx = gcd0Gcd'0 yw yx; 162.51/105.76 162.51/105.76 gcd0Gcd'2 x yu = gcd0Gcd'1 (esEsMyInt yu (fromIntMyInt (Main.Pos Main.Zero))) x yu; 162.51/105.76 gcd0Gcd'2 yy yz = gcd0Gcd'0 yy yz; 162.51/105.76 162.51/105.76 gcd1 MyTrue zu zv = Main.error; 162.51/105.76 gcd1 zw zx zy = gcd0 zx zy; 162.51/105.76 162.51/105.76 gcd2 MyTrue zu zv = gcd1 (esEsMyInt zv (fromIntMyInt (Main.Pos Main.Zero))) zu zv; 162.51/105.76 gcd2 zz vuu vuv = gcd0 vuu vuv; 162.51/105.76 162.51/105.76 gcd3 zu zv = gcd2 (esEsMyInt zu (fromIntMyInt (Main.Pos Main.Zero))) zu zv; 162.51/105.76 gcd3 vuw vux = gcd0 vuw vux; 162.51/105.76 162.51/105.76 gtEsMyInt :: MyInt -> MyInt -> MyBool; 162.51/105.76 gtEsMyInt x y = fsEsOrdering (compareMyInt x y) LT; 162.51/105.76 162.51/105.76 gtMyInt :: MyInt -> MyInt -> MyBool; 162.51/105.76 gtMyInt x y = esEsOrdering (compareMyInt x y) GT; 162.51/105.76 162.51/105.76 intToRatio x = CnPc (fromIntMyInt x) (fromIntMyInt (Main.Pos (Main.Succ Main.Zero))); 162.51/105.76 162.51/105.76 msMyInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 msMyInt = primMinusInt; 162.51/105.76 162.51/105.76 negateMyInt :: MyInt -> MyInt; 162.51/105.76 negateMyInt = primNegInt; 162.51/105.76 162.51/105.76 not :: MyBool -> MyBool; 162.51/105.76 not MyTrue = MyFalse; 162.51/105.76 not MyFalse = MyTrue; 162.51/105.76 162.51/105.76 otherwise :: MyBool; 162.51/105.76 otherwise = MyTrue; 162.51/105.76 162.51/105.76 pr x vww = pr4 x vww; 162.51/105.76 pr x n = pr2 x n; 162.51/105.76 pr wy wz = pr0 wy wz; 162.51/105.76 162.51/105.76 pr0 wy wz = Main.error; 162.51/105.76 162.51/105.76 pr2 x n = pr2Pr1 x n (gtMyInt n (fromIntMyInt (Main.Pos Main.Zero))); 162.51/105.76 pr2 vwu vwv = pr0 vwu vwv; 162.51/105.76 162.51/105.76 pr2F wx vuy y = pr2F4 wx vuy y; 162.51/105.76 pr2F x n y = pr2F0 x n y; 162.51/105.76 162.51/105.76 pr2F0 x n y = pr2F0G y x n; 162.51/105.76 162.51/105.76 pr2F0G vxy x n = pr2F0G2 vxy x n; 162.51/105.76 162.51/105.76 pr2F0G0 vxy x n MyTrue = pr2F x (msMyInt n (fromIntMyInt (Main.Pos (Main.Succ Main.Zero)))) (srRatio x vxy); 162.51/105.76 162.51/105.76 pr2F0G1 vxy x n MyTrue = pr2F0G vxy (srRatio x x) (quotMyInt n (fromIntMyInt (Main.Pos (Main.Succ (Main.Succ Main.Zero))))); 162.51/105.76 pr2F0G1 vxy x n MyFalse = pr2F0G0 vxy x n otherwise; 162.51/105.76 162.51/105.76 pr2F0G2 vxy x n = pr2F0G1 vxy x n (evenMyInt n); 162.51/105.76 162.51/105.76 pr2F3 MyTrue wx vuy y = y; 162.51/105.76 pr2F3 vuz vvu vvv vvw = pr2F0 vvu vvv vvw; 162.51/105.76 162.51/105.76 pr2F4 wx vuy y = pr2F3 (esEsMyInt vuy (fromIntMyInt (Main.Pos Main.Zero))) wx vuy y; 162.51/105.76 pr2F4 vvx vvy vvz = pr2F0 vvx vvy vvz; 162.51/105.76 162.51/105.76 pr2Pr1 x n MyTrue = pr2F x (msMyInt n (fromIntMyInt (Main.Pos (Main.Succ Main.Zero)))) x; 162.51/105.76 pr2Pr1 x n MyFalse = pr0 x n; 162.51/105.76 162.51/105.76 pr3 MyTrue x vww = fromIntRatio (Main.Pos (Main.Succ Main.Zero)); 162.51/105.76 pr3 vwx vwy vwz = pr2 vwy vwz; 162.51/105.76 162.51/105.76 pr4 x vww = pr3 (esEsMyInt vww (fromIntMyInt (Main.Pos Main.Zero))) x vww; 162.51/105.76 pr4 vxu vxv = pr2 vxu vxv; 162.51/105.76 162.51/105.76 primCmpInt :: MyInt -> MyInt -> Ordering; 162.51/105.76 primCmpInt (Main.Pos Main.Zero) (Main.Pos Main.Zero) = EQ; 162.51/105.76 primCmpInt (Main.Pos Main.Zero) (Main.Neg Main.Zero) = EQ; 162.51/105.76 primCmpInt (Main.Neg Main.Zero) (Main.Pos Main.Zero) = EQ; 162.51/105.76 primCmpInt (Main.Neg Main.Zero) (Main.Neg Main.Zero) = EQ; 162.51/105.76 primCmpInt (Main.Pos x) (Main.Pos y) = primCmpNat x y; 162.51/105.76 primCmpInt (Main.Pos x) (Main.Neg y) = GT; 162.51/105.76 primCmpInt (Main.Neg x) (Main.Pos y) = LT; 162.51/105.76 primCmpInt (Main.Neg x) (Main.Neg y) = primCmpNat y x; 162.51/105.76 162.51/105.76 primCmpNat :: Main.Nat -> Main.Nat -> Ordering; 162.51/105.76 primCmpNat Main.Zero Main.Zero = EQ; 162.51/105.76 primCmpNat Main.Zero (Main.Succ y) = LT; 162.51/105.76 primCmpNat (Main.Succ x) Main.Zero = GT; 162.51/105.76 primCmpNat (Main.Succ x) (Main.Succ y) = primCmpNat x y; 162.51/105.76 162.51/105.76 primDivNatS :: Main.Nat -> Main.Nat -> Main.Nat; 162.51/105.76 primDivNatS Main.Zero Main.Zero = Main.error; 162.51/105.76 primDivNatS (Main.Succ x) Main.Zero = Main.error; 162.51/105.76 primDivNatS (Main.Succ x) (Main.Succ y) = primDivNatS0 x y (primGEqNatS x y); 162.51/105.76 primDivNatS Main.Zero (Main.Succ x) = Main.Zero; 162.51/105.76 162.51/105.76 primDivNatS0 x y MyTrue = Main.Succ (primDivNatS (primMinusNatS x y) (Main.Succ y)); 162.51/105.76 primDivNatS0 x y MyFalse = Main.Zero; 162.51/105.76 162.51/105.76 primEqInt :: MyInt -> MyInt -> MyBool; 162.51/105.76 primEqInt (Main.Pos (Main.Succ x)) (Main.Pos (Main.Succ y)) = primEqNat x y; 162.51/105.76 primEqInt (Main.Neg (Main.Succ x)) (Main.Neg (Main.Succ y)) = primEqNat x y; 162.51/105.76 primEqInt (Main.Pos Main.Zero) (Main.Neg Main.Zero) = MyTrue; 162.51/105.76 primEqInt (Main.Neg Main.Zero) (Main.Pos Main.Zero) = MyTrue; 162.51/105.76 primEqInt (Main.Neg Main.Zero) (Main.Neg Main.Zero) = MyTrue; 162.51/105.76 primEqInt (Main.Pos Main.Zero) (Main.Pos Main.Zero) = MyTrue; 162.51/105.76 primEqInt xy xz = MyFalse; 162.51/105.76 162.51/105.76 primEqNat :: Main.Nat -> Main.Nat -> MyBool; 162.51/105.76 primEqNat Main.Zero Main.Zero = MyTrue; 162.51/105.76 primEqNat Main.Zero (Main.Succ y) = MyFalse; 162.51/105.76 primEqNat (Main.Succ x) Main.Zero = MyFalse; 162.51/105.76 primEqNat (Main.Succ x) (Main.Succ y) = primEqNat x y; 162.51/105.76 162.51/105.76 primEvenInt :: MyInt -> MyBool; 162.51/105.76 primEvenInt (Main.Pos x) = primEvenNat x; 162.51/105.76 primEvenInt (Main.Neg x) = primEvenNat x; 162.51/105.76 162.51/105.76 primEvenNat :: Main.Nat -> MyBool; 162.51/105.76 primEvenNat Main.Zero = MyTrue; 162.51/105.76 primEvenNat (Main.Succ Main.Zero) = MyFalse; 162.51/105.76 primEvenNat (Main.Succ (Main.Succ x)) = primEvenNat x; 162.51/105.76 162.51/105.76 primGEqNatS :: Main.Nat -> Main.Nat -> MyBool; 162.51/105.76 primGEqNatS (Main.Succ x) Main.Zero = MyTrue; 162.51/105.76 primGEqNatS (Main.Succ x) (Main.Succ y) = primGEqNatS x y; 162.51/105.76 primGEqNatS Main.Zero (Main.Succ x) = MyFalse; 162.51/105.76 primGEqNatS Main.Zero Main.Zero = MyTrue; 162.51/105.76 162.51/105.76 primMinusInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 primMinusInt (Main.Pos x) (Main.Neg y) = Main.Pos (primPlusNat x y); 162.51/105.76 primMinusInt (Main.Neg x) (Main.Pos y) = Main.Neg (primPlusNat x y); 162.51/105.76 primMinusInt (Main.Neg x) (Main.Neg y) = primMinusNat y x; 162.51/105.76 primMinusInt (Main.Pos x) (Main.Pos y) = primMinusNat x y; 162.51/105.76 162.51/105.76 primMinusNat :: Main.Nat -> Main.Nat -> MyInt; 162.51/105.76 primMinusNat Main.Zero Main.Zero = Main.Pos Main.Zero; 162.51/105.76 primMinusNat Main.Zero (Main.Succ y) = Main.Neg (Main.Succ y); 162.51/105.76 primMinusNat (Main.Succ x) Main.Zero = Main.Pos (Main.Succ x); 162.51/105.76 primMinusNat (Main.Succ x) (Main.Succ y) = primMinusNat x y; 162.51/105.76 162.51/105.76 primMinusNatS :: Main.Nat -> Main.Nat -> Main.Nat; 162.51/105.76 primMinusNatS (Main.Succ x) (Main.Succ y) = primMinusNatS x y; 162.51/105.76 primMinusNatS Main.Zero (Main.Succ y) = Main.Zero; 162.51/105.76 primMinusNatS x Main.Zero = x; 162.51/105.76 162.51/105.76 primModNatS :: Main.Nat -> Main.Nat -> Main.Nat; 162.51/105.76 primModNatS Main.Zero Main.Zero = Main.error; 162.51/105.76 primModNatS Main.Zero (Main.Succ x) = Main.Zero; 162.51/105.76 primModNatS (Main.Succ x) Main.Zero = Main.error; 162.51/105.76 primModNatS (Main.Succ x) (Main.Succ Main.Zero) = Main.Zero; 162.51/105.76 primModNatS (Main.Succ x) (Main.Succ (Main.Succ y)) = primModNatS0 x y (primGEqNatS x (Main.Succ y)); 162.51/105.76 162.51/105.76 primModNatS0 x y MyTrue = primModNatS (primMinusNatS x (Main.Succ y)) (Main.Succ (Main.Succ y)); 162.51/105.76 primModNatS0 x y MyFalse = Main.Succ x; 162.51/105.76 162.51/105.76 primMulInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 primMulInt (Main.Pos x) (Main.Pos y) = Main.Pos (primMulNat x y); 162.51/105.76 primMulInt (Main.Pos x) (Main.Neg y) = Main.Neg (primMulNat x y); 162.51/105.76 primMulInt (Main.Neg x) (Main.Pos y) = Main.Neg (primMulNat x y); 162.51/105.76 primMulInt (Main.Neg x) (Main.Neg y) = Main.Pos (primMulNat x y); 162.51/105.76 162.51/105.76 primMulNat :: Main.Nat -> Main.Nat -> Main.Nat; 162.51/105.76 primMulNat Main.Zero Main.Zero = Main.Zero; 162.51/105.76 primMulNat Main.Zero (Main.Succ y) = Main.Zero; 162.51/105.76 primMulNat (Main.Succ x) Main.Zero = Main.Zero; 162.51/105.76 primMulNat (Main.Succ x) (Main.Succ y) = primPlusNat (primMulNat x (Main.Succ y)) (Main.Succ y); 162.51/105.76 162.51/105.76 primNegInt :: MyInt -> MyInt; 162.51/105.76 primNegInt (Main.Pos x) = Main.Neg x; 162.51/105.76 primNegInt (Main.Neg x) = Main.Pos x; 162.51/105.76 162.51/105.76 primPlusNat :: Main.Nat -> Main.Nat -> Main.Nat; 162.51/105.76 primPlusNat Main.Zero Main.Zero = Main.Zero; 162.51/105.76 primPlusNat Main.Zero (Main.Succ y) = Main.Succ y; 162.51/105.76 primPlusNat (Main.Succ x) Main.Zero = Main.Succ x; 162.51/105.76 primPlusNat (Main.Succ x) (Main.Succ y) = Main.Succ (Main.Succ (primPlusNat x y)); 162.51/105.76 162.51/105.76 primQuotInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 primQuotInt (Main.Pos x) (Main.Pos (Main.Succ y)) = Main.Pos (primDivNatS x (Main.Succ y)); 162.51/105.76 primQuotInt (Main.Pos x) (Main.Neg (Main.Succ y)) = Main.Neg (primDivNatS x (Main.Succ y)); 162.51/105.76 primQuotInt (Main.Neg x) (Main.Pos (Main.Succ y)) = Main.Neg (primDivNatS x (Main.Succ y)); 162.51/105.76 primQuotInt (Main.Neg x) (Main.Neg (Main.Succ y)) = Main.Pos (primDivNatS x (Main.Succ y)); 162.51/105.76 primQuotInt xw xx = Main.error; 162.51/105.76 162.51/105.76 primRemInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 primRemInt (Main.Pos x) (Main.Pos (Main.Succ y)) = Main.Pos (primModNatS x (Main.Succ y)); 162.51/105.76 primRemInt (Main.Pos x) (Main.Neg (Main.Succ y)) = Main.Pos (primModNatS x (Main.Succ y)); 162.51/105.76 primRemInt (Main.Neg x) (Main.Pos (Main.Succ y)) = Main.Neg (primModNatS x (Main.Succ y)); 162.51/105.76 primRemInt (Main.Neg x) (Main.Neg (Main.Succ y)) = Main.Neg (primModNatS x (Main.Succ y)); 162.51/105.76 primRemInt xu xv = Main.error; 162.51/105.76 162.51/105.76 quotMyInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 quotMyInt = primQuotInt; 162.51/105.76 162.51/105.76 reduce x y = reduce2 x y; 162.51/105.76 162.51/105.76 reduce2 x y = reduce2Reduce1 x y x y (esEsMyInt y (fromIntMyInt (Main.Pos Main.Zero))); 162.51/105.76 162.51/105.76 reduce2D vxw vxx = gcd vxw vxx; 162.51/105.76 162.51/105.76 reduce2Reduce0 vxw vxx x y MyTrue = CnPc (quotMyInt x (reduce2D vxw vxx)) (quotMyInt y (reduce2D vxw vxx)); 162.51/105.76 162.51/105.76 reduce2Reduce1 vxw vxx x y MyTrue = Main.error; 162.51/105.76 reduce2Reduce1 vxw vxx x y MyFalse = reduce2Reduce0 vxw vxx x y otherwise; 162.51/105.76 162.51/105.76 remMyInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 remMyInt = primRemInt; 162.51/105.76 162.51/105.76 srMyInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 srMyInt = primMulInt; 162.51/105.76 162.51/105.76 srRatio :: Ratio MyInt -> Ratio MyInt -> Ratio MyInt; 162.51/105.76 srRatio (CnPc x y) (CnPc x' y') = reduce (srMyInt x x') (srMyInt y y'); 162.51/105.76 162.51/105.76 stop :: MyBool -> a; 162.51/105.76 stop MyFalse = stop MyFalse; 162.51/105.76 162.51/105.76 } 162.51/105.76 162.51/105.76 ---------------------------------------- 162.51/105.76 162.51/105.76 (1) BR (EQUIVALENT) 162.51/105.76 Replaced joker patterns by fresh variables and removed binding patterns. 162.51/105.76 ---------------------------------------- 162.51/105.76 162.51/105.76 (2) 162.51/105.76 Obligation: 162.51/105.76 mainModule Main 162.51/105.76 module Main where { 162.51/105.76 import qualified Prelude; 162.51/105.76 data MyBool = MyTrue | MyFalse ; 162.51/105.76 162.51/105.76 data MyInt = Pos Main.Nat | Neg Main.Nat ; 162.51/105.76 162.51/105.76 data Main.Nat = Succ Main.Nat | Zero ; 162.51/105.76 162.51/105.76 data Ordering = LT | EQ | GT ; 162.51/105.76 162.51/105.76 data Ratio a = CnPc a a ; 162.51/105.76 162.51/105.76 absMyInt :: MyInt -> MyInt; 162.51/105.76 absMyInt = absReal; 162.51/105.76 162.51/105.76 absReal x = absReal2 x; 162.51/105.76 162.51/105.76 absReal0 x MyTrue = negateMyInt x; 162.51/105.76 162.51/105.76 absReal1 x MyTrue = x; 162.51/105.76 absReal1 x MyFalse = absReal0 x otherwise; 162.51/105.76 162.51/105.76 absReal2 x = absReal1 x (gtEsMyInt x (fromIntMyInt (Main.Pos Main.Zero))); 162.51/105.76 162.51/105.76 compareMyInt :: MyInt -> MyInt -> Ordering; 162.51/105.76 compareMyInt = primCmpInt; 162.51/105.76 162.51/105.76 error :: a; 162.51/105.76 error = stop MyTrue; 162.51/105.76 162.51/105.76 esEsMyInt :: MyInt -> MyInt -> MyBool; 162.51/105.76 esEsMyInt = primEqInt; 162.51/105.76 162.51/105.76 esEsOrdering :: Ordering -> Ordering -> MyBool; 162.51/105.76 esEsOrdering LT LT = MyTrue; 162.51/105.76 esEsOrdering LT EQ = MyFalse; 162.51/105.76 esEsOrdering LT GT = MyFalse; 162.51/105.76 esEsOrdering EQ LT = MyFalse; 162.51/105.76 esEsOrdering EQ EQ = MyTrue; 162.51/105.76 esEsOrdering EQ GT = MyFalse; 162.51/105.76 esEsOrdering GT LT = MyFalse; 162.51/105.76 esEsOrdering GT EQ = MyFalse; 162.51/105.76 esEsOrdering GT GT = MyTrue; 162.51/105.76 162.51/105.76 evenMyInt :: MyInt -> MyBool; 162.51/105.76 evenMyInt = primEvenInt; 162.51/105.76 162.51/105.76 fromIntMyInt :: MyInt -> MyInt; 162.51/105.76 fromIntMyInt x = x; 162.51/105.76 162.51/105.76 fromIntRatio :: MyInt -> Ratio MyInt; 162.51/105.76 fromIntRatio = intToRatio; 162.51/105.76 162.51/105.76 fsEsOrdering :: Ordering -> Ordering -> MyBool; 162.51/105.76 fsEsOrdering x y = not (esEsOrdering x y); 162.51/105.76 162.51/105.76 gcd zu zv = gcd3 zu zv; 162.51/105.76 gcd x y = gcd0 x y; 162.51/105.76 162.51/105.76 gcd0 x y = gcd0Gcd' (absMyInt x) (absMyInt y); 162.51/105.76 162.51/105.76 gcd0Gcd' x yu = gcd0Gcd'2 x yu; 162.51/105.76 gcd0Gcd' x y = gcd0Gcd'0 x y; 162.51/105.76 162.51/105.76 gcd0Gcd'0 x y = gcd0Gcd' y (remMyInt x y); 162.51/105.76 162.51/105.76 gcd0Gcd'1 MyTrue x yu = x; 162.51/105.76 gcd0Gcd'1 yv yw yx = gcd0Gcd'0 yw yx; 162.51/105.76 162.51/105.76 gcd0Gcd'2 x yu = gcd0Gcd'1 (esEsMyInt yu (fromIntMyInt (Main.Pos Main.Zero))) x yu; 162.51/105.76 gcd0Gcd'2 yy yz = gcd0Gcd'0 yy yz; 162.51/105.76 162.51/105.76 gcd1 MyTrue zu zv = Main.error; 162.51/105.76 gcd1 zw zx zy = gcd0 zx zy; 162.51/105.76 162.51/105.76 gcd2 MyTrue zu zv = gcd1 (esEsMyInt zv (fromIntMyInt (Main.Pos Main.Zero))) zu zv; 162.51/105.76 gcd2 zz vuu vuv = gcd0 vuu vuv; 162.51/105.76 162.51/105.76 gcd3 zu zv = gcd2 (esEsMyInt zu (fromIntMyInt (Main.Pos Main.Zero))) zu zv; 162.51/105.76 gcd3 vuw vux = gcd0 vuw vux; 162.51/105.76 162.51/105.76 gtEsMyInt :: MyInt -> MyInt -> MyBool; 162.51/105.76 gtEsMyInt x y = fsEsOrdering (compareMyInt x y) LT; 162.51/105.76 162.51/105.76 gtMyInt :: MyInt -> MyInt -> MyBool; 162.51/105.76 gtMyInt x y = esEsOrdering (compareMyInt x y) GT; 162.51/105.76 162.51/105.76 intToRatio x = CnPc (fromIntMyInt x) (fromIntMyInt (Main.Pos (Main.Succ Main.Zero))); 162.51/105.76 162.51/105.76 msMyInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 msMyInt = primMinusInt; 162.51/105.76 162.51/105.76 negateMyInt :: MyInt -> MyInt; 162.51/105.76 negateMyInt = primNegInt; 162.51/105.76 162.51/105.76 not :: MyBool -> MyBool; 162.51/105.76 not MyTrue = MyFalse; 162.51/105.76 not MyFalse = MyTrue; 162.51/105.76 162.51/105.76 otherwise :: MyBool; 162.51/105.76 otherwise = MyTrue; 162.51/105.76 162.51/105.76 pr x vww = pr4 x vww; 162.51/105.76 pr x n = pr2 x n; 162.51/105.76 pr wy wz = pr0 wy wz; 162.51/105.76 162.51/105.76 pr0 wy wz = Main.error; 162.51/105.76 162.51/105.76 pr2 x n = pr2Pr1 x n (gtMyInt n (fromIntMyInt (Main.Pos Main.Zero))); 162.51/105.76 pr2 vwu vwv = pr0 vwu vwv; 162.51/105.76 162.51/105.76 pr2F wx vuy y = pr2F4 wx vuy y; 162.51/105.76 pr2F x n y = pr2F0 x n y; 162.51/105.76 162.51/105.76 pr2F0 x n y = pr2F0G y x n; 162.51/105.76 162.51/105.76 pr2F0G vxy x n = pr2F0G2 vxy x n; 162.51/105.76 162.51/105.76 pr2F0G0 vxy x n MyTrue = pr2F x (msMyInt n (fromIntMyInt (Main.Pos (Main.Succ Main.Zero)))) (srRatio x vxy); 162.51/105.76 162.51/105.76 pr2F0G1 vxy x n MyTrue = pr2F0G vxy (srRatio x x) (quotMyInt n (fromIntMyInt (Main.Pos (Main.Succ (Main.Succ Main.Zero))))); 162.51/105.76 pr2F0G1 vxy x n MyFalse = pr2F0G0 vxy x n otherwise; 162.51/105.76 162.51/105.76 pr2F0G2 vxy x n = pr2F0G1 vxy x n (evenMyInt n); 162.51/105.76 162.51/105.76 pr2F3 MyTrue wx vuy y = y; 162.51/105.76 pr2F3 vuz vvu vvv vvw = pr2F0 vvu vvv vvw; 162.51/105.76 162.51/105.76 pr2F4 wx vuy y = pr2F3 (esEsMyInt vuy (fromIntMyInt (Main.Pos Main.Zero))) wx vuy y; 162.51/105.76 pr2F4 vvx vvy vvz = pr2F0 vvx vvy vvz; 162.51/105.76 162.51/105.76 pr2Pr1 x n MyTrue = pr2F x (msMyInt n (fromIntMyInt (Main.Pos (Main.Succ Main.Zero)))) x; 162.51/105.76 pr2Pr1 x n MyFalse = pr0 x n; 162.51/105.76 162.51/105.76 pr3 MyTrue x vww = fromIntRatio (Main.Pos (Main.Succ Main.Zero)); 162.51/105.76 pr3 vwx vwy vwz = pr2 vwy vwz; 162.51/105.76 162.51/105.76 pr4 x vww = pr3 (esEsMyInt vww (fromIntMyInt (Main.Pos Main.Zero))) x vww; 162.51/105.76 pr4 vxu vxv = pr2 vxu vxv; 162.51/105.76 162.51/105.76 primCmpInt :: MyInt -> MyInt -> Ordering; 162.51/105.76 primCmpInt (Main.Pos Main.Zero) (Main.Pos Main.Zero) = EQ; 162.51/105.76 primCmpInt (Main.Pos Main.Zero) (Main.Neg Main.Zero) = EQ; 162.51/105.76 primCmpInt (Main.Neg Main.Zero) (Main.Pos Main.Zero) = EQ; 162.51/105.76 primCmpInt (Main.Neg Main.Zero) (Main.Neg Main.Zero) = EQ; 162.51/105.76 primCmpInt (Main.Pos x) (Main.Pos y) = primCmpNat x y; 162.51/105.76 primCmpInt (Main.Pos x) (Main.Neg y) = GT; 162.51/105.76 primCmpInt (Main.Neg x) (Main.Pos y) = LT; 162.51/105.76 primCmpInt (Main.Neg x) (Main.Neg y) = primCmpNat y x; 162.51/105.76 162.51/105.76 primCmpNat :: Main.Nat -> Main.Nat -> Ordering; 162.51/105.76 primCmpNat Main.Zero Main.Zero = EQ; 162.51/105.76 primCmpNat Main.Zero (Main.Succ y) = LT; 162.51/105.76 primCmpNat (Main.Succ x) Main.Zero = GT; 162.51/105.76 primCmpNat (Main.Succ x) (Main.Succ y) = primCmpNat x y; 162.51/105.76 162.51/105.76 primDivNatS :: Main.Nat -> Main.Nat -> Main.Nat; 162.51/105.76 primDivNatS Main.Zero Main.Zero = Main.error; 162.51/105.76 primDivNatS (Main.Succ x) Main.Zero = Main.error; 162.51/105.76 primDivNatS (Main.Succ x) (Main.Succ y) = primDivNatS0 x y (primGEqNatS x y); 162.51/105.76 primDivNatS Main.Zero (Main.Succ x) = Main.Zero; 162.51/105.76 162.51/105.76 primDivNatS0 x y MyTrue = Main.Succ (primDivNatS (primMinusNatS x y) (Main.Succ y)); 162.51/105.76 primDivNatS0 x y MyFalse = Main.Zero; 162.51/105.76 162.51/105.76 primEqInt :: MyInt -> MyInt -> MyBool; 162.51/105.76 primEqInt (Main.Pos (Main.Succ x)) (Main.Pos (Main.Succ y)) = primEqNat x y; 162.51/105.76 primEqInt (Main.Neg (Main.Succ x)) (Main.Neg (Main.Succ y)) = primEqNat x y; 162.51/105.76 primEqInt (Main.Pos Main.Zero) (Main.Neg Main.Zero) = MyTrue; 162.51/105.76 primEqInt (Main.Neg Main.Zero) (Main.Pos Main.Zero) = MyTrue; 162.51/105.76 primEqInt (Main.Neg Main.Zero) (Main.Neg Main.Zero) = MyTrue; 162.51/105.76 primEqInt (Main.Pos Main.Zero) (Main.Pos Main.Zero) = MyTrue; 162.51/105.76 primEqInt xy xz = MyFalse; 162.51/105.76 162.51/105.76 primEqNat :: Main.Nat -> Main.Nat -> MyBool; 162.51/105.76 primEqNat Main.Zero Main.Zero = MyTrue; 162.51/105.76 primEqNat Main.Zero (Main.Succ y) = MyFalse; 162.51/105.76 primEqNat (Main.Succ x) Main.Zero = MyFalse; 162.51/105.76 primEqNat (Main.Succ x) (Main.Succ y) = primEqNat x y; 162.51/105.76 162.51/105.76 primEvenInt :: MyInt -> MyBool; 162.51/105.76 primEvenInt (Main.Pos x) = primEvenNat x; 162.51/105.76 primEvenInt (Main.Neg x) = primEvenNat x; 162.51/105.76 162.51/105.76 primEvenNat :: Main.Nat -> MyBool; 162.51/105.76 primEvenNat Main.Zero = MyTrue; 162.51/105.76 primEvenNat (Main.Succ Main.Zero) = MyFalse; 162.51/105.76 primEvenNat (Main.Succ (Main.Succ x)) = primEvenNat x; 162.51/105.76 162.51/105.76 primGEqNatS :: Main.Nat -> Main.Nat -> MyBool; 162.51/105.76 primGEqNatS (Main.Succ x) Main.Zero = MyTrue; 162.51/105.76 primGEqNatS (Main.Succ x) (Main.Succ y) = primGEqNatS x y; 162.51/105.76 primGEqNatS Main.Zero (Main.Succ x) = MyFalse; 162.51/105.76 primGEqNatS Main.Zero Main.Zero = MyTrue; 162.51/105.76 162.51/105.76 primMinusInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 primMinusInt (Main.Pos x) (Main.Neg y) = Main.Pos (primPlusNat x y); 162.51/105.76 primMinusInt (Main.Neg x) (Main.Pos y) = Main.Neg (primPlusNat x y); 162.51/105.76 primMinusInt (Main.Neg x) (Main.Neg y) = primMinusNat y x; 162.51/105.76 primMinusInt (Main.Pos x) (Main.Pos y) = primMinusNat x y; 162.51/105.76 162.51/105.76 primMinusNat :: Main.Nat -> Main.Nat -> MyInt; 162.51/105.76 primMinusNat Main.Zero Main.Zero = Main.Pos Main.Zero; 162.51/105.76 primMinusNat Main.Zero (Main.Succ y) = Main.Neg (Main.Succ y); 162.51/105.76 primMinusNat (Main.Succ x) Main.Zero = Main.Pos (Main.Succ x); 162.51/105.76 primMinusNat (Main.Succ x) (Main.Succ y) = primMinusNat x y; 162.51/105.76 162.51/105.76 primMinusNatS :: Main.Nat -> Main.Nat -> Main.Nat; 162.51/105.76 primMinusNatS (Main.Succ x) (Main.Succ y) = primMinusNatS x y; 162.51/105.76 primMinusNatS Main.Zero (Main.Succ y) = Main.Zero; 162.51/105.76 primMinusNatS x Main.Zero = x; 162.51/105.76 162.51/105.76 primModNatS :: Main.Nat -> Main.Nat -> Main.Nat; 162.51/105.76 primModNatS Main.Zero Main.Zero = Main.error; 162.51/105.76 primModNatS Main.Zero (Main.Succ x) = Main.Zero; 162.51/105.76 primModNatS (Main.Succ x) Main.Zero = Main.error; 162.51/105.76 primModNatS (Main.Succ x) (Main.Succ Main.Zero) = Main.Zero; 162.51/105.76 primModNatS (Main.Succ x) (Main.Succ (Main.Succ y)) = primModNatS0 x y (primGEqNatS x (Main.Succ y)); 162.51/105.76 162.51/105.76 primModNatS0 x y MyTrue = primModNatS (primMinusNatS x (Main.Succ y)) (Main.Succ (Main.Succ y)); 162.51/105.76 primModNatS0 x y MyFalse = Main.Succ x; 162.51/105.76 162.51/105.76 primMulInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 primMulInt (Main.Pos x) (Main.Pos y) = Main.Pos (primMulNat x y); 162.51/105.76 primMulInt (Main.Pos x) (Main.Neg y) = Main.Neg (primMulNat x y); 162.51/105.76 primMulInt (Main.Neg x) (Main.Pos y) = Main.Neg (primMulNat x y); 162.51/105.76 primMulInt (Main.Neg x) (Main.Neg y) = Main.Pos (primMulNat x y); 162.51/105.76 162.51/105.76 primMulNat :: Main.Nat -> Main.Nat -> Main.Nat; 162.51/105.76 primMulNat Main.Zero Main.Zero = Main.Zero; 162.51/105.76 primMulNat Main.Zero (Main.Succ y) = Main.Zero; 162.51/105.76 primMulNat (Main.Succ x) Main.Zero = Main.Zero; 162.51/105.76 primMulNat (Main.Succ x) (Main.Succ y) = primPlusNat (primMulNat x (Main.Succ y)) (Main.Succ y); 162.51/105.76 162.51/105.76 primNegInt :: MyInt -> MyInt; 162.51/105.76 primNegInt (Main.Pos x) = Main.Neg x; 162.51/105.76 primNegInt (Main.Neg x) = Main.Pos x; 162.51/105.76 162.51/105.76 primPlusNat :: Main.Nat -> Main.Nat -> Main.Nat; 162.51/105.76 primPlusNat Main.Zero Main.Zero = Main.Zero; 162.51/105.76 primPlusNat Main.Zero (Main.Succ y) = Main.Succ y; 162.51/105.76 primPlusNat (Main.Succ x) Main.Zero = Main.Succ x; 162.51/105.76 primPlusNat (Main.Succ x) (Main.Succ y) = Main.Succ (Main.Succ (primPlusNat x y)); 162.51/105.76 162.51/105.76 primQuotInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 primQuotInt (Main.Pos x) (Main.Pos (Main.Succ y)) = Main.Pos (primDivNatS x (Main.Succ y)); 162.51/105.76 primQuotInt (Main.Pos x) (Main.Neg (Main.Succ y)) = Main.Neg (primDivNatS x (Main.Succ y)); 162.51/105.76 primQuotInt (Main.Neg x) (Main.Pos (Main.Succ y)) = Main.Neg (primDivNatS x (Main.Succ y)); 162.51/105.76 primQuotInt (Main.Neg x) (Main.Neg (Main.Succ y)) = Main.Pos (primDivNatS x (Main.Succ y)); 162.51/105.76 primQuotInt xw xx = Main.error; 162.51/105.76 162.51/105.76 primRemInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 primRemInt (Main.Pos x) (Main.Pos (Main.Succ y)) = Main.Pos (primModNatS x (Main.Succ y)); 162.51/105.76 primRemInt (Main.Pos x) (Main.Neg (Main.Succ y)) = Main.Pos (primModNatS x (Main.Succ y)); 162.51/105.76 primRemInt (Main.Neg x) (Main.Pos (Main.Succ y)) = Main.Neg (primModNatS x (Main.Succ y)); 162.51/105.76 primRemInt (Main.Neg x) (Main.Neg (Main.Succ y)) = Main.Neg (primModNatS x (Main.Succ y)); 162.51/105.76 primRemInt xu xv = Main.error; 162.51/105.76 162.51/105.76 quotMyInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 quotMyInt = primQuotInt; 162.51/105.76 162.51/105.76 reduce x y = reduce2 x y; 162.51/105.76 162.51/105.76 reduce2 x y = reduce2Reduce1 x y x y (esEsMyInt y (fromIntMyInt (Main.Pos Main.Zero))); 162.51/105.76 162.51/105.76 reduce2D vxw vxx = gcd vxw vxx; 162.51/105.76 162.51/105.76 reduce2Reduce0 vxw vxx x y MyTrue = CnPc (quotMyInt x (reduce2D vxw vxx)) (quotMyInt y (reduce2D vxw vxx)); 162.51/105.76 162.51/105.76 reduce2Reduce1 vxw vxx x y MyTrue = Main.error; 162.51/105.76 reduce2Reduce1 vxw vxx x y MyFalse = reduce2Reduce0 vxw vxx x y otherwise; 162.51/105.76 162.51/105.76 remMyInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 remMyInt = primRemInt; 162.51/105.76 162.51/105.76 srMyInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 srMyInt = primMulInt; 162.51/105.76 162.51/105.76 srRatio :: Ratio MyInt -> Ratio MyInt -> Ratio MyInt; 162.51/105.76 srRatio (CnPc x y) (CnPc x' y') = reduce (srMyInt x x') (srMyInt y y'); 162.51/105.76 162.51/105.76 stop :: MyBool -> a; 162.51/105.76 stop MyFalse = stop MyFalse; 162.51/105.76 162.51/105.76 } 162.51/105.76 162.51/105.76 ---------------------------------------- 162.51/105.76 162.51/105.76 (3) COR (EQUIVALENT) 162.51/105.76 Cond Reductions: 162.51/105.76 The following Function with conditions 162.51/105.76 "undefined |Falseundefined; 162.51/105.76 " 162.51/105.76 is transformed to 162.51/105.76 "undefined = undefined1; 162.51/105.76 " 162.51/105.76 "undefined0 True = undefined; 162.51/105.76 " 162.51/105.76 "undefined1 = undefined0 False; 162.51/105.76 " 162.51/105.76 162.51/105.76 ---------------------------------------- 162.51/105.76 162.51/105.76 (4) 162.51/105.76 Obligation: 162.51/105.76 mainModule Main 162.51/105.76 module Main where { 162.51/105.76 import qualified Prelude; 162.51/105.76 data MyBool = MyTrue | MyFalse ; 162.51/105.76 162.51/105.76 data MyInt = Pos Main.Nat | Neg Main.Nat ; 162.51/105.76 162.51/105.76 data Main.Nat = Succ Main.Nat | Zero ; 162.51/105.76 162.51/105.76 data Ordering = LT | EQ | GT ; 162.51/105.76 162.51/105.76 data Ratio a = CnPc a a ; 162.51/105.76 162.51/105.76 absMyInt :: MyInt -> MyInt; 162.51/105.76 absMyInt = absReal; 162.51/105.76 162.51/105.76 absReal x = absReal2 x; 162.51/105.76 162.51/105.76 absReal0 x MyTrue = negateMyInt x; 162.51/105.76 162.51/105.76 absReal1 x MyTrue = x; 162.51/105.76 absReal1 x MyFalse = absReal0 x otherwise; 162.51/105.76 162.51/105.76 absReal2 x = absReal1 x (gtEsMyInt x (fromIntMyInt (Main.Pos Main.Zero))); 162.51/105.76 162.51/105.76 compareMyInt :: MyInt -> MyInt -> Ordering; 162.51/105.76 compareMyInt = primCmpInt; 162.51/105.76 162.51/105.76 error :: a; 162.51/105.76 error = stop MyTrue; 162.51/105.76 162.51/105.76 esEsMyInt :: MyInt -> MyInt -> MyBool; 162.51/105.76 esEsMyInt = primEqInt; 162.51/105.76 162.51/105.76 esEsOrdering :: Ordering -> Ordering -> MyBool; 162.51/105.76 esEsOrdering LT LT = MyTrue; 162.51/105.76 esEsOrdering LT EQ = MyFalse; 162.51/105.76 esEsOrdering LT GT = MyFalse; 162.51/105.76 esEsOrdering EQ LT = MyFalse; 162.51/105.76 esEsOrdering EQ EQ = MyTrue; 162.51/105.76 esEsOrdering EQ GT = MyFalse; 162.51/105.76 esEsOrdering GT LT = MyFalse; 162.51/105.76 esEsOrdering GT EQ = MyFalse; 162.51/105.76 esEsOrdering GT GT = MyTrue; 162.51/105.76 162.51/105.76 evenMyInt :: MyInt -> MyBool; 162.51/105.76 evenMyInt = primEvenInt; 162.51/105.76 162.51/105.76 fromIntMyInt :: MyInt -> MyInt; 162.51/105.76 fromIntMyInt x = x; 162.51/105.76 162.51/105.76 fromIntRatio :: MyInt -> Ratio MyInt; 162.51/105.76 fromIntRatio = intToRatio; 162.51/105.76 162.51/105.76 fsEsOrdering :: Ordering -> Ordering -> MyBool; 162.51/105.76 fsEsOrdering x y = not (esEsOrdering x y); 162.51/105.76 162.51/105.76 gcd zu zv = gcd3 zu zv; 162.51/105.76 gcd x y = gcd0 x y; 162.51/105.76 162.51/105.76 gcd0 x y = gcd0Gcd' (absMyInt x) (absMyInt y); 162.51/105.76 162.51/105.76 gcd0Gcd' x yu = gcd0Gcd'2 x yu; 162.51/105.76 gcd0Gcd' x y = gcd0Gcd'0 x y; 162.51/105.76 162.51/105.76 gcd0Gcd'0 x y = gcd0Gcd' y (remMyInt x y); 162.51/105.76 162.51/105.76 gcd0Gcd'1 MyTrue x yu = x; 162.51/105.76 gcd0Gcd'1 yv yw yx = gcd0Gcd'0 yw yx; 162.51/105.76 162.51/105.76 gcd0Gcd'2 x yu = gcd0Gcd'1 (esEsMyInt yu (fromIntMyInt (Main.Pos Main.Zero))) x yu; 162.51/105.76 gcd0Gcd'2 yy yz = gcd0Gcd'0 yy yz; 162.51/105.76 162.51/105.76 gcd1 MyTrue zu zv = Main.error; 162.51/105.76 gcd1 zw zx zy = gcd0 zx zy; 162.51/105.76 162.51/105.76 gcd2 MyTrue zu zv = gcd1 (esEsMyInt zv (fromIntMyInt (Main.Pos Main.Zero))) zu zv; 162.51/105.76 gcd2 zz vuu vuv = gcd0 vuu vuv; 162.51/105.76 162.51/105.76 gcd3 zu zv = gcd2 (esEsMyInt zu (fromIntMyInt (Main.Pos Main.Zero))) zu zv; 162.51/105.76 gcd3 vuw vux = gcd0 vuw vux; 162.51/105.76 162.51/105.76 gtEsMyInt :: MyInt -> MyInt -> MyBool; 162.51/105.76 gtEsMyInt x y = fsEsOrdering (compareMyInt x y) LT; 162.51/105.76 162.51/105.76 gtMyInt :: MyInt -> MyInt -> MyBool; 162.51/105.76 gtMyInt x y = esEsOrdering (compareMyInt x y) GT; 162.51/105.76 162.51/105.76 intToRatio x = CnPc (fromIntMyInt x) (fromIntMyInt (Main.Pos (Main.Succ Main.Zero))); 162.51/105.76 162.51/105.76 msMyInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 msMyInt = primMinusInt; 162.51/105.76 162.51/105.76 negateMyInt :: MyInt -> MyInt; 162.51/105.76 negateMyInt = primNegInt; 162.51/105.76 162.51/105.76 not :: MyBool -> MyBool; 162.51/105.76 not MyTrue = MyFalse; 162.51/105.76 not MyFalse = MyTrue; 162.51/105.76 162.51/105.76 otherwise :: MyBool; 162.51/105.76 otherwise = MyTrue; 162.51/105.76 162.51/105.76 pr x vww = pr4 x vww; 162.51/105.76 pr x n = pr2 x n; 162.51/105.76 pr wy wz = pr0 wy wz; 162.51/105.76 162.51/105.76 pr0 wy wz = Main.error; 162.51/105.76 162.51/105.76 pr2 x n = pr2Pr1 x n (gtMyInt n (fromIntMyInt (Main.Pos Main.Zero))); 162.51/105.76 pr2 vwu vwv = pr0 vwu vwv; 162.51/105.76 162.51/105.76 pr2F wx vuy y = pr2F4 wx vuy y; 162.51/105.76 pr2F x n y = pr2F0 x n y; 162.51/105.76 162.51/105.76 pr2F0 x n y = pr2F0G y x n; 162.51/105.76 162.51/105.76 pr2F0G vxy x n = pr2F0G2 vxy x n; 162.51/105.76 162.51/105.76 pr2F0G0 vxy x n MyTrue = pr2F x (msMyInt n (fromIntMyInt (Main.Pos (Main.Succ Main.Zero)))) (srRatio x vxy); 162.51/105.76 162.51/105.76 pr2F0G1 vxy x n MyTrue = pr2F0G vxy (srRatio x x) (quotMyInt n (fromIntMyInt (Main.Pos (Main.Succ (Main.Succ Main.Zero))))); 162.51/105.76 pr2F0G1 vxy x n MyFalse = pr2F0G0 vxy x n otherwise; 162.51/105.76 162.51/105.76 pr2F0G2 vxy x n = pr2F0G1 vxy x n (evenMyInt n); 162.51/105.76 162.51/105.76 pr2F3 MyTrue wx vuy y = y; 162.51/105.76 pr2F3 vuz vvu vvv vvw = pr2F0 vvu vvv vvw; 162.51/105.76 162.51/105.76 pr2F4 wx vuy y = pr2F3 (esEsMyInt vuy (fromIntMyInt (Main.Pos Main.Zero))) wx vuy y; 162.51/105.76 pr2F4 vvx vvy vvz = pr2F0 vvx vvy vvz; 162.51/105.76 162.51/105.76 pr2Pr1 x n MyTrue = pr2F x (msMyInt n (fromIntMyInt (Main.Pos (Main.Succ Main.Zero)))) x; 162.51/105.76 pr2Pr1 x n MyFalse = pr0 x n; 162.51/105.76 162.51/105.76 pr3 MyTrue x vww = fromIntRatio (Main.Pos (Main.Succ Main.Zero)); 162.51/105.76 pr3 vwx vwy vwz = pr2 vwy vwz; 162.51/105.76 162.51/105.76 pr4 x vww = pr3 (esEsMyInt vww (fromIntMyInt (Main.Pos Main.Zero))) x vww; 162.51/105.76 pr4 vxu vxv = pr2 vxu vxv; 162.51/105.76 162.51/105.76 primCmpInt :: MyInt -> MyInt -> Ordering; 162.51/105.76 primCmpInt (Main.Pos Main.Zero) (Main.Pos Main.Zero) = EQ; 162.51/105.76 primCmpInt (Main.Pos Main.Zero) (Main.Neg Main.Zero) = EQ; 162.51/105.76 primCmpInt (Main.Neg Main.Zero) (Main.Pos Main.Zero) = EQ; 162.51/105.76 primCmpInt (Main.Neg Main.Zero) (Main.Neg Main.Zero) = EQ; 162.51/105.76 primCmpInt (Main.Pos x) (Main.Pos y) = primCmpNat x y; 162.51/105.76 primCmpInt (Main.Pos x) (Main.Neg y) = GT; 162.51/105.76 primCmpInt (Main.Neg x) (Main.Pos y) = LT; 162.51/105.76 primCmpInt (Main.Neg x) (Main.Neg y) = primCmpNat y x; 162.51/105.76 162.51/105.76 primCmpNat :: Main.Nat -> Main.Nat -> Ordering; 162.51/105.76 primCmpNat Main.Zero Main.Zero = EQ; 162.51/105.76 primCmpNat Main.Zero (Main.Succ y) = LT; 162.51/105.76 primCmpNat (Main.Succ x) Main.Zero = GT; 162.51/105.76 primCmpNat (Main.Succ x) (Main.Succ y) = primCmpNat x y; 162.51/105.76 162.51/105.76 primDivNatS :: Main.Nat -> Main.Nat -> Main.Nat; 162.51/105.76 primDivNatS Main.Zero Main.Zero = Main.error; 162.51/105.76 primDivNatS (Main.Succ x) Main.Zero = Main.error; 162.51/105.76 primDivNatS (Main.Succ x) (Main.Succ y) = primDivNatS0 x y (primGEqNatS x y); 162.51/105.76 primDivNatS Main.Zero (Main.Succ x) = Main.Zero; 162.51/105.76 162.51/105.76 primDivNatS0 x y MyTrue = Main.Succ (primDivNatS (primMinusNatS x y) (Main.Succ y)); 162.51/105.76 primDivNatS0 x y MyFalse = Main.Zero; 162.51/105.76 162.51/105.76 primEqInt :: MyInt -> MyInt -> MyBool; 162.51/105.76 primEqInt (Main.Pos (Main.Succ x)) (Main.Pos (Main.Succ y)) = primEqNat x y; 162.51/105.76 primEqInt (Main.Neg (Main.Succ x)) (Main.Neg (Main.Succ y)) = primEqNat x y; 162.51/105.76 primEqInt (Main.Pos Main.Zero) (Main.Neg Main.Zero) = MyTrue; 162.51/105.76 primEqInt (Main.Neg Main.Zero) (Main.Pos Main.Zero) = MyTrue; 162.51/105.76 primEqInt (Main.Neg Main.Zero) (Main.Neg Main.Zero) = MyTrue; 162.51/105.76 primEqInt (Main.Pos Main.Zero) (Main.Pos Main.Zero) = MyTrue; 162.51/105.76 primEqInt xy xz = MyFalse; 162.51/105.76 162.51/105.76 primEqNat :: Main.Nat -> Main.Nat -> MyBool; 162.51/105.76 primEqNat Main.Zero Main.Zero = MyTrue; 162.51/105.76 primEqNat Main.Zero (Main.Succ y) = MyFalse; 162.51/105.76 primEqNat (Main.Succ x) Main.Zero = MyFalse; 162.51/105.76 primEqNat (Main.Succ x) (Main.Succ y) = primEqNat x y; 162.51/105.76 162.51/105.76 primEvenInt :: MyInt -> MyBool; 162.51/105.76 primEvenInt (Main.Pos x) = primEvenNat x; 162.51/105.76 primEvenInt (Main.Neg x) = primEvenNat x; 162.51/105.76 162.51/105.76 primEvenNat :: Main.Nat -> MyBool; 162.51/105.76 primEvenNat Main.Zero = MyTrue; 162.51/105.76 primEvenNat (Main.Succ Main.Zero) = MyFalse; 162.51/105.76 primEvenNat (Main.Succ (Main.Succ x)) = primEvenNat x; 162.51/105.76 162.51/105.76 primGEqNatS :: Main.Nat -> Main.Nat -> MyBool; 162.51/105.76 primGEqNatS (Main.Succ x) Main.Zero = MyTrue; 162.51/105.76 primGEqNatS (Main.Succ x) (Main.Succ y) = primGEqNatS x y; 162.51/105.76 primGEqNatS Main.Zero (Main.Succ x) = MyFalse; 162.51/105.76 primGEqNatS Main.Zero Main.Zero = MyTrue; 162.51/105.76 162.51/105.76 primMinusInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 primMinusInt (Main.Pos x) (Main.Neg y) = Main.Pos (primPlusNat x y); 162.51/105.76 primMinusInt (Main.Neg x) (Main.Pos y) = Main.Neg (primPlusNat x y); 162.51/105.76 primMinusInt (Main.Neg x) (Main.Neg y) = primMinusNat y x; 162.51/105.76 primMinusInt (Main.Pos x) (Main.Pos y) = primMinusNat x y; 162.51/105.76 162.51/105.76 primMinusNat :: Main.Nat -> Main.Nat -> MyInt; 162.51/105.76 primMinusNat Main.Zero Main.Zero = Main.Pos Main.Zero; 162.51/105.76 primMinusNat Main.Zero (Main.Succ y) = Main.Neg (Main.Succ y); 162.51/105.76 primMinusNat (Main.Succ x) Main.Zero = Main.Pos (Main.Succ x); 162.51/105.76 primMinusNat (Main.Succ x) (Main.Succ y) = primMinusNat x y; 162.51/105.76 162.51/105.76 primMinusNatS :: Main.Nat -> Main.Nat -> Main.Nat; 162.51/105.76 primMinusNatS (Main.Succ x) (Main.Succ y) = primMinusNatS x y; 162.51/105.76 primMinusNatS Main.Zero (Main.Succ y) = Main.Zero; 162.51/105.76 primMinusNatS x Main.Zero = x; 162.51/105.76 162.51/105.76 primModNatS :: Main.Nat -> Main.Nat -> Main.Nat; 162.51/105.76 primModNatS Main.Zero Main.Zero = Main.error; 162.51/105.76 primModNatS Main.Zero (Main.Succ x) = Main.Zero; 162.51/105.76 primModNatS (Main.Succ x) Main.Zero = Main.error; 162.51/105.76 primModNatS (Main.Succ x) (Main.Succ Main.Zero) = Main.Zero; 162.51/105.76 primModNatS (Main.Succ x) (Main.Succ (Main.Succ y)) = primModNatS0 x y (primGEqNatS x (Main.Succ y)); 162.51/105.76 162.51/105.76 primModNatS0 x y MyTrue = primModNatS (primMinusNatS x (Main.Succ y)) (Main.Succ (Main.Succ y)); 162.51/105.76 primModNatS0 x y MyFalse = Main.Succ x; 162.51/105.76 162.51/105.76 primMulInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 primMulInt (Main.Pos x) (Main.Pos y) = Main.Pos (primMulNat x y); 162.51/105.76 primMulInt (Main.Pos x) (Main.Neg y) = Main.Neg (primMulNat x y); 162.51/105.76 primMulInt (Main.Neg x) (Main.Pos y) = Main.Neg (primMulNat x y); 162.51/105.76 primMulInt (Main.Neg x) (Main.Neg y) = Main.Pos (primMulNat x y); 162.51/105.76 162.51/105.76 primMulNat :: Main.Nat -> Main.Nat -> Main.Nat; 162.51/105.76 primMulNat Main.Zero Main.Zero = Main.Zero; 162.51/105.76 primMulNat Main.Zero (Main.Succ y) = Main.Zero; 162.51/105.76 primMulNat (Main.Succ x) Main.Zero = Main.Zero; 162.51/105.76 primMulNat (Main.Succ x) (Main.Succ y) = primPlusNat (primMulNat x (Main.Succ y)) (Main.Succ y); 162.51/105.76 162.51/105.76 primNegInt :: MyInt -> MyInt; 162.51/105.76 primNegInt (Main.Pos x) = Main.Neg x; 162.51/105.76 primNegInt (Main.Neg x) = Main.Pos x; 162.51/105.76 162.51/105.76 primPlusNat :: Main.Nat -> Main.Nat -> Main.Nat; 162.51/105.76 primPlusNat Main.Zero Main.Zero = Main.Zero; 162.51/105.76 primPlusNat Main.Zero (Main.Succ y) = Main.Succ y; 162.51/105.76 primPlusNat (Main.Succ x) Main.Zero = Main.Succ x; 162.51/105.76 primPlusNat (Main.Succ x) (Main.Succ y) = Main.Succ (Main.Succ (primPlusNat x y)); 162.51/105.76 162.51/105.76 primQuotInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 primQuotInt (Main.Pos x) (Main.Pos (Main.Succ y)) = Main.Pos (primDivNatS x (Main.Succ y)); 162.51/105.76 primQuotInt (Main.Pos x) (Main.Neg (Main.Succ y)) = Main.Neg (primDivNatS x (Main.Succ y)); 162.51/105.76 primQuotInt (Main.Neg x) (Main.Pos (Main.Succ y)) = Main.Neg (primDivNatS x (Main.Succ y)); 162.51/105.76 primQuotInt (Main.Neg x) (Main.Neg (Main.Succ y)) = Main.Pos (primDivNatS x (Main.Succ y)); 162.51/105.76 primQuotInt xw xx = Main.error; 162.51/105.76 162.51/105.76 primRemInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 primRemInt (Main.Pos x) (Main.Pos (Main.Succ y)) = Main.Pos (primModNatS x (Main.Succ y)); 162.51/105.76 primRemInt (Main.Pos x) (Main.Neg (Main.Succ y)) = Main.Pos (primModNatS x (Main.Succ y)); 162.51/105.76 primRemInt (Main.Neg x) (Main.Pos (Main.Succ y)) = Main.Neg (primModNatS x (Main.Succ y)); 162.51/105.76 primRemInt (Main.Neg x) (Main.Neg (Main.Succ y)) = Main.Neg (primModNatS x (Main.Succ y)); 162.51/105.76 primRemInt xu xv = Main.error; 162.51/105.76 162.51/105.76 quotMyInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 quotMyInt = primQuotInt; 162.51/105.76 162.51/105.76 reduce x y = reduce2 x y; 162.51/105.76 162.51/105.76 reduce2 x y = reduce2Reduce1 x y x y (esEsMyInt y (fromIntMyInt (Main.Pos Main.Zero))); 162.51/105.76 162.51/105.76 reduce2D vxw vxx = gcd vxw vxx; 162.51/105.76 162.51/105.76 reduce2Reduce0 vxw vxx x y MyTrue = CnPc (quotMyInt x (reduce2D vxw vxx)) (quotMyInt y (reduce2D vxw vxx)); 162.51/105.76 162.51/105.76 reduce2Reduce1 vxw vxx x y MyTrue = Main.error; 162.51/105.76 reduce2Reduce1 vxw vxx x y MyFalse = reduce2Reduce0 vxw vxx x y otherwise; 162.51/105.76 162.51/105.76 remMyInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 remMyInt = primRemInt; 162.51/105.76 162.51/105.76 srMyInt :: MyInt -> MyInt -> MyInt; 162.51/105.76 srMyInt = primMulInt; 162.51/105.76 162.51/105.76 srRatio :: Ratio MyInt -> Ratio MyInt -> Ratio MyInt; 162.51/105.76 srRatio (CnPc x y) (CnPc x' y') = reduce (srMyInt x x') (srMyInt y y'); 162.51/105.76 162.51/105.76 stop :: MyBool -> a; 162.51/105.76 stop MyFalse = stop MyFalse; 162.51/105.76 162.51/105.76 } 162.51/105.76 162.51/105.76 ---------------------------------------- 162.51/105.76 162.51/105.76 (5) Narrow (SOUND) 162.51/105.76 Haskell To QDPs 162.51/105.76 162.51/105.76 digraph dp_graph { 162.51/105.76 node [outthreshold=100, inthreshold=100];1[label="pr",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 162.51/105.76 3[label="pr vx3",fontsize=16,color="grey",shape="box"];3 -> 4[label="",style="dashed", color="grey", weight=3]; 162.51/105.76 4[label="pr vx3 vx4",fontsize=16,color="black",shape="triangle"];4 -> 5[label="",style="solid", color="black", weight=3]; 162.51/105.76 5[label="pr4 vx3 vx4",fontsize=16,color="black",shape="box"];5 -> 6[label="",style="solid", color="black", weight=3]; 162.51/105.76 6[label="pr3 (esEsMyInt vx4 (fromIntMyInt (Pos Zero))) vx3 vx4",fontsize=16,color="black",shape="box"];6 -> 7[label="",style="solid", color="black", weight=3]; 162.51/105.76 7[label="pr3 (primEqInt vx4 (fromIntMyInt (Pos Zero))) vx3 vx4",fontsize=16,color="burlywood",shape="box"];3969[label="vx4/Pos vx40",fontsize=10,color="white",style="solid",shape="box"];7 -> 3969[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3969 -> 8[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3970[label="vx4/Neg vx40",fontsize=10,color="white",style="solid",shape="box"];7 -> 3970[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3970 -> 9[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 8[label="pr3 (primEqInt (Pos vx40) (fromIntMyInt (Pos Zero))) vx3 (Pos vx40)",fontsize=16,color="burlywood",shape="box"];3971[label="vx40/Succ vx400",fontsize=10,color="white",style="solid",shape="box"];8 -> 3971[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3971 -> 10[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3972[label="vx40/Zero",fontsize=10,color="white",style="solid",shape="box"];8 -> 3972[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3972 -> 11[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 9[label="pr3 (primEqInt (Neg vx40) (fromIntMyInt (Pos Zero))) vx3 (Neg vx40)",fontsize=16,color="burlywood",shape="box"];3973[label="vx40/Succ vx400",fontsize=10,color="white",style="solid",shape="box"];9 -> 3973[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3973 -> 12[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3974[label="vx40/Zero",fontsize=10,color="white",style="solid",shape="box"];9 -> 3974[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3974 -> 13[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 10[label="pr3 (primEqInt (Pos (Succ vx400)) (fromIntMyInt (Pos Zero))) vx3 (Pos (Succ vx400))",fontsize=16,color="black",shape="box"];10 -> 14[label="",style="solid", color="black", weight=3]; 162.51/105.76 11[label="pr3 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) vx3 (Pos Zero)",fontsize=16,color="black",shape="box"];11 -> 15[label="",style="solid", color="black", weight=3]; 162.51/105.76 12[label="pr3 (primEqInt (Neg (Succ vx400)) (fromIntMyInt (Pos Zero))) vx3 (Neg (Succ vx400))",fontsize=16,color="black",shape="box"];12 -> 16[label="",style="solid", color="black", weight=3]; 162.51/105.76 13[label="pr3 (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero))) vx3 (Neg Zero)",fontsize=16,color="black",shape="box"];13 -> 17[label="",style="solid", color="black", weight=3]; 162.51/105.76 14[label="pr3 (primEqInt (Pos (Succ vx400)) (Pos Zero)) vx3 (Pos (Succ vx400))",fontsize=16,color="black",shape="box"];14 -> 18[label="",style="solid", color="black", weight=3]; 162.51/105.76 15[label="pr3 (primEqInt (Pos Zero) (Pos Zero)) vx3 (Pos Zero)",fontsize=16,color="black",shape="box"];15 -> 19[label="",style="solid", color="black", weight=3]; 162.51/105.76 16[label="pr3 (primEqInt (Neg (Succ vx400)) (Pos Zero)) vx3 (Neg (Succ vx400))",fontsize=16,color="black",shape="box"];16 -> 20[label="",style="solid", color="black", weight=3]; 162.51/105.76 17[label="pr3 (primEqInt (Neg Zero) (Pos Zero)) vx3 (Neg Zero)",fontsize=16,color="black",shape="box"];17 -> 21[label="",style="solid", color="black", weight=3]; 162.51/105.76 18[label="pr3 MyFalse vx3 (Pos (Succ vx400))",fontsize=16,color="black",shape="box"];18 -> 22[label="",style="solid", color="black", weight=3]; 162.51/105.76 19[label="pr3 MyTrue vx3 (Pos Zero)",fontsize=16,color="black",shape="box"];19 -> 23[label="",style="solid", color="black", weight=3]; 162.51/105.76 20[label="pr3 MyFalse vx3 (Neg (Succ vx400))",fontsize=16,color="black",shape="box"];20 -> 24[label="",style="solid", color="black", weight=3]; 162.51/105.76 21[label="pr3 MyTrue vx3 (Neg Zero)",fontsize=16,color="black",shape="box"];21 -> 25[label="",style="solid", color="black", weight=3]; 162.51/105.76 22[label="pr2 vx3 (Pos (Succ vx400))",fontsize=16,color="black",shape="box"];22 -> 26[label="",style="solid", color="black", weight=3]; 162.51/105.76 23[label="fromIntRatio (Pos (Succ Zero))",fontsize=16,color="black",shape="triangle"];23 -> 27[label="",style="solid", color="black", weight=3]; 162.51/105.76 24[label="pr2 vx3 (Neg (Succ vx400))",fontsize=16,color="black",shape="box"];24 -> 28[label="",style="solid", color="black", weight=3]; 162.51/105.76 25 -> 23[label="",style="dashed", color="red", weight=0]; 162.51/105.76 25[label="fromIntRatio (Pos (Succ Zero))",fontsize=16,color="magenta"];26[label="pr2Pr1 vx3 (Pos (Succ vx400)) (gtMyInt (Pos (Succ vx400)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];26 -> 29[label="",style="solid", color="black", weight=3]; 162.51/105.76 27[label="intToRatio (Pos (Succ Zero))",fontsize=16,color="black",shape="box"];27 -> 30[label="",style="solid", color="black", weight=3]; 162.51/105.76 28[label="pr2Pr1 vx3 (Neg (Succ vx400)) (gtMyInt (Neg (Succ vx400)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];28 -> 31[label="",style="solid", color="black", weight=3]; 162.51/105.76 29[label="pr2Pr1 vx3 (Pos (Succ vx400)) (esEsOrdering (compareMyInt (Pos (Succ vx400)) (fromIntMyInt (Pos Zero))) GT)",fontsize=16,color="black",shape="box"];29 -> 32[label="",style="solid", color="black", weight=3]; 162.51/105.76 30[label="CnPc (fromIntMyInt (Pos (Succ Zero))) (fromIntMyInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];30 -> 33[label="",style="dashed", color="green", weight=3]; 162.51/105.76 30 -> 34[label="",style="dashed", color="green", weight=3]; 162.51/105.76 31[label="pr2Pr1 vx3 (Neg (Succ vx400)) (esEsOrdering (compareMyInt (Neg (Succ vx400)) (fromIntMyInt (Pos Zero))) GT)",fontsize=16,color="black",shape="box"];31 -> 35[label="",style="solid", color="black", weight=3]; 162.51/105.76 32[label="pr2Pr1 vx3 (Pos (Succ vx400)) (esEsOrdering (primCmpInt (Pos (Succ vx400)) (fromIntMyInt (Pos Zero))) GT)",fontsize=16,color="black",shape="box"];32 -> 36[label="",style="solid", color="black", weight=3]; 162.51/105.76 33[label="fromIntMyInt (Pos (Succ Zero))",fontsize=16,color="black",shape="triangle"];33 -> 37[label="",style="solid", color="black", weight=3]; 162.51/105.76 34 -> 33[label="",style="dashed", color="red", weight=0]; 162.51/105.76 34[label="fromIntMyInt (Pos (Succ Zero))",fontsize=16,color="magenta"];35[label="pr2Pr1 vx3 (Neg (Succ vx400)) (esEsOrdering (primCmpInt (Neg (Succ vx400)) (fromIntMyInt (Pos Zero))) GT)",fontsize=16,color="black",shape="box"];35 -> 38[label="",style="solid", color="black", weight=3]; 162.51/105.76 36[label="pr2Pr1 vx3 (Pos (Succ vx400)) (esEsOrdering (primCmpInt (Pos (Succ vx400)) (Pos Zero)) GT)",fontsize=16,color="black",shape="box"];36 -> 39[label="",style="solid", color="black", weight=3]; 162.51/105.76 37[label="Pos (Succ Zero)",fontsize=16,color="green",shape="box"];38[label="pr2Pr1 vx3 (Neg (Succ vx400)) (esEsOrdering (primCmpInt (Neg (Succ vx400)) (Pos Zero)) GT)",fontsize=16,color="black",shape="box"];38 -> 40[label="",style="solid", color="black", weight=3]; 162.51/105.76 39[label="pr2Pr1 vx3 (Pos (Succ vx400)) (esEsOrdering (primCmpNat (Succ vx400) Zero) GT)",fontsize=16,color="black",shape="box"];39 -> 41[label="",style="solid", color="black", weight=3]; 162.51/105.76 40[label="pr2Pr1 vx3 (Neg (Succ vx400)) (esEsOrdering LT GT)",fontsize=16,color="black",shape="box"];40 -> 42[label="",style="solid", color="black", weight=3]; 162.51/105.76 41[label="pr2Pr1 vx3 (Pos (Succ vx400)) (esEsOrdering GT GT)",fontsize=16,color="black",shape="box"];41 -> 43[label="",style="solid", color="black", weight=3]; 162.51/105.76 42[label="pr2Pr1 vx3 (Neg (Succ vx400)) MyFalse",fontsize=16,color="black",shape="box"];42 -> 44[label="",style="solid", color="black", weight=3]; 162.51/105.76 43[label="pr2Pr1 vx3 (Pos (Succ vx400)) MyTrue",fontsize=16,color="black",shape="box"];43 -> 45[label="",style="solid", color="black", weight=3]; 162.51/105.76 44[label="pr0 vx3 (Neg (Succ vx400))",fontsize=16,color="black",shape="box"];44 -> 46[label="",style="solid", color="black", weight=3]; 162.51/105.76 45 -> 47[label="",style="dashed", color="red", weight=0]; 162.51/105.76 45[label="pr2F vx3 (msMyInt (Pos (Succ vx400)) (fromIntMyInt (Pos (Succ Zero)))) vx3",fontsize=16,color="magenta"];45 -> 48[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 46[label="error",fontsize=16,color="black",shape="triangle"];46 -> 49[label="",style="solid", color="black", weight=3]; 162.51/105.76 48 -> 33[label="",style="dashed", color="red", weight=0]; 162.51/105.76 48[label="fromIntMyInt (Pos (Succ Zero))",fontsize=16,color="magenta"];47[label="pr2F vx3 (msMyInt (Pos (Succ vx400)) vx5) vx3",fontsize=16,color="black",shape="triangle"];47 -> 50[label="",style="solid", color="black", weight=3]; 162.51/105.76 49[label="stop MyTrue",fontsize=16,color="black",shape="box"];49 -> 51[label="",style="solid", color="black", weight=3]; 162.51/105.76 50[label="pr2F4 vx3 (msMyInt (Pos (Succ vx400)) vx5) vx3",fontsize=16,color="black",shape="box"];50 -> 52[label="",style="solid", color="black", weight=3]; 162.51/105.76 51[label="error []",fontsize=16,color="red",shape="box"];52[label="pr2F3 (esEsMyInt (msMyInt (Pos (Succ vx400)) vx5) (fromIntMyInt (Pos Zero))) vx3 (msMyInt (Pos (Succ vx400)) vx5) vx3",fontsize=16,color="black",shape="box"];52 -> 53[label="",style="solid", color="black", weight=3]; 162.51/105.76 53[label="pr2F3 (primEqInt (msMyInt (Pos (Succ vx400)) vx5) (fromIntMyInt (Pos Zero))) vx3 (msMyInt (Pos (Succ vx400)) vx5) vx3",fontsize=16,color="black",shape="box"];53 -> 54[label="",style="solid", color="black", weight=3]; 162.51/105.76 54[label="pr2F3 (primEqInt (primMinusInt (Pos (Succ vx400)) vx5) (fromIntMyInt (Pos Zero))) vx3 (primMinusInt (Pos (Succ vx400)) vx5) vx3",fontsize=16,color="burlywood",shape="box"];3975[label="vx5/Pos vx50",fontsize=10,color="white",style="solid",shape="box"];54 -> 3975[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3975 -> 55[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3976[label="vx5/Neg vx50",fontsize=10,color="white",style="solid",shape="box"];54 -> 3976[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3976 -> 56[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 55[label="pr2F3 (primEqInt (primMinusInt (Pos (Succ vx400)) (Pos vx50)) (fromIntMyInt (Pos Zero))) vx3 (primMinusInt (Pos (Succ vx400)) (Pos vx50)) vx3",fontsize=16,color="black",shape="box"];55 -> 57[label="",style="solid", color="black", weight=3]; 162.51/105.76 56[label="pr2F3 (primEqInt (primMinusInt (Pos (Succ vx400)) (Neg vx50)) (fromIntMyInt (Pos Zero))) vx3 (primMinusInt (Pos (Succ vx400)) (Neg vx50)) vx3",fontsize=16,color="black",shape="box"];56 -> 58[label="",style="solid", color="black", weight=3]; 162.51/105.76 57[label="pr2F3 (primEqInt (primMinusNat (Succ vx400) vx50) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat (Succ vx400) vx50) vx3",fontsize=16,color="burlywood",shape="box"];3977[label="vx50/Succ vx500",fontsize=10,color="white",style="solid",shape="box"];57 -> 3977[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3977 -> 59[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3978[label="vx50/Zero",fontsize=10,color="white",style="solid",shape="box"];57 -> 3978[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3978 -> 60[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 58[label="pr2F3 (primEqInt (Pos (primPlusNat (Succ vx400) vx50)) (fromIntMyInt (Pos Zero))) vx3 (Pos (primPlusNat (Succ vx400) vx50)) vx3",fontsize=16,color="burlywood",shape="box"];3979[label="vx50/Succ vx500",fontsize=10,color="white",style="solid",shape="box"];58 -> 3979[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3979 -> 61[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3980[label="vx50/Zero",fontsize=10,color="white",style="solid",shape="box"];58 -> 3980[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3980 -> 62[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 59[label="pr2F3 (primEqInt (primMinusNat (Succ vx400) (Succ vx500)) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat (Succ vx400) (Succ vx500)) vx3",fontsize=16,color="black",shape="box"];59 -> 63[label="",style="solid", color="black", weight=3]; 162.51/105.76 60[label="pr2F3 (primEqInt (primMinusNat (Succ vx400) Zero) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat (Succ vx400) Zero) vx3",fontsize=16,color="black",shape="box"];60 -> 64[label="",style="solid", color="black", weight=3]; 162.51/105.76 61[label="pr2F3 (primEqInt (Pos (primPlusNat (Succ vx400) (Succ vx500))) (fromIntMyInt (Pos Zero))) vx3 (Pos (primPlusNat (Succ vx400) (Succ vx500))) vx3",fontsize=16,color="black",shape="box"];61 -> 65[label="",style="solid", color="black", weight=3]; 162.51/105.76 62[label="pr2F3 (primEqInt (Pos (primPlusNat (Succ vx400) Zero)) (fromIntMyInt (Pos Zero))) vx3 (Pos (primPlusNat (Succ vx400) Zero)) vx3",fontsize=16,color="black",shape="box"];62 -> 66[label="",style="solid", color="black", weight=3]; 162.51/105.76 63[label="pr2F3 (primEqInt (primMinusNat vx400 vx500) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat vx400 vx500) vx3",fontsize=16,color="burlywood",shape="triangle"];3981[label="vx400/Succ vx4000",fontsize=10,color="white",style="solid",shape="box"];63 -> 3981[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3981 -> 67[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3982[label="vx400/Zero",fontsize=10,color="white",style="solid",shape="box"];63 -> 3982[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3982 -> 68[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 64 -> 418[label="",style="dashed", color="red", weight=0]; 162.51/105.76 64[label="pr2F3 (primEqInt (Pos (Succ vx400)) (fromIntMyInt (Pos Zero))) vx3 (Pos (Succ vx400)) vx3",fontsize=16,color="magenta"];64 -> 419[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 64 -> 420[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 64 -> 421[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 65 -> 418[label="",style="dashed", color="red", weight=0]; 162.51/105.76 65[label="pr2F3 (primEqInt (Pos (Succ (Succ (primPlusNat vx400 vx500)))) (fromIntMyInt (Pos Zero))) vx3 (Pos (Succ (Succ (primPlusNat vx400 vx500)))) vx3",fontsize=16,color="magenta"];65 -> 422[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 65 -> 423[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 65 -> 424[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 66 -> 418[label="",style="dashed", color="red", weight=0]; 162.51/105.76 66[label="pr2F3 (primEqInt (Pos (Succ vx400)) (fromIntMyInt (Pos Zero))) vx3 (Pos (Succ vx400)) vx3",fontsize=16,color="magenta"];66 -> 425[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 66 -> 426[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 66 -> 427[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 67[label="pr2F3 (primEqInt (primMinusNat (Succ vx4000) vx500) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat (Succ vx4000) vx500) vx3",fontsize=16,color="burlywood",shape="box"];3983[label="vx500/Succ vx5000",fontsize=10,color="white",style="solid",shape="box"];67 -> 3983[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3983 -> 71[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3984[label="vx500/Zero",fontsize=10,color="white",style="solid",shape="box"];67 -> 3984[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3984 -> 72[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 68[label="pr2F3 (primEqInt (primMinusNat Zero vx500) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat Zero vx500) vx3",fontsize=16,color="burlywood",shape="box"];3985[label="vx500/Succ vx5000",fontsize=10,color="white",style="solid",shape="box"];68 -> 3985[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3985 -> 73[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3986[label="vx500/Zero",fontsize=10,color="white",style="solid",shape="box"];68 -> 3986[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3986 -> 74[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 419[label="vx400",fontsize=16,color="green",shape="box"];420[label="vx3",fontsize=16,color="green",shape="box"];421[label="vx3",fontsize=16,color="green",shape="box"];418[label="pr2F3 (primEqInt (Pos (Succ vx23000)) (fromIntMyInt (Pos Zero))) vx12 (Pos (Succ vx23000)) vx33",fontsize=16,color="black",shape="triangle"];418 -> 432[label="",style="solid", color="black", weight=3]; 162.51/105.76 422[label="Succ (primPlusNat vx400 vx500)",fontsize=16,color="green",shape="box"];422 -> 433[label="",style="dashed", color="green", weight=3]; 162.51/105.76 423[label="vx3",fontsize=16,color="green",shape="box"];424[label="vx3",fontsize=16,color="green",shape="box"];425[label="vx400",fontsize=16,color="green",shape="box"];426[label="vx3",fontsize=16,color="green",shape="box"];427[label="vx3",fontsize=16,color="green",shape="box"];71[label="pr2F3 (primEqInt (primMinusNat (Succ vx4000) (Succ vx5000)) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat (Succ vx4000) (Succ vx5000)) vx3",fontsize=16,color="black",shape="box"];71 -> 77[label="",style="solid", color="black", weight=3]; 162.51/105.76 72[label="pr2F3 (primEqInt (primMinusNat (Succ vx4000) Zero) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat (Succ vx4000) Zero) vx3",fontsize=16,color="black",shape="box"];72 -> 78[label="",style="solid", color="black", weight=3]; 162.51/105.76 73[label="pr2F3 (primEqInt (primMinusNat Zero (Succ vx5000)) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat Zero (Succ vx5000)) vx3",fontsize=16,color="black",shape="box"];73 -> 79[label="",style="solid", color="black", weight=3]; 162.51/105.76 74[label="pr2F3 (primEqInt (primMinusNat Zero Zero) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat Zero Zero) vx3",fontsize=16,color="black",shape="box"];74 -> 80[label="",style="solid", color="black", weight=3]; 162.51/105.76 432[label="pr2F3 (primEqInt (Pos (Succ vx23000)) (Pos Zero)) vx12 (Pos (Succ vx23000)) vx33",fontsize=16,color="black",shape="box"];432 -> 440[label="",style="solid", color="black", weight=3]; 162.51/105.76 433 -> 76[label="",style="dashed", color="red", weight=0]; 162.51/105.76 433[label="primPlusNat vx400 vx500",fontsize=16,color="magenta"];77 -> 63[label="",style="dashed", color="red", weight=0]; 162.51/105.76 77[label="pr2F3 (primEqInt (primMinusNat vx4000 vx5000) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat vx4000 vx5000) vx3",fontsize=16,color="magenta"];77 -> 84[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 77 -> 85[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 78 -> 418[label="",style="dashed", color="red", weight=0]; 162.51/105.76 78[label="pr2F3 (primEqInt (Pos (Succ vx4000)) (fromIntMyInt (Pos Zero))) vx3 (Pos (Succ vx4000)) vx3",fontsize=16,color="magenta"];78 -> 428[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 78 -> 429[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 78 -> 430[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 79[label="pr2F3 (primEqInt (Neg (Succ vx5000)) (fromIntMyInt (Pos Zero))) vx3 (Neg (Succ vx5000)) vx3",fontsize=16,color="black",shape="box"];79 -> 87[label="",style="solid", color="black", weight=3]; 162.51/105.76 80 -> 436[label="",style="dashed", color="red", weight=0]; 162.51/105.76 80[label="pr2F3 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) vx3 (Pos Zero) vx3",fontsize=16,color="magenta"];80 -> 437[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 80 -> 438[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 440[label="pr2F3 MyFalse vx12 (Pos (Succ vx23000)) vx33",fontsize=16,color="black",shape="box"];440 -> 444[label="",style="solid", color="black", weight=3]; 162.51/105.76 76[label="primPlusNat vx400 vx500",fontsize=16,color="burlywood",shape="triangle"];3987[label="vx400/Succ vx4000",fontsize=10,color="white",style="solid",shape="box"];76 -> 3987[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3987 -> 82[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3988[label="vx400/Zero",fontsize=10,color="white",style="solid",shape="box"];76 -> 3988[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3988 -> 83[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 84[label="vx5000",fontsize=16,color="green",shape="box"];85[label="vx4000",fontsize=16,color="green",shape="box"];428[label="vx4000",fontsize=16,color="green",shape="box"];429[label="vx3",fontsize=16,color="green",shape="box"];430[label="vx3",fontsize=16,color="green",shape="box"];87 -> 775[label="",style="dashed", color="red", weight=0]; 162.51/105.76 87[label="pr2F3 (primEqInt (Neg (Succ vx5000)) (Pos Zero)) vx3 (Neg (Succ vx5000)) vx3",fontsize=16,color="magenta"];87 -> 776[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 87 -> 777[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 87 -> 778[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 87 -> 779[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 437[label="vx3",fontsize=16,color="green",shape="box"];438[label="vx3",fontsize=16,color="green",shape="box"];436[label="pr2F3 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) vx12 (Pos Zero) vx34",fontsize=16,color="black",shape="triangle"];436 -> 441[label="",style="solid", color="black", weight=3]; 162.51/105.76 444[label="pr2F0 vx12 (Pos (Succ vx23000)) vx33",fontsize=16,color="black",shape="box"];444 -> 448[label="",style="solid", color="black", weight=3]; 162.51/105.76 82[label="primPlusNat (Succ vx4000) vx500",fontsize=16,color="burlywood",shape="box"];3989[label="vx500/Succ vx5000",fontsize=10,color="white",style="solid",shape="box"];82 -> 3989[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3989 -> 90[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3990[label="vx500/Zero",fontsize=10,color="white",style="solid",shape="box"];82 -> 3990[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3990 -> 91[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 83[label="primPlusNat Zero vx500",fontsize=16,color="burlywood",shape="box"];3991[label="vx500/Succ vx5000",fontsize=10,color="white",style="solid",shape="box"];83 -> 3991[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3991 -> 92[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3992[label="vx500/Zero",fontsize=10,color="white",style="solid",shape="box"];83 -> 3992[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3992 -> 93[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 776[label="vx3",fontsize=16,color="green",shape="box"];777[label="vx5000",fontsize=16,color="green",shape="box"];778[label="vx3",fontsize=16,color="green",shape="box"];779[label="Succ vx5000",fontsize=16,color="green",shape="box"];775[label="pr2F3 (primEqInt (Neg (Succ vx620)) (Pos Zero)) vx50 (Neg vx61) vx67",fontsize=16,color="black",shape="triangle"];775 -> 781[label="",style="solid", color="black", weight=3]; 162.51/105.76 441[label="pr2F3 (primEqInt (Pos Zero) (Pos Zero)) vx12 (Pos Zero) vx34",fontsize=16,color="black",shape="box"];441 -> 445[label="",style="solid", color="black", weight=3]; 162.51/105.76 448 -> 792[label="",style="dashed", color="red", weight=0]; 162.51/105.76 448[label="pr2F0G vx33 vx12 (Pos (Succ vx23000))",fontsize=16,color="magenta"];448 -> 793[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 448 -> 794[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 448 -> 795[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 90[label="primPlusNat (Succ vx4000) (Succ vx5000)",fontsize=16,color="black",shape="box"];90 -> 97[label="",style="solid", color="black", weight=3]; 162.51/105.76 91[label="primPlusNat (Succ vx4000) Zero",fontsize=16,color="black",shape="box"];91 -> 98[label="",style="solid", color="black", weight=3]; 162.51/105.76 92[label="primPlusNat Zero (Succ vx5000)",fontsize=16,color="black",shape="box"];92 -> 99[label="",style="solid", color="black", weight=3]; 162.51/105.76 93[label="primPlusNat Zero Zero",fontsize=16,color="black",shape="box"];93 -> 100[label="",style="solid", color="black", weight=3]; 162.51/105.76 781[label="pr2F3 MyFalse vx50 (Neg vx61) vx67",fontsize=16,color="black",shape="box"];781 -> 797[label="",style="solid", color="black", weight=3]; 162.51/105.76 445[label="pr2F3 MyTrue vx12 (Pos Zero) vx34",fontsize=16,color="black",shape="box"];445 -> 449[label="",style="solid", color="black", weight=3]; 162.51/105.76 793[label="Succ vx23000",fontsize=16,color="green",shape="box"];794[label="vx12",fontsize=16,color="green",shape="box"];795[label="vx33",fontsize=16,color="green",shape="box"];792[label="pr2F0G vx68 vx44 (Pos vx59)",fontsize=16,color="black",shape="triangle"];792 -> 798[label="",style="solid", color="black", weight=3]; 162.51/105.76 97[label="Succ (Succ (primPlusNat vx4000 vx5000))",fontsize=16,color="green",shape="box"];97 -> 104[label="",style="dashed", color="green", weight=3]; 162.51/105.76 98[label="Succ vx4000",fontsize=16,color="green",shape="box"];99[label="Succ vx5000",fontsize=16,color="green",shape="box"];100[label="Zero",fontsize=16,color="green",shape="box"];797[label="pr2F0 vx50 (Neg vx61) vx67",fontsize=16,color="black",shape="box"];797 -> 799[label="",style="solid", color="black", weight=3]; 162.51/105.76 449[label="vx34",fontsize=16,color="green",shape="box"];798[label="pr2F0G2 vx68 vx44 (Pos vx59)",fontsize=16,color="black",shape="box"];798 -> 800[label="",style="solid", color="black", weight=3]; 162.51/105.76 104 -> 76[label="",style="dashed", color="red", weight=0]; 162.51/105.76 104[label="primPlusNat vx4000 vx5000",fontsize=16,color="magenta"];104 -> 107[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 104 -> 108[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 799[label="pr2F0G vx67 vx50 (Neg vx61)",fontsize=16,color="black",shape="box"];799 -> 801[label="",style="solid", color="black", weight=3]; 162.51/105.76 800[label="pr2F0G1 vx68 vx44 (Pos vx59) (evenMyInt (Pos vx59))",fontsize=16,color="black",shape="box"];800 -> 802[label="",style="solid", color="black", weight=3]; 162.51/105.76 107[label="vx5000",fontsize=16,color="green",shape="box"];108[label="vx4000",fontsize=16,color="green",shape="box"];801[label="pr2F0G2 vx67 vx50 (Neg vx61)",fontsize=16,color="black",shape="box"];801 -> 803[label="",style="solid", color="black", weight=3]; 162.51/105.76 802[label="pr2F0G1 vx68 vx44 (Pos vx59) (primEvenInt (Pos vx59))",fontsize=16,color="black",shape="triangle"];802 -> 804[label="",style="solid", color="black", weight=3]; 162.51/105.76 803[label="pr2F0G1 vx67 vx50 (Neg vx61) (evenMyInt (Neg vx61))",fontsize=16,color="black",shape="box"];803 -> 805[label="",style="solid", color="black", weight=3]; 162.51/105.76 804[label="pr2F0G1 vx68 vx44 (Pos vx59) (primEvenNat vx59)",fontsize=16,color="burlywood",shape="box"];3993[label="vx59/Succ vx590",fontsize=10,color="white",style="solid",shape="box"];804 -> 3993[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3993 -> 806[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3994[label="vx59/Zero",fontsize=10,color="white",style="solid",shape="box"];804 -> 3994[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3994 -> 807[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 805[label="pr2F0G1 vx67 vx50 (Neg vx61) (primEvenInt (Neg vx61))",fontsize=16,color="black",shape="triangle"];805 -> 808[label="",style="solid", color="black", weight=3]; 162.51/105.76 806[label="pr2F0G1 vx68 vx44 (Pos (Succ vx590)) (primEvenNat (Succ vx590))",fontsize=16,color="burlywood",shape="box"];3995[label="vx590/Succ vx5900",fontsize=10,color="white",style="solid",shape="box"];806 -> 3995[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3995 -> 809[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3996[label="vx590/Zero",fontsize=10,color="white",style="solid",shape="box"];806 -> 3996[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3996 -> 810[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 807[label="pr2F0G1 vx68 vx44 (Pos Zero) (primEvenNat Zero)",fontsize=16,color="black",shape="box"];807 -> 811[label="",style="solid", color="black", weight=3]; 162.51/105.76 808[label="pr2F0G1 vx67 vx50 (Neg vx61) (primEvenNat vx61)",fontsize=16,color="burlywood",shape="box"];3997[label="vx61/Succ vx610",fontsize=10,color="white",style="solid",shape="box"];808 -> 3997[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3997 -> 812[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3998[label="vx61/Zero",fontsize=10,color="white",style="solid",shape="box"];808 -> 3998[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3998 -> 813[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 809[label="pr2F0G1 vx68 vx44 (Pos (Succ (Succ vx5900))) (primEvenNat (Succ (Succ vx5900)))",fontsize=16,color="black",shape="box"];809 -> 814[label="",style="solid", color="black", weight=3]; 162.51/105.76 810[label="pr2F0G1 vx68 vx44 (Pos (Succ Zero)) (primEvenNat (Succ Zero))",fontsize=16,color="black",shape="box"];810 -> 815[label="",style="solid", color="black", weight=3]; 162.51/105.76 811[label="pr2F0G1 vx68 vx44 (Pos Zero) MyTrue",fontsize=16,color="black",shape="box"];811 -> 816[label="",style="solid", color="black", weight=3]; 162.51/105.76 812[label="pr2F0G1 vx67 vx50 (Neg (Succ vx610)) (primEvenNat (Succ vx610))",fontsize=16,color="burlywood",shape="box"];3999[label="vx610/Succ vx6100",fontsize=10,color="white",style="solid",shape="box"];812 -> 3999[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 3999 -> 817[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4000[label="vx610/Zero",fontsize=10,color="white",style="solid",shape="box"];812 -> 4000[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4000 -> 818[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 813[label="pr2F0G1 vx67 vx50 (Neg Zero) (primEvenNat Zero)",fontsize=16,color="black",shape="box"];813 -> 819[label="",style="solid", color="black", weight=3]; 162.51/105.76 814 -> 886[label="",style="dashed", color="red", weight=0]; 162.51/105.76 814[label="pr2F0G1 vx68 vx44 (Pos (Succ (Succ vx5900))) (primEvenNat vx5900)",fontsize=16,color="magenta"];814 -> 887[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 814 -> 888[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 814 -> 889[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 814 -> 890[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 815[label="pr2F0G1 vx68 vx44 (Pos (Succ Zero)) MyFalse",fontsize=16,color="black",shape="box"];815 -> 822[label="",style="solid", color="black", weight=3]; 162.51/105.76 816[label="pr2F0G vx68 (srRatio vx44 vx44) (quotMyInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];816 -> 823[label="",style="solid", color="black", weight=3]; 162.51/105.76 817[label="pr2F0G1 vx67 vx50 (Neg (Succ (Succ vx6100))) (primEvenNat (Succ (Succ vx6100)))",fontsize=16,color="black",shape="box"];817 -> 824[label="",style="solid", color="black", weight=3]; 162.51/105.76 818[label="pr2F0G1 vx67 vx50 (Neg (Succ Zero)) (primEvenNat (Succ Zero))",fontsize=16,color="black",shape="box"];818 -> 825[label="",style="solid", color="black", weight=3]; 162.51/105.76 819[label="pr2F0G1 vx67 vx50 (Neg Zero) MyTrue",fontsize=16,color="black",shape="box"];819 -> 826[label="",style="solid", color="black", weight=3]; 162.51/105.76 887[label="vx68",fontsize=16,color="green",shape="box"];888[label="vx44",fontsize=16,color="green",shape="box"];889[label="vx5900",fontsize=16,color="green",shape="box"];890[label="Succ vx5900",fontsize=16,color="green",shape="box"];886[label="pr2F0G1 vx72 vx73 (Pos (Succ vx74)) (primEvenNat vx75)",fontsize=16,color="burlywood",shape="triangle"];4001[label="vx75/Succ vx750",fontsize=10,color="white",style="solid",shape="box"];886 -> 4001[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4001 -> 899[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4002[label="vx75/Zero",fontsize=10,color="white",style="solid",shape="box"];886 -> 4002[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4002 -> 900[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 822[label="pr2F0G0 vx68 vx44 (Pos (Succ Zero)) otherwise",fontsize=16,color="black",shape="box"];822 -> 830[label="",style="solid", color="black", weight=3]; 162.51/105.76 823[label="pr2F0G2 vx68 (srRatio vx44 vx44) (quotMyInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];823 -> 831[label="",style="solid", color="black", weight=3]; 162.51/105.76 824 -> 917[label="",style="dashed", color="red", weight=0]; 162.51/105.76 824[label="pr2F0G1 vx67 vx50 (Neg (Succ (Succ vx6100))) (primEvenNat vx6100)",fontsize=16,color="magenta"];824 -> 918[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 824 -> 919[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 824 -> 920[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 824 -> 921[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 825[label="pr2F0G1 vx67 vx50 (Neg (Succ Zero)) MyFalse",fontsize=16,color="black",shape="box"];825 -> 834[label="",style="solid", color="black", weight=3]; 162.51/105.76 826[label="pr2F0G vx67 (srRatio vx50 vx50) (quotMyInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];826 -> 835[label="",style="solid", color="black", weight=3]; 162.51/105.76 899[label="pr2F0G1 vx72 vx73 (Pos (Succ vx74)) (primEvenNat (Succ vx750))",fontsize=16,color="burlywood",shape="box"];4003[label="vx750/Succ vx7500",fontsize=10,color="white",style="solid",shape="box"];899 -> 4003[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4003 -> 911[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4004[label="vx750/Zero",fontsize=10,color="white",style="solid",shape="box"];899 -> 4004[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4004 -> 912[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 900[label="pr2F0G1 vx72 vx73 (Pos (Succ vx74)) (primEvenNat Zero)",fontsize=16,color="black",shape="box"];900 -> 913[label="",style="solid", color="black", weight=3]; 162.51/105.76 830[label="pr2F0G0 vx68 vx44 (Pos (Succ Zero)) MyTrue",fontsize=16,color="black",shape="box"];830 -> 839[label="",style="solid", color="black", weight=3]; 162.51/105.76 831[label="pr2F0G1 vx68 (srRatio vx44 vx44) (quotMyInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))) (evenMyInt (quotMyInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];831 -> 840[label="",style="solid", color="black", weight=3]; 162.51/105.76 918[label="vx67",fontsize=16,color="green",shape="box"];919[label="vx6100",fontsize=16,color="green",shape="box"];920[label="Succ vx6100",fontsize=16,color="green",shape="box"];921[label="vx50",fontsize=16,color="green",shape="box"];917[label="pr2F0G1 vx77 vx78 (Neg (Succ vx79)) (primEvenNat vx80)",fontsize=16,color="burlywood",shape="triangle"];4005[label="vx80/Succ vx800",fontsize=10,color="white",style="solid",shape="box"];917 -> 4005[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4005 -> 930[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4006[label="vx80/Zero",fontsize=10,color="white",style="solid",shape="box"];917 -> 4006[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4006 -> 931[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 834[label="pr2F0G0 vx67 vx50 (Neg (Succ Zero)) otherwise",fontsize=16,color="black",shape="box"];834 -> 844[label="",style="solid", color="black", weight=3]; 162.51/105.76 835[label="pr2F0G2 vx67 (srRatio vx50 vx50) (quotMyInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];835 -> 845[label="",style="solid", color="black", weight=3]; 162.51/105.76 911[label="pr2F0G1 vx72 vx73 (Pos (Succ vx74)) (primEvenNat (Succ (Succ vx7500)))",fontsize=16,color="black",shape="box"];911 -> 932[label="",style="solid", color="black", weight=3]; 162.51/105.76 912[label="pr2F0G1 vx72 vx73 (Pos (Succ vx74)) (primEvenNat (Succ Zero))",fontsize=16,color="black",shape="box"];912 -> 933[label="",style="solid", color="black", weight=3]; 162.51/105.76 913[label="pr2F0G1 vx72 vx73 (Pos (Succ vx74)) MyTrue",fontsize=16,color="black",shape="box"];913 -> 934[label="",style="solid", color="black", weight=3]; 162.51/105.76 839 -> 976[label="",style="dashed", color="red", weight=0]; 162.51/105.76 839[label="pr2F vx44 (msMyInt (Pos (Succ Zero)) (fromIntMyInt (Pos (Succ Zero)))) (srRatio vx44 vx68)",fontsize=16,color="magenta"];839 -> 977[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 839 -> 978[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 839 -> 979[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 839 -> 980[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 840[label="pr2F0G1 vx68 (srRatio vx44 vx44) (quotMyInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))) (primEvenInt (quotMyInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];840 -> 852[label="",style="solid", color="black", weight=3]; 162.51/105.76 930[label="pr2F0G1 vx77 vx78 (Neg (Succ vx79)) (primEvenNat (Succ vx800))",fontsize=16,color="burlywood",shape="box"];4007[label="vx800/Succ vx8000",fontsize=10,color="white",style="solid",shape="box"];930 -> 4007[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4007 -> 941[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4008[label="vx800/Zero",fontsize=10,color="white",style="solid",shape="box"];930 -> 4008[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4008 -> 942[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 931[label="pr2F0G1 vx77 vx78 (Neg (Succ vx79)) (primEvenNat Zero)",fontsize=16,color="black",shape="box"];931 -> 943[label="",style="solid", color="black", weight=3]; 162.51/105.76 844[label="pr2F0G0 vx67 vx50 (Neg (Succ Zero)) MyTrue",fontsize=16,color="black",shape="box"];844 -> 856[label="",style="solid", color="black", weight=3]; 162.51/105.76 845[label="pr2F0G1 vx67 (srRatio vx50 vx50) (quotMyInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))) (evenMyInt (quotMyInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];845 -> 857[label="",style="solid", color="black", weight=3]; 162.51/105.76 932 -> 886[label="",style="dashed", color="red", weight=0]; 162.51/105.76 932[label="pr2F0G1 vx72 vx73 (Pos (Succ vx74)) (primEvenNat vx7500)",fontsize=16,color="magenta"];932 -> 944[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 933[label="pr2F0G1 vx72 vx73 (Pos (Succ vx74)) MyFalse",fontsize=16,color="black",shape="box"];933 -> 945[label="",style="solid", color="black", weight=3]; 162.51/105.76 934 -> 946[label="",style="dashed", color="red", weight=0]; 162.51/105.76 934[label="pr2F0G vx72 (srRatio vx73 vx73) (quotMyInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="magenta"];934 -> 947[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 977 -> 33[label="",style="dashed", color="red", weight=0]; 162.51/105.76 977[label="fromIntMyInt (Pos (Succ Zero))",fontsize=16,color="magenta"];978[label="vx68",fontsize=16,color="green",shape="box"];979[label="vx44",fontsize=16,color="green",shape="box"];980[label="Zero",fontsize=16,color="green",shape="box"];976[label="pr2F vx73 (msMyInt (Pos (Succ vx74)) vx85) (srRatio vx73 vx72)",fontsize=16,color="black",shape="triangle"];976 -> 986[label="",style="solid", color="black", weight=3]; 162.51/105.76 852[label="pr2F0G1 vx68 (srRatio vx44 vx44) (primQuotInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))) (primEvenInt (primQuotInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];852 -> 864[label="",style="solid", color="black", weight=3]; 162.51/105.76 941[label="pr2F0G1 vx77 vx78 (Neg (Succ vx79)) (primEvenNat (Succ (Succ vx8000)))",fontsize=16,color="black",shape="box"];941 -> 948[label="",style="solid", color="black", weight=3]; 162.51/105.76 942[label="pr2F0G1 vx77 vx78 (Neg (Succ vx79)) (primEvenNat (Succ Zero))",fontsize=16,color="black",shape="box"];942 -> 949[label="",style="solid", color="black", weight=3]; 162.51/105.76 943[label="pr2F0G1 vx77 vx78 (Neg (Succ vx79)) MyTrue",fontsize=16,color="black",shape="box"];943 -> 950[label="",style="solid", color="black", weight=3]; 162.51/105.76 856 -> 995[label="",style="dashed", color="red", weight=0]; 162.51/105.76 856[label="pr2F vx50 (msMyInt (Neg (Succ Zero)) (fromIntMyInt (Pos (Succ Zero)))) (srRatio vx50 vx67)",fontsize=16,color="magenta"];856 -> 996[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 856 -> 997[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 856 -> 998[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 856 -> 999[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 857[label="pr2F0G1 vx67 (srRatio vx50 vx50) (quotMyInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))) (primEvenInt (quotMyInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];857 -> 871[label="",style="solid", color="black", weight=3]; 162.51/105.76 944[label="vx7500",fontsize=16,color="green",shape="box"];945[label="pr2F0G0 vx72 vx73 (Pos (Succ vx74)) otherwise",fontsize=16,color="black",shape="box"];945 -> 951[label="",style="solid", color="black", weight=3]; 162.51/105.76 947 -> 903[label="",style="dashed", color="red", weight=0]; 162.51/105.76 947[label="srRatio vx73 vx73",fontsize=16,color="magenta"];947 -> 952[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 946[label="pr2F0G vx72 vx81 (quotMyInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="triangle"];946 -> 953[label="",style="solid", color="black", weight=3]; 162.51/105.76 986[label="pr2F4 vx73 (msMyInt (Pos (Succ vx74)) vx85) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];986 -> 993[label="",style="solid", color="black", weight=3]; 162.51/105.76 864[label="pr2F0G1 vx68 (srRatio vx44 vx44) (primQuotInt (Pos Zero) (Pos (Succ (Succ Zero)))) (primEvenInt (primQuotInt (Pos Zero) (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];864 -> 878[label="",style="solid", color="black", weight=3]; 162.51/105.76 948 -> 917[label="",style="dashed", color="red", weight=0]; 162.51/105.76 948[label="pr2F0G1 vx77 vx78 (Neg (Succ vx79)) (primEvenNat vx8000)",fontsize=16,color="magenta"];948 -> 959[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 949[label="pr2F0G1 vx77 vx78 (Neg (Succ vx79)) MyFalse",fontsize=16,color="black",shape="box"];949 -> 960[label="",style="solid", color="black", weight=3]; 162.51/105.76 950 -> 961[label="",style="dashed", color="red", weight=0]; 162.51/105.76 950[label="pr2F0G vx77 (srRatio vx78 vx78) (quotMyInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="magenta"];950 -> 962[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 996[label="vx67",fontsize=16,color="green",shape="box"];997[label="Zero",fontsize=16,color="green",shape="box"];998 -> 33[label="",style="dashed", color="red", weight=0]; 162.51/105.76 998[label="fromIntMyInt (Pos (Succ Zero))",fontsize=16,color="magenta"];999[label="vx50",fontsize=16,color="green",shape="box"];995[label="pr2F vx78 (msMyInt (Neg (Succ vx79)) vx86) (srRatio vx78 vx77)",fontsize=16,color="black",shape="triangle"];995 -> 1005[label="",style="solid", color="black", weight=3]; 162.51/105.76 871[label="pr2F0G1 vx67 (srRatio vx50 vx50) (primQuotInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))) (primEvenInt (primQuotInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];871 -> 885[label="",style="solid", color="black", weight=3]; 162.51/105.76 951[label="pr2F0G0 vx72 vx73 (Pos (Succ vx74)) MyTrue",fontsize=16,color="black",shape="box"];951 -> 963[label="",style="solid", color="black", weight=3]; 162.51/105.76 952[label="vx73",fontsize=16,color="green",shape="box"];903[label="srRatio vx44 vx44",fontsize=16,color="burlywood",shape="triangle"];4009[label="vx44/CnPc vx440 vx441",fontsize=10,color="white",style="solid",shape="box"];903 -> 4009[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4009 -> 916[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 953[label="pr2F0G2 vx72 vx81 (quotMyInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];953 -> 964[label="",style="solid", color="black", weight=3]; 162.51/105.76 993[label="pr2F3 (esEsMyInt (msMyInt (Pos (Succ vx74)) vx85) (fromIntMyInt (Pos Zero))) vx73 (msMyInt (Pos (Succ vx74)) vx85) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];993 -> 1006[label="",style="solid", color="black", weight=3]; 162.51/105.76 878 -> 802[label="",style="dashed", color="red", weight=0]; 162.51/105.76 878[label="pr2F0G1 vx68 (srRatio vx44 vx44) (Pos (primDivNatS Zero (Succ (Succ Zero)))) (primEvenInt (Pos (primDivNatS Zero (Succ (Succ Zero)))))",fontsize=16,color="magenta"];878 -> 902[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 878 -> 903[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 959[label="vx8000",fontsize=16,color="green",shape="box"];960[label="pr2F0G0 vx77 vx78 (Neg (Succ vx79)) otherwise",fontsize=16,color="black",shape="box"];960 -> 965[label="",style="solid", color="black", weight=3]; 162.51/105.76 962 -> 903[label="",style="dashed", color="red", weight=0]; 162.51/105.76 962[label="srRatio vx78 vx78",fontsize=16,color="magenta"];962 -> 966[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 961[label="pr2F0G vx77 vx82 (quotMyInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="triangle"];961 -> 967[label="",style="solid", color="black", weight=3]; 162.51/105.76 1005[label="pr2F4 vx78 (msMyInt (Neg (Succ vx79)) vx86) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1005 -> 1010[label="",style="solid", color="black", weight=3]; 162.51/105.76 885[label="pr2F0G1 vx67 (srRatio vx50 vx50) (primQuotInt (Neg Zero) (Pos (Succ (Succ Zero)))) (primEvenInt (primQuotInt (Neg Zero) (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];885 -> 910[label="",style="solid", color="black", weight=3]; 162.51/105.76 963 -> 976[label="",style="dashed", color="red", weight=0]; 162.51/105.76 963[label="pr2F vx73 (msMyInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ Zero)))) (srRatio vx73 vx72)",fontsize=16,color="magenta"];963 -> 985[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 916[label="srRatio (CnPc vx440 vx441) (CnPc vx440 vx441)",fontsize=16,color="black",shape="box"];916 -> 940[label="",style="solid", color="black", weight=3]; 162.51/105.76 964[label="pr2F0G1 vx72 vx81 (quotMyInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero))))) (evenMyInt (quotMyInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];964 -> 987[label="",style="solid", color="black", weight=3]; 162.51/105.76 1006[label="pr2F3 (primEqInt (msMyInt (Pos (Succ vx74)) vx85) (fromIntMyInt (Pos Zero))) vx73 (msMyInt (Pos (Succ vx74)) vx85) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1006 -> 1011[label="",style="solid", color="black", weight=3]; 162.51/105.76 902[label="primDivNatS Zero (Succ (Succ Zero))",fontsize=16,color="black",shape="triangle"];902 -> 915[label="",style="solid", color="black", weight=3]; 162.51/105.76 965[label="pr2F0G0 vx77 vx78 (Neg (Succ vx79)) MyTrue",fontsize=16,color="black",shape="box"];965 -> 988[label="",style="solid", color="black", weight=3]; 162.51/105.76 966[label="vx78",fontsize=16,color="green",shape="box"];967[label="pr2F0G2 vx77 vx82 (quotMyInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];967 -> 989[label="",style="solid", color="black", weight=3]; 162.51/105.76 1010[label="pr2F3 (esEsMyInt (msMyInt (Neg (Succ vx79)) vx86) (fromIntMyInt (Pos Zero))) vx78 (msMyInt (Neg (Succ vx79)) vx86) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1010 -> 1016[label="",style="solid", color="black", weight=3]; 162.51/105.76 910 -> 805[label="",style="dashed", color="red", weight=0]; 162.51/105.76 910[label="pr2F0G1 vx67 (srRatio vx50 vx50) (Neg (primDivNatS Zero (Succ (Succ Zero)))) (primEvenInt (Neg (primDivNatS Zero (Succ (Succ Zero)))))",fontsize=16,color="magenta"];910 -> 936[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 910 -> 937[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 985 -> 33[label="",style="dashed", color="red", weight=0]; 162.51/105.76 985[label="fromIntMyInt (Pos (Succ Zero))",fontsize=16,color="magenta"];940[label="reduce (srMyInt vx440 vx440) (srMyInt vx441 vx441)",fontsize=16,color="black",shape="box"];940 -> 958[label="",style="solid", color="black", weight=3]; 162.51/105.76 987[label="pr2F0G1 vx72 vx81 (quotMyInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero))))) (primEvenInt (quotMyInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];987 -> 994[label="",style="solid", color="black", weight=3]; 162.51/105.76 1011[label="pr2F3 (primEqInt (primMinusInt (Pos (Succ vx74)) vx85) (fromIntMyInt (Pos Zero))) vx73 (primMinusInt (Pos (Succ vx74)) vx85) (srRatio vx73 vx72)",fontsize=16,color="burlywood",shape="box"];4010[label="vx85/Pos vx850",fontsize=10,color="white",style="solid",shape="box"];1011 -> 4010[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4010 -> 1017[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4011[label="vx85/Neg vx850",fontsize=10,color="white",style="solid",shape="box"];1011 -> 4011[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4011 -> 1018[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 915[label="Zero",fontsize=16,color="green",shape="box"];988 -> 995[label="",style="dashed", color="red", weight=0]; 162.51/105.76 988[label="pr2F vx78 (msMyInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ Zero)))) (srRatio vx78 vx77)",fontsize=16,color="magenta"];988 -> 1004[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 989[label="pr2F0G1 vx77 vx82 (quotMyInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero))))) (evenMyInt (quotMyInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];989 -> 1007[label="",style="solid", color="black", weight=3]; 162.51/105.76 1016[label="pr2F3 (primEqInt (msMyInt (Neg (Succ vx79)) vx86) (fromIntMyInt (Pos Zero))) vx78 (msMyInt (Neg (Succ vx79)) vx86) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1016 -> 1025[label="",style="solid", color="black", weight=3]; 162.51/105.76 936 -> 903[label="",style="dashed", color="red", weight=0]; 162.51/105.76 936[label="srRatio vx50 vx50",fontsize=16,color="magenta"];936 -> 955[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 937 -> 902[label="",style="dashed", color="red", weight=0]; 162.51/105.76 937[label="primDivNatS Zero (Succ (Succ Zero))",fontsize=16,color="magenta"];958[label="reduce2 (srMyInt vx440 vx440) (srMyInt vx441 vx441)",fontsize=16,color="black",shape="box"];958 -> 968[label="",style="solid", color="black", weight=3]; 162.51/105.76 994[label="pr2F0G1 vx72 vx81 (primQuotInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero))))) (primEvenInt (primQuotInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];994 -> 1008[label="",style="solid", color="black", weight=3]; 162.51/105.76 1017[label="pr2F3 (primEqInt (primMinusInt (Pos (Succ vx74)) (Pos vx850)) (fromIntMyInt (Pos Zero))) vx73 (primMinusInt (Pos (Succ vx74)) (Pos vx850)) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1017 -> 1026[label="",style="solid", color="black", weight=3]; 162.51/105.76 1018[label="pr2F3 (primEqInt (primMinusInt (Pos (Succ vx74)) (Neg vx850)) (fromIntMyInt (Pos Zero))) vx73 (primMinusInt (Pos (Succ vx74)) (Neg vx850)) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1018 -> 1027[label="",style="solid", color="black", weight=3]; 162.51/105.76 1004 -> 33[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1004[label="fromIntMyInt (Pos (Succ Zero))",fontsize=16,color="magenta"];1007[label="pr2F0G1 vx77 vx82 (quotMyInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero))))) (primEvenInt (quotMyInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];1007 -> 1012[label="",style="solid", color="black", weight=3]; 162.51/105.76 1025[label="pr2F3 (primEqInt (primMinusInt (Neg (Succ vx79)) vx86) (fromIntMyInt (Pos Zero))) vx78 (primMinusInt (Neg (Succ vx79)) vx86) (srRatio vx78 vx77)",fontsize=16,color="burlywood",shape="box"];4012[label="vx86/Pos vx860",fontsize=10,color="white",style="solid",shape="box"];1025 -> 4012[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4012 -> 1033[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4013[label="vx86/Neg vx860",fontsize=10,color="white",style="solid",shape="box"];1025 -> 4013[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4013 -> 1034[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 955[label="vx50",fontsize=16,color="green",shape="box"];968[label="reduce2Reduce1 (srMyInt vx440 vx440) (srMyInt vx441 vx441) (srMyInt vx440 vx440) (srMyInt vx441 vx441) (esEsMyInt (srMyInt vx441 vx441) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];968 -> 990[label="",style="solid", color="black", weight=3]; 162.51/105.76 1008[label="pr2F0G1 vx72 vx81 (primQuotInt (Pos (Succ vx74)) (Pos (Succ (Succ Zero)))) (primEvenInt (primQuotInt (Pos (Succ vx74)) (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];1008 -> 1013[label="",style="solid", color="black", weight=3]; 162.51/105.76 1026[label="pr2F3 (primEqInt (primMinusNat (Succ vx74) vx850) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat (Succ vx74) vx850) (srRatio vx73 vx72)",fontsize=16,color="burlywood",shape="box"];4014[label="vx850/Succ vx8500",fontsize=10,color="white",style="solid",shape="box"];1026 -> 4014[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4014 -> 1035[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4015[label="vx850/Zero",fontsize=10,color="white",style="solid",shape="box"];1026 -> 4015[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4015 -> 1036[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1027 -> 1037[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1027[label="pr2F3 (primEqInt (Pos (primPlusNat (Succ vx74) vx850)) (fromIntMyInt (Pos Zero))) vx73 (Pos (primPlusNat (Succ vx74) vx850)) (srRatio vx73 vx72)",fontsize=16,color="magenta"];1027 -> 1038[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1027 -> 1039[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1012[label="pr2F0G1 vx77 vx82 (primQuotInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero))))) (primEvenInt (primQuotInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];1012 -> 1019[label="",style="solid", color="black", weight=3]; 162.51/105.76 1033[label="pr2F3 (primEqInt (primMinusInt (Neg (Succ vx79)) (Pos vx860)) (fromIntMyInt (Pos Zero))) vx78 (primMinusInt (Neg (Succ vx79)) (Pos vx860)) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1033 -> 1040[label="",style="solid", color="black", weight=3]; 162.51/105.76 1034[label="pr2F3 (primEqInt (primMinusInt (Neg (Succ vx79)) (Neg vx860)) (fromIntMyInt (Pos Zero))) vx78 (primMinusInt (Neg (Succ vx79)) (Neg vx860)) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1034 -> 1041[label="",style="solid", color="black", weight=3]; 162.51/105.76 990[label="reduce2Reduce1 (srMyInt vx440 vx440) (srMyInt vx441 vx441) (srMyInt vx440 vx440) (srMyInt vx441 vx441) (primEqInt (srMyInt vx441 vx441) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];990 -> 1009[label="",style="solid", color="black", weight=3]; 162.51/105.76 1013 -> 802[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1013[label="pr2F0G1 vx72 vx81 (Pos (primDivNatS (Succ vx74) (Succ (Succ Zero)))) (primEvenInt (Pos (primDivNatS (Succ vx74) (Succ (Succ Zero)))))",fontsize=16,color="magenta"];1013 -> 1020[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1013 -> 1021[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1013 -> 1022[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1035[label="pr2F3 (primEqInt (primMinusNat (Succ vx74) (Succ vx8500)) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat (Succ vx74) (Succ vx8500)) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1035 -> 1042[label="",style="solid", color="black", weight=3]; 162.51/105.76 1036[label="pr2F3 (primEqInt (primMinusNat (Succ vx74) Zero) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat (Succ vx74) Zero) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1036 -> 1043[label="",style="solid", color="black", weight=3]; 162.51/105.76 1038 -> 76[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1038[label="primPlusNat (Succ vx74) vx850",fontsize=16,color="magenta"];1038 -> 1044[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1038 -> 1045[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1039 -> 76[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1039[label="primPlusNat (Succ vx74) vx850",fontsize=16,color="magenta"];1039 -> 1046[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1039 -> 1047[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1037[label="pr2F3 (primEqInt (Pos vx88) (fromIntMyInt (Pos Zero))) vx73 (Pos vx87) (srRatio vx73 vx72)",fontsize=16,color="burlywood",shape="triangle"];4016[label="vx88/Succ vx880",fontsize=10,color="white",style="solid",shape="box"];1037 -> 4016[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4016 -> 1048[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4017[label="vx88/Zero",fontsize=10,color="white",style="solid",shape="box"];1037 -> 4017[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4017 -> 1049[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1019[label="pr2F0G1 vx77 vx82 (primQuotInt (Neg (Succ vx79)) (Pos (Succ (Succ Zero)))) (primEvenInt (primQuotInt (Neg (Succ vx79)) (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];1019 -> 1028[label="",style="solid", color="black", weight=3]; 162.51/105.76 1040 -> 1057[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1040[label="pr2F3 (primEqInt (Neg (primPlusNat (Succ vx79) vx860)) (fromIntMyInt (Pos Zero))) vx78 (Neg (primPlusNat (Succ vx79) vx860)) (srRatio vx78 vx77)",fontsize=16,color="magenta"];1040 -> 1058[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1040 -> 1059[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1041[label="pr2F3 (primEqInt (primMinusNat vx860 (Succ vx79)) (fromIntMyInt (Pos Zero))) vx78 (primMinusNat vx860 (Succ vx79)) (srRatio vx78 vx77)",fontsize=16,color="burlywood",shape="box"];4018[label="vx860/Succ vx8600",fontsize=10,color="white",style="solid",shape="box"];1041 -> 4018[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4018 -> 1060[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4019[label="vx860/Zero",fontsize=10,color="white",style="solid",shape="box"];1041 -> 4019[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4019 -> 1061[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1009[label="reduce2Reduce1 (srMyInt vx440 vx440) (primMulInt vx441 vx441) (srMyInt vx440 vx440) (primMulInt vx441 vx441) (primEqInt (primMulInt vx441 vx441) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4020[label="vx441/Pos vx4410",fontsize=10,color="white",style="solid",shape="box"];1009 -> 4020[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4020 -> 1014[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4021[label="vx441/Neg vx4410",fontsize=10,color="white",style="solid",shape="box"];1009 -> 4021[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4021 -> 1015[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1020[label="primDivNatS (Succ vx74) (Succ (Succ Zero))",fontsize=16,color="black",shape="triangle"];1020 -> 1029[label="",style="solid", color="black", weight=3]; 162.51/105.76 1021[label="vx81",fontsize=16,color="green",shape="box"];1022[label="vx72",fontsize=16,color="green",shape="box"];1042[label="pr2F3 (primEqInt (primMinusNat vx74 vx8500) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat vx74 vx8500) (srRatio vx73 vx72)",fontsize=16,color="burlywood",shape="triangle"];4022[label="vx74/Succ vx740",fontsize=10,color="white",style="solid",shape="box"];1042 -> 4022[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4022 -> 1062[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4023[label="vx74/Zero",fontsize=10,color="white",style="solid",shape="box"];1042 -> 4023[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4023 -> 1063[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1043 -> 1037[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1043[label="pr2F3 (primEqInt (Pos (Succ vx74)) (fromIntMyInt (Pos Zero))) vx73 (Pos (Succ vx74)) (srRatio vx73 vx72)",fontsize=16,color="magenta"];1043 -> 1064[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1043 -> 1065[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1044[label="vx850",fontsize=16,color="green",shape="box"];1045[label="Succ vx74",fontsize=16,color="green",shape="box"];1046[label="vx850",fontsize=16,color="green",shape="box"];1047[label="Succ vx74",fontsize=16,color="green",shape="box"];1048[label="pr2F3 (primEqInt (Pos (Succ vx880)) (fromIntMyInt (Pos Zero))) vx73 (Pos vx87) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1048 -> 1066[label="",style="solid", color="black", weight=3]; 162.51/105.76 1049[label="pr2F3 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) vx73 (Pos vx87) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1049 -> 1067[label="",style="solid", color="black", weight=3]; 162.51/105.76 1028 -> 805[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1028[label="pr2F0G1 vx77 vx82 (Neg (primDivNatS (Succ vx79) (Succ (Succ Zero)))) (primEvenInt (Neg (primDivNatS (Succ vx79) (Succ (Succ Zero)))))",fontsize=16,color="magenta"];1028 -> 1050[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1028 -> 1051[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1028 -> 1052[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1058 -> 76[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1058[label="primPlusNat (Succ vx79) vx860",fontsize=16,color="magenta"];1058 -> 1068[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1058 -> 1069[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1059 -> 76[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1059[label="primPlusNat (Succ vx79) vx860",fontsize=16,color="magenta"];1059 -> 1070[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1059 -> 1071[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1057[label="pr2F3 (primEqInt (Neg vx90) (fromIntMyInt (Pos Zero))) vx78 (Neg vx89) (srRatio vx78 vx77)",fontsize=16,color="burlywood",shape="triangle"];4024[label="vx90/Succ vx900",fontsize=10,color="white",style="solid",shape="box"];1057 -> 4024[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4024 -> 1072[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4025[label="vx90/Zero",fontsize=10,color="white",style="solid",shape="box"];1057 -> 4025[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4025 -> 1073[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1060[label="pr2F3 (primEqInt (primMinusNat (Succ vx8600) (Succ vx79)) (fromIntMyInt (Pos Zero))) vx78 (primMinusNat (Succ vx8600) (Succ vx79)) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1060 -> 1090[label="",style="solid", color="black", weight=3]; 162.51/105.76 1061[label="pr2F3 (primEqInt (primMinusNat Zero (Succ vx79)) (fromIntMyInt (Pos Zero))) vx78 (primMinusNat Zero (Succ vx79)) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1061 -> 1091[label="",style="solid", color="black", weight=3]; 162.51/105.76 1014[label="reduce2Reduce1 (srMyInt vx440 vx440) (primMulInt (Pos vx4410) (Pos vx4410)) (srMyInt vx440 vx440) (primMulInt (Pos vx4410) (Pos vx4410)) (primEqInt (primMulInt (Pos vx4410) (Pos vx4410)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1014 -> 1023[label="",style="solid", color="black", weight=3]; 162.51/105.76 1015[label="reduce2Reduce1 (srMyInt vx440 vx440) (primMulInt (Neg vx4410) (Neg vx4410)) (srMyInt vx440 vx440) (primMulInt (Neg vx4410) (Neg vx4410)) (primEqInt (primMulInt (Neg vx4410) (Neg vx4410)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1015 -> 1024[label="",style="solid", color="black", weight=3]; 162.51/105.76 1029[label="primDivNatS0 vx74 (Succ Zero) (primGEqNatS vx74 (Succ Zero))",fontsize=16,color="burlywood",shape="box"];4026[label="vx74/Succ vx740",fontsize=10,color="white",style="solid",shape="box"];1029 -> 4026[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4026 -> 1053[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4027[label="vx74/Zero",fontsize=10,color="white",style="solid",shape="box"];1029 -> 4027[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4027 -> 1054[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1062[label="pr2F3 (primEqInt (primMinusNat (Succ vx740) vx8500) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat (Succ vx740) vx8500) (srRatio vx73 vx72)",fontsize=16,color="burlywood",shape="box"];4028[label="vx8500/Succ vx85000",fontsize=10,color="white",style="solid",shape="box"];1062 -> 4028[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4028 -> 1092[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4029[label="vx8500/Zero",fontsize=10,color="white",style="solid",shape="box"];1062 -> 4029[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4029 -> 1093[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1063[label="pr2F3 (primEqInt (primMinusNat Zero vx8500) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat Zero vx8500) (srRatio vx73 vx72)",fontsize=16,color="burlywood",shape="box"];4030[label="vx8500/Succ vx85000",fontsize=10,color="white",style="solid",shape="box"];1063 -> 4030[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4030 -> 1094[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4031[label="vx8500/Zero",fontsize=10,color="white",style="solid",shape="box"];1063 -> 4031[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4031 -> 1095[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1064[label="Succ vx74",fontsize=16,color="green",shape="box"];1065[label="Succ vx74",fontsize=16,color="green",shape="box"];1066[label="pr2F3 (primEqInt (Pos (Succ vx880)) (Pos Zero)) vx73 (Pos vx87) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1066 -> 1096[label="",style="solid", color="black", weight=3]; 162.51/105.76 1067[label="pr2F3 (primEqInt (Pos Zero) (Pos Zero)) vx73 (Pos vx87) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1067 -> 1097[label="",style="solid", color="black", weight=3]; 162.51/105.76 1050[label="vx77",fontsize=16,color="green",shape="box"];1051[label="vx82",fontsize=16,color="green",shape="box"];1052 -> 1020[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1052[label="primDivNatS (Succ vx79) (Succ (Succ Zero))",fontsize=16,color="magenta"];1052 -> 1074[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1068[label="vx860",fontsize=16,color="green",shape="box"];1069[label="Succ vx79",fontsize=16,color="green",shape="box"];1070[label="vx860",fontsize=16,color="green",shape="box"];1071[label="Succ vx79",fontsize=16,color="green",shape="box"];1072[label="pr2F3 (primEqInt (Neg (Succ vx900)) (fromIntMyInt (Pos Zero))) vx78 (Neg vx89) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1072 -> 1098[label="",style="solid", color="black", weight=3]; 162.51/105.76 1073[label="pr2F3 (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero))) vx78 (Neg vx89) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1073 -> 1099[label="",style="solid", color="black", weight=3]; 162.51/105.76 1090 -> 1042[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1090[label="pr2F3 (primEqInt (primMinusNat vx8600 vx79) (fromIntMyInt (Pos Zero))) vx78 (primMinusNat vx8600 vx79) (srRatio vx78 vx77)",fontsize=16,color="magenta"];1090 -> 1110[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1090 -> 1111[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1090 -> 1112[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1090 -> 1113[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1091 -> 1057[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1091[label="pr2F3 (primEqInt (Neg (Succ vx79)) (fromIntMyInt (Pos Zero))) vx78 (Neg (Succ vx79)) (srRatio vx78 vx77)",fontsize=16,color="magenta"];1091 -> 1114[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1091 -> 1115[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1023 -> 1261[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1023[label="reduce2Reduce1 (srMyInt vx440 vx440) (Pos (primMulNat vx4410 vx4410)) (srMyInt vx440 vx440) (Pos (primMulNat vx4410 vx4410)) (primEqInt (Pos (primMulNat vx4410 vx4410)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];1023 -> 1262[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1023 -> 1263[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1023 -> 1264[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1023 -> 1265[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1023 -> 1266[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1024 -> 1261[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1024[label="reduce2Reduce1 (srMyInt vx440 vx440) (Pos (primMulNat vx4410 vx4410)) (srMyInt vx440 vx440) (Pos (primMulNat vx4410 vx4410)) (primEqInt (Pos (primMulNat vx4410 vx4410)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];1024 -> 1267[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1024 -> 1268[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1024 -> 1269[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1024 -> 1270[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1024 -> 1271[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1053[label="primDivNatS0 (Succ vx740) (Succ Zero) (primGEqNatS (Succ vx740) (Succ Zero))",fontsize=16,color="black",shape="box"];1053 -> 1075[label="",style="solid", color="black", weight=3]; 162.51/105.76 1054[label="primDivNatS0 Zero (Succ Zero) (primGEqNatS Zero (Succ Zero))",fontsize=16,color="black",shape="box"];1054 -> 1076[label="",style="solid", color="black", weight=3]; 162.51/105.76 1092[label="pr2F3 (primEqInt (primMinusNat (Succ vx740) (Succ vx85000)) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat (Succ vx740) (Succ vx85000)) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1092 -> 1116[label="",style="solid", color="black", weight=3]; 162.51/105.76 1093[label="pr2F3 (primEqInt (primMinusNat (Succ vx740) Zero) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat (Succ vx740) Zero) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1093 -> 1117[label="",style="solid", color="black", weight=3]; 162.51/105.76 1094[label="pr2F3 (primEqInt (primMinusNat Zero (Succ vx85000)) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat Zero (Succ vx85000)) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1094 -> 1118[label="",style="solid", color="black", weight=3]; 162.51/105.76 1095[label="pr2F3 (primEqInt (primMinusNat Zero Zero) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat Zero Zero) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1095 -> 1119[label="",style="solid", color="black", weight=3]; 162.51/105.76 1096[label="pr2F3 MyFalse vx73 (Pos vx87) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1096 -> 1120[label="",style="solid", color="black", weight=3]; 162.51/105.76 1097[label="pr2F3 MyTrue vx73 (Pos vx87) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1097 -> 1121[label="",style="solid", color="black", weight=3]; 162.51/105.76 1074[label="vx79",fontsize=16,color="green",shape="box"];1098 -> 775[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1098[label="pr2F3 (primEqInt (Neg (Succ vx900)) (Pos Zero)) vx78 (Neg vx89) (srRatio vx78 vx77)",fontsize=16,color="magenta"];1098 -> 1122[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1098 -> 1123[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1098 -> 1124[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1098 -> 1125[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1099[label="pr2F3 (primEqInt (Neg Zero) (Pos Zero)) vx78 (Neg vx89) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1099 -> 1126[label="",style="solid", color="black", weight=3]; 162.51/105.76 1110[label="vx79",fontsize=16,color="green",shape="box"];1111[label="vx77",fontsize=16,color="green",shape="box"];1112[label="vx78",fontsize=16,color="green",shape="box"];1113[label="vx8600",fontsize=16,color="green",shape="box"];1114[label="Succ vx79",fontsize=16,color="green",shape="box"];1115[label="Succ vx79",fontsize=16,color="green",shape="box"];1262[label="primMulNat vx4410 vx4410",fontsize=16,color="burlywood",shape="triangle"];4032[label="vx4410/Succ vx44100",fontsize=10,color="white",style="solid",shape="box"];1262 -> 4032[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4032 -> 1295[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4033[label="vx4410/Zero",fontsize=10,color="white",style="solid",shape="box"];1262 -> 4033[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4033 -> 1296[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1263 -> 1262[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1263[label="primMulNat vx4410 vx4410",fontsize=16,color="magenta"];1264 -> 1262[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1264[label="primMulNat vx4410 vx4410",fontsize=16,color="magenta"];1265[label="vx440",fontsize=16,color="green",shape="box"];1266[label="vx440",fontsize=16,color="green",shape="box"];1261[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) (primEqInt (Pos vx99) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="triangle"];4034[label="vx99/Succ vx990",fontsize=10,color="white",style="solid",shape="box"];1261 -> 4034[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4034 -> 1297[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4035[label="vx99/Zero",fontsize=10,color="white",style="solid",shape="box"];1261 -> 4035[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4035 -> 1298[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1267 -> 1262[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1267[label="primMulNat vx4410 vx4410",fontsize=16,color="magenta"];1267 -> 1299[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1268 -> 1262[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1268[label="primMulNat vx4410 vx4410",fontsize=16,color="magenta"];1268 -> 1300[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1269 -> 1262[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1269[label="primMulNat vx4410 vx4410",fontsize=16,color="magenta"];1269 -> 1301[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1270[label="vx440",fontsize=16,color="green",shape="box"];1271[label="vx440",fontsize=16,color="green",shape="box"];1075 -> 3546[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1075[label="primDivNatS0 (Succ vx740) (Succ Zero) (primGEqNatS vx740 Zero)",fontsize=16,color="magenta"];1075 -> 3547[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1075 -> 3548[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1075 -> 3549[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1075 -> 3550[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1076[label="primDivNatS0 Zero (Succ Zero) MyFalse",fontsize=16,color="black",shape="box"];1076 -> 1109[label="",style="solid", color="black", weight=3]; 162.51/105.76 1116 -> 1042[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1116[label="pr2F3 (primEqInt (primMinusNat vx740 vx85000) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat vx740 vx85000) (srRatio vx73 vx72)",fontsize=16,color="magenta"];1116 -> 1133[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1116 -> 1134[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1117 -> 1037[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1117[label="pr2F3 (primEqInt (Pos (Succ vx740)) (fromIntMyInt (Pos Zero))) vx73 (Pos (Succ vx740)) (srRatio vx73 vx72)",fontsize=16,color="magenta"];1117 -> 1135[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1117 -> 1136[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1118 -> 1057[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1118[label="pr2F3 (primEqInt (Neg (Succ vx85000)) (fromIntMyInt (Pos Zero))) vx73 (Neg (Succ vx85000)) (srRatio vx73 vx72)",fontsize=16,color="magenta"];1118 -> 1137[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1118 -> 1138[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1118 -> 1139[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1118 -> 1140[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1119 -> 1037[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1119[label="pr2F3 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) vx73 (Pos Zero) (srRatio vx73 vx72)",fontsize=16,color="magenta"];1119 -> 1141[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1119 -> 1142[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1120[label="pr2F0 vx73 (Pos vx87) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1120 -> 1143[label="",style="solid", color="black", weight=3]; 162.51/105.76 1121[label="srRatio vx73 vx72",fontsize=16,color="burlywood",shape="triangle"];4036[label="vx73/CnPc vx730 vx731",fontsize=10,color="white",style="solid",shape="box"];1121 -> 4036[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4036 -> 1144[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1122 -> 1121[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1122[label="srRatio vx78 vx77",fontsize=16,color="magenta"];1122 -> 1145[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1122 -> 1146[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1123[label="vx900",fontsize=16,color="green",shape="box"];1124[label="vx78",fontsize=16,color="green",shape="box"];1125[label="vx89",fontsize=16,color="green",shape="box"];1126 -> 1147[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1126[label="pr2F3 MyTrue vx78 (Neg vx89) (srRatio vx78 vx77)",fontsize=16,color="magenta"];1126 -> 1148[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1295[label="primMulNat (Succ vx44100) (Succ vx44100)",fontsize=16,color="black",shape="box"];1295 -> 1329[label="",style="solid", color="black", weight=3]; 162.51/105.76 1296[label="primMulNat Zero Zero",fontsize=16,color="black",shape="box"];1296 -> 1330[label="",style="solid", color="black", weight=3]; 162.51/105.76 1297[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) (primEqInt (Pos (Succ vx990)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1297 -> 1331[label="",style="solid", color="black", weight=3]; 162.51/105.76 1298[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1298 -> 1332[label="",style="solid", color="black", weight=3]; 162.51/105.76 1299[label="vx4410",fontsize=16,color="green",shape="box"];1300[label="vx4410",fontsize=16,color="green",shape="box"];1301[label="vx4410",fontsize=16,color="green",shape="box"];3547[label="Zero",fontsize=16,color="green",shape="box"];3548[label="Zero",fontsize=16,color="green",shape="box"];3549[label="vx740",fontsize=16,color="green",shape="box"];3550[label="vx740",fontsize=16,color="green",shape="box"];3546[label="primDivNatS0 (Succ vx165) (Succ vx166) (primGEqNatS vx167 vx168)",fontsize=16,color="burlywood",shape="triangle"];4037[label="vx167/Succ vx1670",fontsize=10,color="white",style="solid",shape="box"];3546 -> 4037[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4037 -> 3591[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4038[label="vx167/Zero",fontsize=10,color="white",style="solid",shape="box"];3546 -> 4038[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4038 -> 3592[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1109[label="Zero",fontsize=16,color="green",shape="box"];1133[label="vx85000",fontsize=16,color="green",shape="box"];1134[label="vx740",fontsize=16,color="green",shape="box"];1135[label="Succ vx740",fontsize=16,color="green",shape="box"];1136[label="Succ vx740",fontsize=16,color="green",shape="box"];1137[label="Succ vx85000",fontsize=16,color="green",shape="box"];1138[label="vx72",fontsize=16,color="green",shape="box"];1139[label="Succ vx85000",fontsize=16,color="green",shape="box"];1140[label="vx73",fontsize=16,color="green",shape="box"];1141[label="Zero",fontsize=16,color="green",shape="box"];1142[label="Zero",fontsize=16,color="green",shape="box"];1143 -> 792[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1143[label="pr2F0G (srRatio vx73 vx72) vx73 (Pos vx87)",fontsize=16,color="magenta"];1143 -> 1149[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1143 -> 1150[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1143 -> 1151[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1144[label="srRatio (CnPc vx730 vx731) vx72",fontsize=16,color="burlywood",shape="box"];4039[label="vx72/CnPc vx720 vx721",fontsize=10,color="white",style="solid",shape="box"];1144 -> 4039[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4039 -> 1152[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1145[label="vx77",fontsize=16,color="green",shape="box"];1146[label="vx78",fontsize=16,color="green",shape="box"];1148 -> 1121[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1148[label="srRatio vx78 vx77",fontsize=16,color="magenta"];1148 -> 1153[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1148 -> 1154[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1147[label="pr2F3 MyTrue vx78 (Neg vx89) vx94",fontsize=16,color="black",shape="triangle"];1147 -> 1155[label="",style="solid", color="black", weight=3]; 162.51/105.76 1329 -> 76[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1329[label="primPlusNat (primMulNat vx44100 (Succ vx44100)) (Succ vx44100)",fontsize=16,color="magenta"];1329 -> 1345[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1329 -> 1346[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1330[label="Zero",fontsize=16,color="green",shape="box"];1331[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) (primEqInt (Pos (Succ vx990)) (Pos Zero))",fontsize=16,color="black",shape="box"];1331 -> 1347[label="",style="solid", color="black", weight=3]; 162.51/105.76 1332[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];1332 -> 1348[label="",style="solid", color="black", weight=3]; 162.51/105.76 3591[label="primDivNatS0 (Succ vx165) (Succ vx166) (primGEqNatS (Succ vx1670) vx168)",fontsize=16,color="burlywood",shape="box"];4040[label="vx168/Succ vx1680",fontsize=10,color="white",style="solid",shape="box"];3591 -> 4040[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4040 -> 3607[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4041[label="vx168/Zero",fontsize=10,color="white",style="solid",shape="box"];3591 -> 4041[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4041 -> 3608[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3592[label="primDivNatS0 (Succ vx165) (Succ vx166) (primGEqNatS Zero vx168)",fontsize=16,color="burlywood",shape="box"];4042[label="vx168/Succ vx1680",fontsize=10,color="white",style="solid",shape="box"];3592 -> 4042[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4042 -> 3609[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4043[label="vx168/Zero",fontsize=10,color="white",style="solid",shape="box"];3592 -> 4043[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4043 -> 3610[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1149[label="vx87",fontsize=16,color="green",shape="box"];1150[label="vx73",fontsize=16,color="green",shape="box"];1151 -> 1121[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1151[label="srRatio vx73 vx72",fontsize=16,color="magenta"];1152[label="srRatio (CnPc vx730 vx731) (CnPc vx720 vx721)",fontsize=16,color="black",shape="box"];1152 -> 1162[label="",style="solid", color="black", weight=3]; 162.51/105.76 1153[label="vx77",fontsize=16,color="green",shape="box"];1154[label="vx78",fontsize=16,color="green",shape="box"];1155[label="vx94",fontsize=16,color="green",shape="box"];1345[label="Succ vx44100",fontsize=16,color="green",shape="box"];1346 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1346[label="primMulNat vx44100 (Succ vx44100)",fontsize=16,color="magenta"];1346 -> 1355[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1346 -> 1356[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1347[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) MyFalse",fontsize=16,color="black",shape="box"];1347 -> 1357[label="",style="solid", color="black", weight=3]; 162.51/105.76 1348[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) MyTrue",fontsize=16,color="black",shape="box"];1348 -> 1358[label="",style="solid", color="black", weight=3]; 162.51/105.76 3607[label="primDivNatS0 (Succ vx165) (Succ vx166) (primGEqNatS (Succ vx1670) (Succ vx1680))",fontsize=16,color="black",shape="box"];3607 -> 3629[label="",style="solid", color="black", weight=3]; 162.51/105.76 3608[label="primDivNatS0 (Succ vx165) (Succ vx166) (primGEqNatS (Succ vx1670) Zero)",fontsize=16,color="black",shape="box"];3608 -> 3630[label="",style="solid", color="black", weight=3]; 162.51/105.76 3609[label="primDivNatS0 (Succ vx165) (Succ vx166) (primGEqNatS Zero (Succ vx1680))",fontsize=16,color="black",shape="box"];3609 -> 3631[label="",style="solid", color="black", weight=3]; 162.51/105.76 3610[label="primDivNatS0 (Succ vx165) (Succ vx166) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];3610 -> 3632[label="",style="solid", color="black", weight=3]; 162.51/105.76 1162[label="reduce (srMyInt vx730 vx720) (srMyInt vx731 vx721)",fontsize=16,color="black",shape="box"];1162 -> 1169[label="",style="solid", color="black", weight=3]; 162.51/105.76 1355[label="vx44100",fontsize=16,color="green",shape="box"];1356[label="Succ vx44100",fontsize=16,color="green",shape="box"];1277[label="primMulNat vx7310 vx7210",fontsize=16,color="burlywood",shape="triangle"];4044[label="vx7310/Succ vx73100",fontsize=10,color="white",style="solid",shape="box"];1277 -> 4044[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4044 -> 1302[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4045[label="vx7310/Zero",fontsize=10,color="white",style="solid",shape="box"];1277 -> 4045[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4045 -> 1303[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1357[label="reduce2Reduce0 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) otherwise",fontsize=16,color="black",shape="box"];1357 -> 1363[label="",style="solid", color="black", weight=3]; 162.51/105.76 1358 -> 46[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1358[label="error",fontsize=16,color="magenta"];3629 -> 3546[label="",style="dashed", color="red", weight=0]; 162.51/105.76 3629[label="primDivNatS0 (Succ vx165) (Succ vx166) (primGEqNatS vx1670 vx1680)",fontsize=16,color="magenta"];3629 -> 3648[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3629 -> 3649[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3630[label="primDivNatS0 (Succ vx165) (Succ vx166) MyTrue",fontsize=16,color="black",shape="triangle"];3630 -> 3650[label="",style="solid", color="black", weight=3]; 162.51/105.76 3631[label="primDivNatS0 (Succ vx165) (Succ vx166) MyFalse",fontsize=16,color="black",shape="box"];3631 -> 3651[label="",style="solid", color="black", weight=3]; 162.51/105.76 3632 -> 3630[label="",style="dashed", color="red", weight=0]; 162.51/105.76 3632[label="primDivNatS0 (Succ vx165) (Succ vx166) MyTrue",fontsize=16,color="magenta"];1169[label="reduce2 (srMyInt vx730 vx720) (srMyInt vx731 vx721)",fontsize=16,color="black",shape="box"];1169 -> 1175[label="",style="solid", color="black", weight=3]; 162.51/105.76 1302[label="primMulNat (Succ vx73100) vx7210",fontsize=16,color="burlywood",shape="box"];4046[label="vx7210/Succ vx72100",fontsize=10,color="white",style="solid",shape="box"];1302 -> 4046[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4046 -> 1341[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4047[label="vx7210/Zero",fontsize=10,color="white",style="solid",shape="box"];1302 -> 4047[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4047 -> 1342[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1303[label="primMulNat Zero vx7210",fontsize=16,color="burlywood",shape="box"];4048[label="vx7210/Succ vx72100",fontsize=10,color="white",style="solid",shape="box"];1303 -> 4048[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4048 -> 1343[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4049[label="vx7210/Zero",fontsize=10,color="white",style="solid",shape="box"];1303 -> 4049[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4049 -> 1344[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1363[label="reduce2Reduce0 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) MyTrue",fontsize=16,color="black",shape="box"];1363 -> 1368[label="",style="solid", color="black", weight=3]; 162.51/105.76 3648[label="vx1680",fontsize=16,color="green",shape="box"];3649[label="vx1670",fontsize=16,color="green",shape="box"];3650[label="Succ (primDivNatS (primMinusNatS (Succ vx165) (Succ vx166)) (Succ (Succ vx166)))",fontsize=16,color="green",shape="box"];3650 -> 3665[label="",style="dashed", color="green", weight=3]; 162.51/105.76 3651[label="Zero",fontsize=16,color="green",shape="box"];1175[label="reduce2Reduce1 (srMyInt vx730 vx720) (srMyInt vx731 vx721) (srMyInt vx730 vx720) (srMyInt vx731 vx721) (esEsMyInt (srMyInt vx731 vx721) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1175 -> 1181[label="",style="solid", color="black", weight=3]; 162.51/105.76 1341[label="primMulNat (Succ vx73100) (Succ vx72100)",fontsize=16,color="black",shape="box"];1341 -> 1351[label="",style="solid", color="black", weight=3]; 162.51/105.76 1342[label="primMulNat (Succ vx73100) Zero",fontsize=16,color="black",shape="box"];1342 -> 1352[label="",style="solid", color="black", weight=3]; 162.51/105.76 1343[label="primMulNat Zero (Succ vx72100)",fontsize=16,color="black",shape="box"];1343 -> 1353[label="",style="solid", color="black", weight=3]; 162.51/105.76 1344[label="primMulNat Zero Zero",fontsize=16,color="black",shape="box"];1344 -> 1354[label="",style="solid", color="black", weight=3]; 162.51/105.76 1368[label="CnPc (quotMyInt (srMyInt vx730 vx720) (reduce2D (srMyInt vx730 vx720) (Pos vx98))) (quotMyInt (Pos vx97) (reduce2D (srMyInt vx730 vx720) (Pos vx98)))",fontsize=16,color="green",shape="box"];1368 -> 1370[label="",style="dashed", color="green", weight=3]; 162.51/105.76 1368 -> 1371[label="",style="dashed", color="green", weight=3]; 162.51/105.76 3665 -> 2476[label="",style="dashed", color="red", weight=0]; 162.51/105.76 3665[label="primDivNatS (primMinusNatS (Succ vx165) (Succ vx166)) (Succ (Succ vx166))",fontsize=16,color="magenta"];3665 -> 3673[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3665 -> 3674[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1181[label="reduce2Reduce1 (srMyInt vx730 vx720) (srMyInt vx731 vx721) (srMyInt vx730 vx720) (srMyInt vx731 vx721) (primEqInt (srMyInt vx731 vx721) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1181 -> 1187[label="",style="solid", color="black", weight=3]; 162.51/105.76 1351 -> 76[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1351[label="primPlusNat (primMulNat vx73100 (Succ vx72100)) (Succ vx72100)",fontsize=16,color="magenta"];1351 -> 1361[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1351 -> 1362[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1352[label="Zero",fontsize=16,color="green",shape="box"];1353[label="Zero",fontsize=16,color="green",shape="box"];1354[label="Zero",fontsize=16,color="green",shape="box"];1370[label="quotMyInt (srMyInt vx730 vx720) (reduce2D (srMyInt vx730 vx720) (Pos vx98))",fontsize=16,color="black",shape="box"];1370 -> 1373[label="",style="solid", color="black", weight=3]; 162.51/105.76 1371[label="quotMyInt (Pos vx97) (reduce2D (srMyInt vx730 vx720) (Pos vx98))",fontsize=16,color="black",shape="box"];1371 -> 1374[label="",style="solid", color="black", weight=3]; 162.51/105.76 3673[label="Succ vx166",fontsize=16,color="green",shape="box"];3674[label="primMinusNatS (Succ vx165) (Succ vx166)",fontsize=16,color="black",shape="box"];3674 -> 3682[label="",style="solid", color="black", weight=3]; 162.51/105.76 2476[label="primDivNatS vx123 (Succ vx12400)",fontsize=16,color="burlywood",shape="triangle"];4050[label="vx123/Succ vx1230",fontsize=10,color="white",style="solid",shape="box"];2476 -> 4050[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4050 -> 2488[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4051[label="vx123/Zero",fontsize=10,color="white",style="solid",shape="box"];2476 -> 4051[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4051 -> 2489[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1187[label="reduce2Reduce1 (srMyInt vx730 vx720) (primMulInt vx731 vx721) (srMyInt vx730 vx720) (primMulInt vx731 vx721) (primEqInt (primMulInt vx731 vx721) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4052[label="vx731/Pos vx7310",fontsize=10,color="white",style="solid",shape="box"];1187 -> 4052[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4052 -> 1192[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4053[label="vx731/Neg vx7310",fontsize=10,color="white",style="solid",shape="box"];1187 -> 4053[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4053 -> 1193[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1361[label="Succ vx72100",fontsize=16,color="green",shape="box"];1362 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1362[label="primMulNat vx73100 (Succ vx72100)",fontsize=16,color="magenta"];1362 -> 1366[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1362 -> 1367[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1373[label="primQuotInt (srMyInt vx730 vx720) (reduce2D (srMyInt vx730 vx720) (Pos vx98))",fontsize=16,color="black",shape="box"];1373 -> 1377[label="",style="solid", color="black", weight=3]; 162.51/105.76 1374 -> 3014[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1374[label="primQuotInt (Pos vx97) (reduce2D (srMyInt vx730 vx720) (Pos vx98))",fontsize=16,color="magenta"];1374 -> 3015[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3682[label="primMinusNatS vx165 vx166",fontsize=16,color="burlywood",shape="triangle"];4054[label="vx165/Succ vx1650",fontsize=10,color="white",style="solid",shape="box"];3682 -> 4054[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4054 -> 3691[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4055[label="vx165/Zero",fontsize=10,color="white",style="solid",shape="box"];3682 -> 4055[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4055 -> 3692[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 2488[label="primDivNatS (Succ vx1230) (Succ vx12400)",fontsize=16,color="black",shape="box"];2488 -> 2502[label="",style="solid", color="black", weight=3]; 162.51/105.76 2489[label="primDivNatS Zero (Succ vx12400)",fontsize=16,color="black",shape="box"];2489 -> 2503[label="",style="solid", color="black", weight=3]; 162.51/105.76 1192[label="reduce2Reduce1 (srMyInt vx730 vx720) (primMulInt (Pos vx7310) vx721) (srMyInt vx730 vx720) (primMulInt (Pos vx7310) vx721) (primEqInt (primMulInt (Pos vx7310) vx721) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4056[label="vx721/Pos vx7210",fontsize=10,color="white",style="solid",shape="box"];1192 -> 4056[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4056 -> 1198[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4057[label="vx721/Neg vx7210",fontsize=10,color="white",style="solid",shape="box"];1192 -> 4057[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4057 -> 1199[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1193[label="reduce2Reduce1 (srMyInt vx730 vx720) (primMulInt (Neg vx7310) vx721) (srMyInt vx730 vx720) (primMulInt (Neg vx7310) vx721) (primEqInt (primMulInt (Neg vx7310) vx721) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4058[label="vx721/Pos vx7210",fontsize=10,color="white",style="solid",shape="box"];1193 -> 4058[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4058 -> 1200[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4059[label="vx721/Neg vx7210",fontsize=10,color="white",style="solid",shape="box"];1193 -> 4059[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4059 -> 1201[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1366[label="vx73100",fontsize=16,color="green",shape="box"];1367[label="Succ vx72100",fontsize=16,color="green",shape="box"];1377[label="primQuotInt (primMulInt vx730 vx720) (reduce2D (primMulInt vx730 vx720) (Pos vx98))",fontsize=16,color="burlywood",shape="box"];4060[label="vx730/Pos vx7300",fontsize=10,color="white",style="solid",shape="box"];1377 -> 4060[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4060 -> 1381[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4061[label="vx730/Neg vx7300",fontsize=10,color="white",style="solid",shape="box"];1377 -> 4061[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4061 -> 1382[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3015[label="reduce2D (srMyInt vx730 vx720) (Pos vx98)",fontsize=16,color="black",shape="box"];3015 -> 3400[label="",style="solid", color="black", weight=3]; 162.51/105.76 3014[label="primQuotInt (Pos vx97) vx150",fontsize=16,color="burlywood",shape="triangle"];4062[label="vx150/Pos vx1500",fontsize=10,color="white",style="solid",shape="box"];3014 -> 4062[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4062 -> 3401[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4063[label="vx150/Neg vx1500",fontsize=10,color="white",style="solid",shape="box"];3014 -> 4063[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4063 -> 3402[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3691[label="primMinusNatS (Succ vx1650) vx166",fontsize=16,color="burlywood",shape="box"];4064[label="vx166/Succ vx1660",fontsize=10,color="white",style="solid",shape="box"];3691 -> 4064[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4064 -> 3702[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4065[label="vx166/Zero",fontsize=10,color="white",style="solid",shape="box"];3691 -> 4065[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4065 -> 3703[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3692[label="primMinusNatS Zero vx166",fontsize=16,color="burlywood",shape="box"];4066[label="vx166/Succ vx1660",fontsize=10,color="white",style="solid",shape="box"];3692 -> 4066[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4066 -> 3704[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4067[label="vx166/Zero",fontsize=10,color="white",style="solid",shape="box"];3692 -> 4067[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4067 -> 3705[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 2502[label="primDivNatS0 vx1230 vx12400 (primGEqNatS vx1230 vx12400)",fontsize=16,color="burlywood",shape="box"];4068[label="vx1230/Succ vx12300",fontsize=10,color="white",style="solid",shape="box"];2502 -> 4068[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4068 -> 2517[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4069[label="vx1230/Zero",fontsize=10,color="white",style="solid",shape="box"];2502 -> 4069[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4069 -> 2518[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 2503[label="Zero",fontsize=16,color="green",shape="box"];1198[label="reduce2Reduce1 (srMyInt vx730 vx720) (primMulInt (Pos vx7310) (Pos vx7210)) (srMyInt vx730 vx720) (primMulInt (Pos vx7310) (Pos vx7210)) (primEqInt (primMulInt (Pos vx7310) (Pos vx7210)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1198 -> 1207[label="",style="solid", color="black", weight=3]; 162.51/105.76 1199[label="reduce2Reduce1 (srMyInt vx730 vx720) (primMulInt (Pos vx7310) (Neg vx7210)) (srMyInt vx730 vx720) (primMulInt (Pos vx7310) (Neg vx7210)) (primEqInt (primMulInt (Pos vx7310) (Neg vx7210)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1199 -> 1208[label="",style="solid", color="black", weight=3]; 162.51/105.76 1200[label="reduce2Reduce1 (srMyInt vx730 vx720) (primMulInt (Neg vx7310) (Pos vx7210)) (srMyInt vx730 vx720) (primMulInt (Neg vx7310) (Pos vx7210)) (primEqInt (primMulInt (Neg vx7310) (Pos vx7210)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1200 -> 1209[label="",style="solid", color="black", weight=3]; 162.51/105.76 1201[label="reduce2Reduce1 (srMyInt vx730 vx720) (primMulInt (Neg vx7310) (Neg vx7210)) (srMyInt vx730 vx720) (primMulInt (Neg vx7310) (Neg vx7210)) (primEqInt (primMulInt (Neg vx7310) (Neg vx7210)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1201 -> 1210[label="",style="solid", color="black", weight=3]; 162.51/105.76 1381[label="primQuotInt (primMulInt (Pos vx7300) vx720) (reduce2D (primMulInt (Pos vx7300) vx720) (Pos vx98))",fontsize=16,color="burlywood",shape="box"];4070[label="vx720/Pos vx7200",fontsize=10,color="white",style="solid",shape="box"];1381 -> 4070[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4070 -> 1386[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4071[label="vx720/Neg vx7200",fontsize=10,color="white",style="solid",shape="box"];1381 -> 4071[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4071 -> 1387[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1382[label="primQuotInt (primMulInt (Neg vx7300) vx720) (reduce2D (primMulInt (Neg vx7300) vx720) (Pos vx98))",fontsize=16,color="burlywood",shape="box"];4072[label="vx720/Pos vx7200",fontsize=10,color="white",style="solid",shape="box"];1382 -> 4072[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4072 -> 1388[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4073[label="vx720/Neg vx7200",fontsize=10,color="white",style="solid",shape="box"];1382 -> 4073[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4073 -> 1389[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3400[label="gcd (srMyInt vx730 vx720) (Pos vx98)",fontsize=16,color="black",shape="box"];3400 -> 3408[label="",style="solid", color="black", weight=3]; 162.51/105.76 3401[label="primQuotInt (Pos vx97) (Pos vx1500)",fontsize=16,color="burlywood",shape="box"];4074[label="vx1500/Succ vx15000",fontsize=10,color="white",style="solid",shape="box"];3401 -> 4074[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4074 -> 3409[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4075[label="vx1500/Zero",fontsize=10,color="white",style="solid",shape="box"];3401 -> 4075[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4075 -> 3410[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3402[label="primQuotInt (Pos vx97) (Neg vx1500)",fontsize=16,color="burlywood",shape="box"];4076[label="vx1500/Succ vx15000",fontsize=10,color="white",style="solid",shape="box"];3402 -> 4076[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4076 -> 3411[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4077[label="vx1500/Zero",fontsize=10,color="white",style="solid",shape="box"];3402 -> 4077[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4077 -> 3412[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 3702[label="primMinusNatS (Succ vx1650) (Succ vx1660)",fontsize=16,color="black",shape="box"];3702 -> 3716[label="",style="solid", color="black", weight=3]; 162.51/105.76 3703[label="primMinusNatS (Succ vx1650) Zero",fontsize=16,color="black",shape="box"];3703 -> 3717[label="",style="solid", color="black", weight=3]; 162.51/105.76 3704[label="primMinusNatS Zero (Succ vx1660)",fontsize=16,color="black",shape="box"];3704 -> 3718[label="",style="solid", color="black", weight=3]; 162.51/105.76 3705[label="primMinusNatS Zero Zero",fontsize=16,color="black",shape="box"];3705 -> 3719[label="",style="solid", color="black", weight=3]; 162.51/105.76 2517[label="primDivNatS0 (Succ vx12300) vx12400 (primGEqNatS (Succ vx12300) vx12400)",fontsize=16,color="burlywood",shape="box"];4078[label="vx12400/Succ vx124000",fontsize=10,color="white",style="solid",shape="box"];2517 -> 4078[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4078 -> 2532[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4079[label="vx12400/Zero",fontsize=10,color="white",style="solid",shape="box"];2517 -> 4079[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4079 -> 2533[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 2518[label="primDivNatS0 Zero vx12400 (primGEqNatS Zero vx12400)",fontsize=16,color="burlywood",shape="box"];4080[label="vx12400/Succ vx124000",fontsize=10,color="white",style="solid",shape="box"];2518 -> 4080[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4080 -> 2534[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4081[label="vx12400/Zero",fontsize=10,color="white",style="solid",shape="box"];2518 -> 4081[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4081 -> 2535[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1207 -> 1261[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1207[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos (primMulNat vx7310 vx7210)) (srMyInt vx730 vx720) (Pos (primMulNat vx7310 vx7210)) (primEqInt (Pos (primMulNat vx7310 vx7210)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];1207 -> 1277[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1207 -> 1278[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1207 -> 1279[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1208 -> 1310[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1208[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg (primMulNat vx7310 vx7210)) (srMyInt vx730 vx720) (Neg (primMulNat vx7310 vx7210)) (primEqInt (Neg (primMulNat vx7310 vx7210)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];1208 -> 1311[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1208 -> 1312[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1208 -> 1313[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1209 -> 1310[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1209[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg (primMulNat vx7310 vx7210)) (srMyInt vx730 vx720) (Neg (primMulNat vx7310 vx7210)) (primEqInt (Neg (primMulNat vx7310 vx7210)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];1209 -> 1314[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1209 -> 1315[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1209 -> 1316[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1210 -> 1261[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1210[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos (primMulNat vx7310 vx7210)) (srMyInt vx730 vx720) (Pos (primMulNat vx7310 vx7210)) (primEqInt (Pos (primMulNat vx7310 vx7210)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];1210 -> 1280[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1210 -> 1281[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1210 -> 1282[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1386[label="primQuotInt (primMulInt (Pos vx7300) (Pos vx7200)) (reduce2D (primMulInt (Pos vx7300) (Pos vx7200)) (Pos vx98))",fontsize=16,color="black",shape="box"];1386 -> 1394[label="",style="solid", color="black", weight=3]; 162.51/105.76 1387[label="primQuotInt (primMulInt (Pos vx7300) (Neg vx7200)) (reduce2D (primMulInt (Pos vx7300) (Neg vx7200)) (Pos vx98))",fontsize=16,color="black",shape="box"];1387 -> 1395[label="",style="solid", color="black", weight=3]; 162.51/105.76 1388[label="primQuotInt (primMulInt (Neg vx7300) (Pos vx7200)) (reduce2D (primMulInt (Neg vx7300) (Pos vx7200)) (Pos vx98))",fontsize=16,color="black",shape="box"];1388 -> 1396[label="",style="solid", color="black", weight=3]; 162.51/105.76 1389[label="primQuotInt (primMulInt (Neg vx7300) (Neg vx7200)) (reduce2D (primMulInt (Neg vx7300) (Neg vx7200)) (Pos vx98))",fontsize=16,color="black",shape="box"];1389 -> 1397[label="",style="solid", color="black", weight=3]; 162.51/105.76 3408[label="gcd3 (srMyInt vx730 vx720) (Pos vx98)",fontsize=16,color="black",shape="box"];3408 -> 3425[label="",style="solid", color="black", weight=3]; 162.51/105.76 3409[label="primQuotInt (Pos vx97) (Pos (Succ vx15000))",fontsize=16,color="black",shape="box"];3409 -> 3426[label="",style="solid", color="black", weight=3]; 162.51/105.76 3410[label="primQuotInt (Pos vx97) (Pos Zero)",fontsize=16,color="black",shape="box"];3410 -> 3427[label="",style="solid", color="black", weight=3]; 162.51/105.76 3411[label="primQuotInt (Pos vx97) (Neg (Succ vx15000))",fontsize=16,color="black",shape="box"];3411 -> 3428[label="",style="solid", color="black", weight=3]; 162.51/105.76 3412[label="primQuotInt (Pos vx97) (Neg Zero)",fontsize=16,color="black",shape="box"];3412 -> 3429[label="",style="solid", color="black", weight=3]; 162.51/105.76 3716 -> 3682[label="",style="dashed", color="red", weight=0]; 162.51/105.76 3716[label="primMinusNatS vx1650 vx1660",fontsize=16,color="magenta"];3716 -> 3732[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3716 -> 3733[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3717[label="Succ vx1650",fontsize=16,color="green",shape="box"];3718[label="Zero",fontsize=16,color="green",shape="box"];3719[label="Zero",fontsize=16,color="green",shape="box"];2532[label="primDivNatS0 (Succ vx12300) (Succ vx124000) (primGEqNatS (Succ vx12300) (Succ vx124000))",fontsize=16,color="black",shape="box"];2532 -> 2548[label="",style="solid", color="black", weight=3]; 162.51/105.76 2533[label="primDivNatS0 (Succ vx12300) Zero (primGEqNatS (Succ vx12300) Zero)",fontsize=16,color="black",shape="box"];2533 -> 2549[label="",style="solid", color="black", weight=3]; 162.51/105.76 2534[label="primDivNatS0 Zero (Succ vx124000) (primGEqNatS Zero (Succ vx124000))",fontsize=16,color="black",shape="box"];2534 -> 2550[label="",style="solid", color="black", weight=3]; 162.51/105.76 2535[label="primDivNatS0 Zero Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];2535 -> 2551[label="",style="solid", color="black", weight=3]; 162.51/105.76 1278 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1278[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1279 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1279[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1311 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1311[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1311 -> 1333[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1312 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1312[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1312 -> 1334[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1313 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1313[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1313 -> 1335[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1310[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) (primEqInt (Neg vx102) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="triangle"];4082[label="vx102/Succ vx1020",fontsize=10,color="white",style="solid",shape="box"];1310 -> 4082[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4082 -> 1336[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4083[label="vx102/Zero",fontsize=10,color="white",style="solid",shape="box"];1310 -> 4083[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4083 -> 1337[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1314 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1314[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1314 -> 1338[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1315 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1315[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1315 -> 1339[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1316 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1316[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1316 -> 1340[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1280 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1280[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1280 -> 1304[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1280 -> 1305[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1281 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1281[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1281 -> 1306[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1281 -> 1307[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1282 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1282[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1282 -> 1308[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1282 -> 1309[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1394 -> 3014[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1394[label="primQuotInt (Pos (primMulNat vx7300 vx7200)) (reduce2D (Pos (primMulNat vx7300 vx7200)) (Pos vx98))",fontsize=16,color="magenta"];1394 -> 3019[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1394 -> 3020[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1395 -> 1991[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1395[label="primQuotInt (Neg (primMulNat vx7300 vx7200)) (reduce2D (Neg (primMulNat vx7300 vx7200)) (Pos vx98))",fontsize=16,color="magenta"];1395 -> 1992[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1395 -> 1993[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1396 -> 1991[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1396[label="primQuotInt (Neg (primMulNat vx7300 vx7200)) (reduce2D (Neg (primMulNat vx7300 vx7200)) (Pos vx98))",fontsize=16,color="magenta"];1396 -> 1994[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1396 -> 1995[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1397 -> 3014[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1397[label="primQuotInt (Pos (primMulNat vx7300 vx7200)) (reduce2D (Pos (primMulNat vx7300 vx7200)) (Pos vx98))",fontsize=16,color="magenta"];1397 -> 3021[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1397 -> 3022[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3425[label="gcd2 (esEsMyInt (srMyInt vx730 vx720) (fromIntMyInt (Pos Zero))) (srMyInt vx730 vx720) (Pos vx98)",fontsize=16,color="black",shape="box"];3425 -> 3474[label="",style="solid", color="black", weight=3]; 162.51/105.76 3426[label="Pos (primDivNatS vx97 (Succ vx15000))",fontsize=16,color="green",shape="box"];3426 -> 3475[label="",style="dashed", color="green", weight=3]; 162.51/105.76 3427 -> 2462[label="",style="dashed", color="red", weight=0]; 162.51/105.76 3427[label="error",fontsize=16,color="magenta"];3428[label="Neg (primDivNatS vx97 (Succ vx15000))",fontsize=16,color="green",shape="box"];3428 -> 3476[label="",style="dashed", color="green", weight=3]; 162.51/105.76 3429 -> 2462[label="",style="dashed", color="red", weight=0]; 162.51/105.76 3429[label="error",fontsize=16,color="magenta"];3732[label="vx1660",fontsize=16,color="green",shape="box"];3733[label="vx1650",fontsize=16,color="green",shape="box"];2548 -> 3546[label="",style="dashed", color="red", weight=0]; 162.51/105.76 2548[label="primDivNatS0 (Succ vx12300) (Succ vx124000) (primGEqNatS vx12300 vx124000)",fontsize=16,color="magenta"];2548 -> 3551[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 2548 -> 3552[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 2548 -> 3553[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 2548 -> 3554[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 2549[label="primDivNatS0 (Succ vx12300) Zero MyTrue",fontsize=16,color="black",shape="box"];2549 -> 2561[label="",style="solid", color="black", weight=3]; 162.51/105.76 2550[label="primDivNatS0 Zero (Succ vx124000) MyFalse",fontsize=16,color="black",shape="box"];2550 -> 2562[label="",style="solid", color="black", weight=3]; 162.51/105.76 2551[label="primDivNatS0 Zero Zero MyTrue",fontsize=16,color="black",shape="box"];2551 -> 2563[label="",style="solid", color="black", weight=3]; 162.51/105.76 1333[label="vx7210",fontsize=16,color="green",shape="box"];1334[label="vx7210",fontsize=16,color="green",shape="box"];1335[label="vx7210",fontsize=16,color="green",shape="box"];1336[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) (primEqInt (Neg (Succ vx1020)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1336 -> 1349[label="",style="solid", color="black", weight=3]; 162.51/105.76 1337[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1337 -> 1350[label="",style="solid", color="black", weight=3]; 162.51/105.76 1338[label="vx7310",fontsize=16,color="green",shape="box"];1339[label="vx7310",fontsize=16,color="green",shape="box"];1340[label="vx7310",fontsize=16,color="green",shape="box"];1304[label="vx7310",fontsize=16,color="green",shape="box"];1305[label="vx7210",fontsize=16,color="green",shape="box"];1306[label="vx7310",fontsize=16,color="green",shape="box"];1307[label="vx7210",fontsize=16,color="green",shape="box"];1308[label="vx7310",fontsize=16,color="green",shape="box"];1309[label="vx7210",fontsize=16,color="green",shape="box"];3019 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 3019[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3019 -> 3403[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3019 -> 3404[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3020 -> 3405[label="",style="dashed", color="red", weight=0]; 162.51/105.76 3020[label="reduce2D (Pos (primMulNat vx7300 vx7200)) (Pos vx98)",fontsize=16,color="magenta"];3020 -> 3406[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1992 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1992[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];1992 -> 2422[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1992 -> 2423[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1993 -> 2424[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1993[label="reduce2D (Neg (primMulNat vx7300 vx7200)) (Pos vx98)",fontsize=16,color="magenta"];1993 -> 2425[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1991[label="primQuotInt (Neg vx123) vx124",fontsize=16,color="burlywood",shape="triangle"];4084[label="vx124/Pos vx1240",fontsize=10,color="white",style="solid",shape="box"];1991 -> 4084[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4084 -> 2427[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 4085[label="vx124/Neg vx1240",fontsize=10,color="white",style="solid",shape="box"];1991 -> 4085[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4085 -> 2428[label="",style="solid", color="burlywood", weight=3]; 162.51/105.76 1994 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1994[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];1994 -> 2429[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1994 -> 2430[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 1995 -> 2424[label="",style="dashed", color="red", weight=0]; 162.51/105.76 1995[label="reduce2D (Neg (primMulNat vx7300 vx7200)) (Pos vx98)",fontsize=16,color="magenta"];1995 -> 2426[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3021 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 3021[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3021 -> 3413[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3021 -> 3414[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3022 -> 3405[label="",style="dashed", color="red", weight=0]; 162.51/105.76 3022[label="reduce2D (Pos (primMulNat vx7300 vx7200)) (Pos vx98)",fontsize=16,color="magenta"];3022 -> 3407[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3474[label="gcd2 (primEqInt (srMyInt vx730 vx720) (fromIntMyInt (Pos Zero))) (srMyInt vx730 vx720) (Pos vx98)",fontsize=16,color="black",shape="box"];3474 -> 3494[label="",style="solid", color="black", weight=3]; 162.51/105.76 3475 -> 2476[label="",style="dashed", color="red", weight=0]; 162.51/105.76 3475[label="primDivNatS vx97 (Succ vx15000)",fontsize=16,color="magenta"];3475 -> 3495[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3475 -> 3496[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 2462[label="error",fontsize=16,color="black",shape="triangle"];2462 -> 2477[label="",style="solid", color="black", weight=3]; 162.51/105.76 3476 -> 2476[label="",style="dashed", color="red", weight=0]; 162.51/105.76 3476[label="primDivNatS vx97 (Succ vx15000)",fontsize=16,color="magenta"];3476 -> 3497[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3476 -> 3498[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3551[label="vx124000",fontsize=16,color="green",shape="box"];3552[label="vx124000",fontsize=16,color="green",shape="box"];3553[label="vx12300",fontsize=16,color="green",shape="box"];3554[label="vx12300",fontsize=16,color="green",shape="box"];2561[label="Succ (primDivNatS (primMinusNatS (Succ vx12300) Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];2561 -> 2589[label="",style="dashed", color="green", weight=3]; 162.51/105.76 2562[label="Zero",fontsize=16,color="green",shape="box"];2563[label="Succ (primDivNatS (primMinusNatS Zero Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];2563 -> 2590[label="",style="dashed", color="green", weight=3]; 162.51/105.76 1349[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) (primEqInt (Neg (Succ vx1020)) (Pos Zero))",fontsize=16,color="black",shape="box"];1349 -> 1359[label="",style="solid", color="black", weight=3]; 162.51/105.76 1350[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];1350 -> 1360[label="",style="solid", color="black", weight=3]; 162.51/105.76 3403[label="vx7300",fontsize=16,color="green",shape="box"];3404[label="vx7200",fontsize=16,color="green",shape="box"];3406 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 3406[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3406 -> 3415[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3406 -> 3416[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 3405[label="reduce2D (Pos vx151) (Pos vx98)",fontsize=16,color="black",shape="triangle"];3405 -> 3417[label="",style="solid", color="black", weight=3]; 162.51/105.76 2422[label="vx7300",fontsize=16,color="green",shape="box"];2423[label="vx7200",fontsize=16,color="green",shape="box"];2425 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.76 2425[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2425 -> 2431[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 2425 -> 2432[label="",style="dashed", color="magenta", weight=3]; 162.51/105.76 2424[label="reduce2D (Neg vx125) (Pos vx98)",fontsize=16,color="black",shape="triangle"];2424 -> 2433[label="",style="solid", color="black", weight=3]; 162.51/105.76 2427[label="primQuotInt (Neg vx123) (Pos vx1240)",fontsize=16,color="burlywood",shape="box"];4086[label="vx1240/Succ vx12400",fontsize=10,color="white",style="solid",shape="box"];2427 -> 4086[label="",style="solid", color="burlywood", weight=9]; 162.51/105.76 4086 -> 2442[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4087[label="vx1240/Zero",fontsize=10,color="white",style="solid",shape="box"];2427 -> 4087[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4087 -> 2443[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 2428[label="primQuotInt (Neg vx123) (Neg vx1240)",fontsize=16,color="burlywood",shape="box"];4088[label="vx1240/Succ vx12400",fontsize=10,color="white",style="solid",shape="box"];2428 -> 4088[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4088 -> 2444[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4089[label="vx1240/Zero",fontsize=10,color="white",style="solid",shape="box"];2428 -> 4089[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4089 -> 2445[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 2429[label="vx7300",fontsize=16,color="green",shape="box"];2430[label="vx7200",fontsize=16,color="green",shape="box"];2426 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2426[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2426 -> 2434[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2426 -> 2435[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3413[label="vx7300",fontsize=16,color="green",shape="box"];3414[label="vx7200",fontsize=16,color="green",shape="box"];3407 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3407[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3407 -> 3418[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3407 -> 3419[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3494[label="gcd2 (primEqInt (primMulInt vx730 vx720) (fromIntMyInt (Pos Zero))) (primMulInt vx730 vx720) (Pos vx98)",fontsize=16,color="burlywood",shape="box"];4090[label="vx730/Pos vx7300",fontsize=10,color="white",style="solid",shape="box"];3494 -> 4090[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4090 -> 3510[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4091[label="vx730/Neg vx7300",fontsize=10,color="white",style="solid",shape="box"];3494 -> 4091[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4091 -> 3511[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3495[label="vx15000",fontsize=16,color="green",shape="box"];3496[label="vx97",fontsize=16,color="green",shape="box"];2477[label="stop MyTrue",fontsize=16,color="black",shape="box"];2477 -> 2490[label="",style="solid", color="black", weight=3]; 162.51/105.77 3497[label="vx15000",fontsize=16,color="green",shape="box"];3498[label="vx97",fontsize=16,color="green",shape="box"];2589 -> 2476[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2589[label="primDivNatS (primMinusNatS (Succ vx12300) Zero) (Succ Zero)",fontsize=16,color="magenta"];2589 -> 2610[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2589 -> 2611[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2590 -> 2476[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2590[label="primDivNatS (primMinusNatS Zero Zero) (Succ Zero)",fontsize=16,color="magenta"];2590 -> 2612[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2590 -> 2613[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 1359[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) MyFalse",fontsize=16,color="black",shape="box"];1359 -> 1364[label="",style="solid", color="black", weight=3]; 162.51/105.77 1360[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) MyTrue",fontsize=16,color="black",shape="box"];1360 -> 1365[label="",style="solid", color="black", weight=3]; 162.51/105.77 3415[label="vx7300",fontsize=16,color="green",shape="box"];3416[label="vx7200",fontsize=16,color="green",shape="box"];3417[label="gcd (Pos vx151) (Pos vx98)",fontsize=16,color="black",shape="box"];3417 -> 3430[label="",style="solid", color="black", weight=3]; 162.51/105.77 2431[label="vx7300",fontsize=16,color="green",shape="box"];2432[label="vx7200",fontsize=16,color="green",shape="box"];2433[label="gcd (Neg vx125) (Pos vx98)",fontsize=16,color="black",shape="box"];2433 -> 2446[label="",style="solid", color="black", weight=3]; 162.51/105.77 2442[label="primQuotInt (Neg vx123) (Pos (Succ vx12400))",fontsize=16,color="black",shape="box"];2442 -> 2461[label="",style="solid", color="black", weight=3]; 162.51/105.77 2443[label="primQuotInt (Neg vx123) (Pos Zero)",fontsize=16,color="black",shape="box"];2443 -> 2462[label="",style="solid", color="black", weight=3]; 162.51/105.77 2444[label="primQuotInt (Neg vx123) (Neg (Succ vx12400))",fontsize=16,color="black",shape="box"];2444 -> 2463[label="",style="solid", color="black", weight=3]; 162.51/105.77 2445[label="primQuotInt (Neg vx123) (Neg Zero)",fontsize=16,color="black",shape="box"];2445 -> 2464[label="",style="solid", color="black", weight=3]; 162.51/105.77 2434[label="vx7300",fontsize=16,color="green",shape="box"];2435[label="vx7200",fontsize=16,color="green",shape="box"];3418[label="vx7300",fontsize=16,color="green",shape="box"];3419[label="vx7200",fontsize=16,color="green",shape="box"];3510[label="gcd2 (primEqInt (primMulInt (Pos vx7300) vx720) (fromIntMyInt (Pos Zero))) (primMulInt (Pos vx7300) vx720) (Pos vx98)",fontsize=16,color="burlywood",shape="box"];4092[label="vx720/Pos vx7200",fontsize=10,color="white",style="solid",shape="box"];3510 -> 4092[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4092 -> 3520[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4093[label="vx720/Neg vx7200",fontsize=10,color="white",style="solid",shape="box"];3510 -> 4093[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4093 -> 3521[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3511[label="gcd2 (primEqInt (primMulInt (Neg vx7300) vx720) (fromIntMyInt (Pos Zero))) (primMulInt (Neg vx7300) vx720) (Pos vx98)",fontsize=16,color="burlywood",shape="box"];4094[label="vx720/Pos vx7200",fontsize=10,color="white",style="solid",shape="box"];3511 -> 4094[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4094 -> 3522[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4095[label="vx720/Neg vx7200",fontsize=10,color="white",style="solid",shape="box"];3511 -> 4095[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4095 -> 3523[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 2490[label="error []",fontsize=16,color="red",shape="box"];2610[label="Zero",fontsize=16,color="green",shape="box"];2611[label="primMinusNatS (Succ vx12300) Zero",fontsize=16,color="black",shape="triangle"];2611 -> 2631[label="",style="solid", color="black", weight=3]; 162.51/105.77 2612[label="Zero",fontsize=16,color="green",shape="box"];2613[label="primMinusNatS Zero Zero",fontsize=16,color="black",shape="triangle"];2613 -> 2632[label="",style="solid", color="black", weight=3]; 162.51/105.77 1364[label="reduce2Reduce0 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) otherwise",fontsize=16,color="black",shape="box"];1364 -> 1369[label="",style="solid", color="black", weight=3]; 162.51/105.77 1365 -> 46[label="",style="dashed", color="red", weight=0]; 162.51/105.77 1365[label="error",fontsize=16,color="magenta"];3430[label="gcd3 (Pos vx151) (Pos vx98)",fontsize=16,color="black",shape="box"];3430 -> 3477[label="",style="solid", color="black", weight=3]; 162.51/105.77 2446[label="gcd3 (Neg vx125) (Pos vx98)",fontsize=16,color="black",shape="box"];2446 -> 2465[label="",style="solid", color="black", weight=3]; 162.51/105.77 2461[label="Neg (primDivNatS vx123 (Succ vx12400))",fontsize=16,color="green",shape="box"];2461 -> 2476[label="",style="dashed", color="green", weight=3]; 162.51/105.77 2463[label="Pos (primDivNatS vx123 (Succ vx12400))",fontsize=16,color="green",shape="box"];2463 -> 2478[label="",style="dashed", color="green", weight=3]; 162.51/105.77 2464 -> 2462[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2464[label="error",fontsize=16,color="magenta"];3520[label="gcd2 (primEqInt (primMulInt (Pos vx7300) (Pos vx7200)) (fromIntMyInt (Pos Zero))) (primMulInt (Pos vx7300) (Pos vx7200)) (Pos vx98)",fontsize=16,color="black",shape="box"];3520 -> 3534[label="",style="solid", color="black", weight=3]; 162.51/105.77 3521[label="gcd2 (primEqInt (primMulInt (Pos vx7300) (Neg vx7200)) (fromIntMyInt (Pos Zero))) (primMulInt (Pos vx7300) (Neg vx7200)) (Pos vx98)",fontsize=16,color="black",shape="box"];3521 -> 3535[label="",style="solid", color="black", weight=3]; 162.51/105.77 3522[label="gcd2 (primEqInt (primMulInt (Neg vx7300) (Pos vx7200)) (fromIntMyInt (Pos Zero))) (primMulInt (Neg vx7300) (Pos vx7200)) (Pos vx98)",fontsize=16,color="black",shape="box"];3522 -> 3536[label="",style="solid", color="black", weight=3]; 162.51/105.77 3523[label="gcd2 (primEqInt (primMulInt (Neg vx7300) (Neg vx7200)) (fromIntMyInt (Pos Zero))) (primMulInt (Neg vx7300) (Neg vx7200)) (Pos vx98)",fontsize=16,color="black",shape="box"];3523 -> 3537[label="",style="solid", color="black", weight=3]; 162.51/105.77 2631[label="Succ vx12300",fontsize=16,color="green",shape="box"];2632[label="Zero",fontsize=16,color="green",shape="box"];1369[label="reduce2Reduce0 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) MyTrue",fontsize=16,color="black",shape="box"];1369 -> 1372[label="",style="solid", color="black", weight=3]; 162.51/105.77 3477[label="gcd2 (esEsMyInt (Pos vx151) (fromIntMyInt (Pos Zero))) (Pos vx151) (Pos vx98)",fontsize=16,color="black",shape="box"];3477 -> 3499[label="",style="solid", color="black", weight=3]; 162.51/105.77 2465[label="gcd2 (esEsMyInt (Neg vx125) (fromIntMyInt (Pos Zero))) (Neg vx125) (Pos vx98)",fontsize=16,color="black",shape="box"];2465 -> 2479[label="",style="solid", color="black", weight=3]; 162.51/105.77 2478 -> 2476[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2478[label="primDivNatS vx123 (Succ vx12400)",fontsize=16,color="magenta"];2478 -> 2491[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3534 -> 3499[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3534[label="gcd2 (primEqInt (Pos (primMulNat vx7300 vx7200)) (fromIntMyInt (Pos Zero))) (Pos (primMulNat vx7300 vx7200)) (Pos vx98)",fontsize=16,color="magenta"];3534 -> 3593[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3535 -> 2479[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3535[label="gcd2 (primEqInt (Neg (primMulNat vx7300 vx7200)) (fromIntMyInt (Pos Zero))) (Neg (primMulNat vx7300 vx7200)) (Pos vx98)",fontsize=16,color="magenta"];3535 -> 3594[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3536 -> 2479[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3536[label="gcd2 (primEqInt (Neg (primMulNat vx7300 vx7200)) (fromIntMyInt (Pos Zero))) (Neg (primMulNat vx7300 vx7200)) (Pos vx98)",fontsize=16,color="magenta"];3536 -> 3595[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3537 -> 3499[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3537[label="gcd2 (primEqInt (Pos (primMulNat vx7300 vx7200)) (fromIntMyInt (Pos Zero))) (Pos (primMulNat vx7300 vx7200)) (Pos vx98)",fontsize=16,color="magenta"];3537 -> 3596[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 1372[label="CnPc (quotMyInt (srMyInt vx730 vx720) (reduce2D (srMyInt vx730 vx720) (Neg vx101))) (quotMyInt (Neg vx100) (reduce2D (srMyInt vx730 vx720) (Neg vx101)))",fontsize=16,color="green",shape="box"];1372 -> 1375[label="",style="dashed", color="green", weight=3]; 162.51/105.77 1372 -> 1376[label="",style="dashed", color="green", weight=3]; 162.51/105.77 3499[label="gcd2 (primEqInt (Pos vx151) (fromIntMyInt (Pos Zero))) (Pos vx151) (Pos vx98)",fontsize=16,color="burlywood",shape="triangle"];4096[label="vx151/Succ vx1510",fontsize=10,color="white",style="solid",shape="box"];3499 -> 4096[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4096 -> 3512[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4097[label="vx151/Zero",fontsize=10,color="white",style="solid",shape="box"];3499 -> 4097[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4097 -> 3513[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 2479[label="gcd2 (primEqInt (Neg vx125) (fromIntMyInt (Pos Zero))) (Neg vx125) (Pos vx98)",fontsize=16,color="burlywood",shape="triangle"];4098[label="vx125/Succ vx1250",fontsize=10,color="white",style="solid",shape="box"];2479 -> 4098[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4098 -> 2492[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4099[label="vx125/Zero",fontsize=10,color="white",style="solid",shape="box"];2479 -> 4099[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4099 -> 2493[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 2491[label="vx12400",fontsize=16,color="green",shape="box"];3593 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3593[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3593 -> 3611[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3593 -> 3612[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3594 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3594[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3594 -> 3613[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3594 -> 3614[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3595 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3595[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3595 -> 3615[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3595 -> 3616[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3596 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3596[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3596 -> 3617[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3596 -> 3618[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 1375[label="quotMyInt (srMyInt vx730 vx720) (reduce2D (srMyInt vx730 vx720) (Neg vx101))",fontsize=16,color="black",shape="box"];1375 -> 1379[label="",style="solid", color="black", weight=3]; 162.51/105.77 1376[label="quotMyInt (Neg vx100) (reduce2D (srMyInt vx730 vx720) (Neg vx101))",fontsize=16,color="black",shape="box"];1376 -> 1380[label="",style="solid", color="black", weight=3]; 162.51/105.77 3512[label="gcd2 (primEqInt (Pos (Succ vx1510)) (fromIntMyInt (Pos Zero))) (Pos (Succ vx1510)) (Pos vx98)",fontsize=16,color="black",shape="box"];3512 -> 3524[label="",style="solid", color="black", weight=3]; 162.51/105.77 3513[label="gcd2 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) (Pos Zero) (Pos vx98)",fontsize=16,color="black",shape="box"];3513 -> 3525[label="",style="solid", color="black", weight=3]; 162.51/105.77 2492[label="gcd2 (primEqInt (Neg (Succ vx1250)) (fromIntMyInt (Pos Zero))) (Neg (Succ vx1250)) (Pos vx98)",fontsize=16,color="black",shape="box"];2492 -> 2504[label="",style="solid", color="black", weight=3]; 162.51/105.77 2493[label="gcd2 (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero))) (Neg Zero) (Pos vx98)",fontsize=16,color="black",shape="box"];2493 -> 2505[label="",style="solid", color="black", weight=3]; 162.51/105.77 3611[label="vx7300",fontsize=16,color="green",shape="box"];3612[label="vx7200",fontsize=16,color="green",shape="box"];3613[label="vx7300",fontsize=16,color="green",shape="box"];3614[label="vx7200",fontsize=16,color="green",shape="box"];3615[label="vx7300",fontsize=16,color="green",shape="box"];3616[label="vx7200",fontsize=16,color="green",shape="box"];3617[label="vx7300",fontsize=16,color="green",shape="box"];3618[label="vx7200",fontsize=16,color="green",shape="box"];1379[label="primQuotInt (srMyInt vx730 vx720) (reduce2D (srMyInt vx730 vx720) (Neg vx101))",fontsize=16,color="black",shape="box"];1379 -> 1384[label="",style="solid", color="black", weight=3]; 162.51/105.77 1380 -> 1991[label="",style="dashed", color="red", weight=0]; 162.51/105.77 1380[label="primQuotInt (Neg vx100) (reduce2D (srMyInt vx730 vx720) (Neg vx101))",fontsize=16,color="magenta"];1380 -> 2010[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 1380 -> 2011[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3524[label="gcd2 (primEqInt (Pos (Succ vx1510)) (Pos Zero)) (Pos (Succ vx1510)) (Pos vx98)",fontsize=16,color="black",shape="box"];3524 -> 3538[label="",style="solid", color="black", weight=3]; 162.51/105.77 3525[label="gcd2 (primEqInt (Pos Zero) (Pos Zero)) (Pos Zero) (Pos vx98)",fontsize=16,color="black",shape="box"];3525 -> 3539[label="",style="solid", color="black", weight=3]; 162.51/105.77 2504[label="gcd2 (primEqInt (Neg (Succ vx1250)) (Pos Zero)) (Neg (Succ vx1250)) (Pos vx98)",fontsize=16,color="black",shape="box"];2504 -> 2519[label="",style="solid", color="black", weight=3]; 162.51/105.77 2505[label="gcd2 (primEqInt (Neg Zero) (Pos Zero)) (Neg Zero) (Pos vx98)",fontsize=16,color="black",shape="box"];2505 -> 2520[label="",style="solid", color="black", weight=3]; 162.51/105.77 1384[label="primQuotInt (primMulInt vx730 vx720) (reduce2D (primMulInt vx730 vx720) (Neg vx101))",fontsize=16,color="burlywood",shape="box"];4100[label="vx730/Pos vx7300",fontsize=10,color="white",style="solid",shape="box"];1384 -> 4100[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4100 -> 1391[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4101[label="vx730/Neg vx7300",fontsize=10,color="white",style="solid",shape="box"];1384 -> 4101[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4101 -> 1392[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 2010[label="vx100",fontsize=16,color="green",shape="box"];2011[label="reduce2D (srMyInt vx730 vx720) (Neg vx101)",fontsize=16,color="black",shape="box"];2011 -> 2436[label="",style="solid", color="black", weight=3]; 162.51/105.77 3538[label="gcd2 MyFalse (Pos (Succ vx1510)) (Pos vx98)",fontsize=16,color="black",shape="box"];3538 -> 3597[label="",style="solid", color="black", weight=3]; 162.51/105.77 3539[label="gcd2 MyTrue (Pos Zero) (Pos vx98)",fontsize=16,color="black",shape="box"];3539 -> 3598[label="",style="solid", color="black", weight=3]; 162.51/105.77 2519[label="gcd2 MyFalse (Neg (Succ vx1250)) (Pos vx98)",fontsize=16,color="black",shape="box"];2519 -> 2536[label="",style="solid", color="black", weight=3]; 162.51/105.77 2520[label="gcd2 MyTrue (Neg Zero) (Pos vx98)",fontsize=16,color="black",shape="box"];2520 -> 2537[label="",style="solid", color="black", weight=3]; 162.51/105.77 1391[label="primQuotInt (primMulInt (Pos vx7300) vx720) (reduce2D (primMulInt (Pos vx7300) vx720) (Neg vx101))",fontsize=16,color="burlywood",shape="box"];4102[label="vx720/Pos vx7200",fontsize=10,color="white",style="solid",shape="box"];1391 -> 4102[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4102 -> 1399[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4103[label="vx720/Neg vx7200",fontsize=10,color="white",style="solid",shape="box"];1391 -> 4103[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4103 -> 1400[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 1392[label="primQuotInt (primMulInt (Neg vx7300) vx720) (reduce2D (primMulInt (Neg vx7300) vx720) (Neg vx101))",fontsize=16,color="burlywood",shape="box"];4104[label="vx720/Pos vx7200",fontsize=10,color="white",style="solid",shape="box"];1392 -> 4104[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4104 -> 1401[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4105[label="vx720/Neg vx7200",fontsize=10,color="white",style="solid",shape="box"];1392 -> 4105[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4105 -> 1402[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 2436[label="gcd (srMyInt vx730 vx720) (Neg vx101)",fontsize=16,color="black",shape="box"];2436 -> 2447[label="",style="solid", color="black", weight=3]; 162.51/105.77 3597[label="gcd0 (Pos (Succ vx1510)) (Pos vx98)",fontsize=16,color="black",shape="box"];3597 -> 3619[label="",style="solid", color="black", weight=3]; 162.51/105.77 3598[label="gcd1 (esEsMyInt (Pos vx98) (fromIntMyInt (Pos Zero))) (Pos Zero) (Pos vx98)",fontsize=16,color="black",shape="box"];3598 -> 3620[label="",style="solid", color="black", weight=3]; 162.51/105.77 2536[label="gcd0 (Neg (Succ vx1250)) (Pos vx98)",fontsize=16,color="black",shape="box"];2536 -> 2552[label="",style="solid", color="black", weight=3]; 162.51/105.77 2537[label="gcd1 (esEsMyInt (Pos vx98) (fromIntMyInt (Pos Zero))) (Neg Zero) (Pos vx98)",fontsize=16,color="black",shape="box"];2537 -> 2553[label="",style="solid", color="black", weight=3]; 162.51/105.77 1399[label="primQuotInt (primMulInt (Pos vx7300) (Pos vx7200)) (reduce2D (primMulInt (Pos vx7300) (Pos vx7200)) (Neg vx101))",fontsize=16,color="black",shape="box"];1399 -> 1433[label="",style="solid", color="black", weight=3]; 162.51/105.77 1400[label="primQuotInt (primMulInt (Pos vx7300) (Neg vx7200)) (reduce2D (primMulInt (Pos vx7300) (Neg vx7200)) (Neg vx101))",fontsize=16,color="black",shape="box"];1400 -> 1434[label="",style="solid", color="black", weight=3]; 162.51/105.77 1401[label="primQuotInt (primMulInt (Neg vx7300) (Pos vx7200)) (reduce2D (primMulInt (Neg vx7300) (Pos vx7200)) (Neg vx101))",fontsize=16,color="black",shape="box"];1401 -> 1435[label="",style="solid", color="black", weight=3]; 162.51/105.77 1402[label="primQuotInt (primMulInt (Neg vx7300) (Neg vx7200)) (reduce2D (primMulInt (Neg vx7300) (Neg vx7200)) (Neg vx101))",fontsize=16,color="black",shape="box"];1402 -> 1436[label="",style="solid", color="black", weight=3]; 162.51/105.77 2447[label="gcd3 (srMyInt vx730 vx720) (Neg vx101)",fontsize=16,color="black",shape="box"];2447 -> 2466[label="",style="solid", color="black", weight=3]; 162.51/105.77 3619 -> 3633[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3619[label="gcd0Gcd' (absMyInt (Pos (Succ vx1510))) (absMyInt (Pos vx98))",fontsize=16,color="magenta"];3619 -> 3634[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3619 -> 3635[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3620[label="gcd1 (primEqInt (Pos vx98) (fromIntMyInt (Pos Zero))) (Pos Zero) (Pos vx98)",fontsize=16,color="burlywood",shape="box"];4106[label="vx98/Succ vx980",fontsize=10,color="white",style="solid",shape="box"];3620 -> 4106[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4106 -> 3652[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4107[label="vx98/Zero",fontsize=10,color="white",style="solid",shape="box"];3620 -> 4107[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4107 -> 3653[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 2552 -> 3633[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2552[label="gcd0Gcd' (absMyInt (Neg (Succ vx1250))) (absMyInt (Pos vx98))",fontsize=16,color="magenta"];2552 -> 3636[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2552 -> 3637[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2553[label="gcd1 (primEqInt (Pos vx98) (fromIntMyInt (Pos Zero))) (Neg Zero) (Pos vx98)",fontsize=16,color="burlywood",shape="box"];4108[label="vx98/Succ vx980",fontsize=10,color="white",style="solid",shape="box"];2553 -> 4108[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4108 -> 2565[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4109[label="vx98/Zero",fontsize=10,color="white",style="solid",shape="box"];2553 -> 4109[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4109 -> 2566[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 1433 -> 3014[label="",style="dashed", color="red", weight=0]; 162.51/105.77 1433[label="primQuotInt (Pos (primMulNat vx7300 vx7200)) (reduce2D (Pos (primMulNat vx7300 vx7200)) (Neg vx101))",fontsize=16,color="magenta"];1433 -> 3059[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 1433 -> 3060[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 1434 -> 1991[label="",style="dashed", color="red", weight=0]; 162.51/105.77 1434[label="primQuotInt (Neg (primMulNat vx7300 vx7200)) (reduce2D (Neg (primMulNat vx7300 vx7200)) (Neg vx101))",fontsize=16,color="magenta"];1434 -> 2032[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 1434 -> 2033[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 1435 -> 1991[label="",style="dashed", color="red", weight=0]; 162.51/105.77 1435[label="primQuotInt (Neg (primMulNat vx7300 vx7200)) (reduce2D (Neg (primMulNat vx7300 vx7200)) (Neg vx101))",fontsize=16,color="magenta"];1435 -> 2034[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 1435 -> 2035[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 1436 -> 3014[label="",style="dashed", color="red", weight=0]; 162.51/105.77 1436[label="primQuotInt (Pos (primMulNat vx7300 vx7200)) (reduce2D (Pos (primMulNat vx7300 vx7200)) (Neg vx101))",fontsize=16,color="magenta"];1436 -> 3061[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 1436 -> 3062[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2466[label="gcd2 (esEsMyInt (srMyInt vx730 vx720) (fromIntMyInt (Pos Zero))) (srMyInt vx730 vx720) (Neg vx101)",fontsize=16,color="black",shape="box"];2466 -> 2480[label="",style="solid", color="black", weight=3]; 162.51/105.77 3634[label="absMyInt (Pos vx98)",fontsize=16,color="black",shape="triangle"];3634 -> 3654[label="",style="solid", color="black", weight=3]; 162.51/105.77 3635 -> 3634[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3635[label="absMyInt (Pos (Succ vx1510))",fontsize=16,color="magenta"];3635 -> 3655[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3633[label="gcd0Gcd' vx171 vx170",fontsize=16,color="black",shape="triangle"];3633 -> 3656[label="",style="solid", color="black", weight=3]; 162.51/105.77 3652[label="gcd1 (primEqInt (Pos (Succ vx980)) (fromIntMyInt (Pos Zero))) (Pos Zero) (Pos (Succ vx980))",fontsize=16,color="black",shape="box"];3652 -> 3666[label="",style="solid", color="black", weight=3]; 162.51/105.77 3653[label="gcd1 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];3653 -> 3667[label="",style="solid", color="black", weight=3]; 162.51/105.77 3636 -> 3634[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3636[label="absMyInt (Pos vx98)",fontsize=16,color="magenta"];3637[label="absMyInt (Neg (Succ vx1250))",fontsize=16,color="black",shape="box"];3637 -> 3657[label="",style="solid", color="black", weight=3]; 162.51/105.77 2565[label="gcd1 (primEqInt (Pos (Succ vx980)) (fromIntMyInt (Pos Zero))) (Neg Zero) (Pos (Succ vx980))",fontsize=16,color="black",shape="box"];2565 -> 2592[label="",style="solid", color="black", weight=3]; 162.51/105.77 2566[label="gcd1 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];2566 -> 2593[label="",style="solid", color="black", weight=3]; 162.51/105.77 3059 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3059[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3059 -> 3420[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3059 -> 3421[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3060 -> 3422[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3060[label="reduce2D (Pos (primMulNat vx7300 vx7200)) (Neg vx101)",fontsize=16,color="magenta"];3060 -> 3423[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2032 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2032[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2032 -> 2437[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2032 -> 2438[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2033 -> 2439[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2033[label="reduce2D (Neg (primMulNat vx7300 vx7200)) (Neg vx101)",fontsize=16,color="magenta"];2033 -> 2440[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2034 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2034[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2034 -> 2448[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2034 -> 2449[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2035 -> 2439[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2035[label="reduce2D (Neg (primMulNat vx7300 vx7200)) (Neg vx101)",fontsize=16,color="magenta"];2035 -> 2441[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3061 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3061[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3061 -> 3431[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3061 -> 3432[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3062 -> 3422[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3062[label="reduce2D (Pos (primMulNat vx7300 vx7200)) (Neg vx101)",fontsize=16,color="magenta"];3062 -> 3424[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2480[label="gcd2 (primEqInt (srMyInt vx730 vx720) (fromIntMyInt (Pos Zero))) (srMyInt vx730 vx720) (Neg vx101)",fontsize=16,color="black",shape="box"];2480 -> 2494[label="",style="solid", color="black", weight=3]; 162.51/105.77 3654[label="absReal (Pos vx98)",fontsize=16,color="black",shape="box"];3654 -> 3668[label="",style="solid", color="black", weight=3]; 162.51/105.77 3655[label="Succ vx1510",fontsize=16,color="green",shape="box"];3656[label="gcd0Gcd'2 vx171 vx170",fontsize=16,color="black",shape="box"];3656 -> 3669[label="",style="solid", color="black", weight=3]; 162.51/105.77 3666[label="gcd1 (primEqInt (Pos (Succ vx980)) (Pos Zero)) (Pos Zero) (Pos (Succ vx980))",fontsize=16,color="black",shape="box"];3666 -> 3675[label="",style="solid", color="black", weight=3]; 162.51/105.77 3667[label="gcd1 (primEqInt (Pos Zero) (Pos Zero)) (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];3667 -> 3676[label="",style="solid", color="black", weight=3]; 162.51/105.77 3657[label="absReal (Neg (Succ vx1250))",fontsize=16,color="black",shape="box"];3657 -> 3670[label="",style="solid", color="black", weight=3]; 162.51/105.77 2592[label="gcd1 (primEqInt (Pos (Succ vx980)) (Pos Zero)) (Neg Zero) (Pos (Succ vx980))",fontsize=16,color="black",shape="box"];2592 -> 2615[label="",style="solid", color="black", weight=3]; 162.51/105.77 2593[label="gcd1 (primEqInt (Pos Zero) (Pos Zero)) (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];2593 -> 2616[label="",style="solid", color="black", weight=3]; 162.51/105.77 3420[label="vx7300",fontsize=16,color="green",shape="box"];3421[label="vx7200",fontsize=16,color="green",shape="box"];3423 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3423[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3423 -> 3433[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3423 -> 3434[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3422[label="reduce2D (Pos vx152) (Neg vx101)",fontsize=16,color="black",shape="triangle"];3422 -> 3435[label="",style="solid", color="black", weight=3]; 162.51/105.77 2437[label="vx7300",fontsize=16,color="green",shape="box"];2438[label="vx7200",fontsize=16,color="green",shape="box"];2440 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2440[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2440 -> 2450[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2440 -> 2451[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2439[label="reduce2D (Neg vx126) (Neg vx101)",fontsize=16,color="black",shape="triangle"];2439 -> 2452[label="",style="solid", color="black", weight=3]; 162.51/105.77 2448[label="vx7300",fontsize=16,color="green",shape="box"];2449[label="vx7200",fontsize=16,color="green",shape="box"];2441 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2441[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2441 -> 2453[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2441 -> 2454[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3431[label="vx7300",fontsize=16,color="green",shape="box"];3432[label="vx7200",fontsize=16,color="green",shape="box"];3424 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3424[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3424 -> 3436[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3424 -> 3437[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2494[label="gcd2 (primEqInt (primMulInt vx730 vx720) (fromIntMyInt (Pos Zero))) (primMulInt vx730 vx720) (Neg vx101)",fontsize=16,color="burlywood",shape="box"];4110[label="vx730/Pos vx7300",fontsize=10,color="white",style="solid",shape="box"];2494 -> 4110[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4110 -> 2506[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4111[label="vx730/Neg vx7300",fontsize=10,color="white",style="solid",shape="box"];2494 -> 4111[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4111 -> 2507[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3668[label="absReal2 (Pos vx98)",fontsize=16,color="black",shape="box"];3668 -> 3677[label="",style="solid", color="black", weight=3]; 162.51/105.77 3669[label="gcd0Gcd'1 (esEsMyInt vx170 (fromIntMyInt (Pos Zero))) vx171 vx170",fontsize=16,color="black",shape="box"];3669 -> 3678[label="",style="solid", color="black", weight=3]; 162.51/105.77 3675[label="gcd1 MyFalse (Pos Zero) (Pos (Succ vx980))",fontsize=16,color="black",shape="box"];3675 -> 3683[label="",style="solid", color="black", weight=3]; 162.51/105.77 3676[label="gcd1 MyTrue (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];3676 -> 3684[label="",style="solid", color="black", weight=3]; 162.51/105.77 3670[label="absReal2 (Neg (Succ vx1250))",fontsize=16,color="black",shape="box"];3670 -> 3679[label="",style="solid", color="black", weight=3]; 162.51/105.77 2615[label="gcd1 MyFalse (Neg Zero) (Pos (Succ vx980))",fontsize=16,color="black",shape="box"];2615 -> 2634[label="",style="solid", color="black", weight=3]; 162.51/105.77 2616[label="gcd1 MyTrue (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];2616 -> 2635[label="",style="solid", color="black", weight=3]; 162.51/105.77 3433[label="vx7300",fontsize=16,color="green",shape="box"];3434[label="vx7200",fontsize=16,color="green",shape="box"];3435[label="gcd (Pos vx152) (Neg vx101)",fontsize=16,color="black",shape="box"];3435 -> 3478[label="",style="solid", color="black", weight=3]; 162.51/105.77 2450[label="vx7300",fontsize=16,color="green",shape="box"];2451[label="vx7200",fontsize=16,color="green",shape="box"];2452[label="gcd (Neg vx126) (Neg vx101)",fontsize=16,color="black",shape="box"];2452 -> 2467[label="",style="solid", color="black", weight=3]; 162.51/105.77 2453[label="vx7300",fontsize=16,color="green",shape="box"];2454[label="vx7200",fontsize=16,color="green",shape="box"];3436[label="vx7300",fontsize=16,color="green",shape="box"];3437[label="vx7200",fontsize=16,color="green",shape="box"];2506[label="gcd2 (primEqInt (primMulInt (Pos vx7300) vx720) (fromIntMyInt (Pos Zero))) (primMulInt (Pos vx7300) vx720) (Neg vx101)",fontsize=16,color="burlywood",shape="box"];4112[label="vx720/Pos vx7200",fontsize=10,color="white",style="solid",shape="box"];2506 -> 4112[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4112 -> 2521[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4113[label="vx720/Neg vx7200",fontsize=10,color="white",style="solid",shape="box"];2506 -> 4113[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4113 -> 2522[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 2507[label="gcd2 (primEqInt (primMulInt (Neg vx7300) vx720) (fromIntMyInt (Pos Zero))) (primMulInt (Neg vx7300) vx720) (Neg vx101)",fontsize=16,color="burlywood",shape="box"];4114[label="vx720/Pos vx7200",fontsize=10,color="white",style="solid",shape="box"];2507 -> 4114[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4114 -> 2523[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4115[label="vx720/Neg vx7200",fontsize=10,color="white",style="solid",shape="box"];2507 -> 4115[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4115 -> 2524[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3677[label="absReal1 (Pos vx98) (gtEsMyInt (Pos vx98) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];3677 -> 3685[label="",style="solid", color="black", weight=3]; 162.51/105.77 3678[label="gcd0Gcd'1 (primEqInt vx170 (fromIntMyInt (Pos Zero))) vx171 vx170",fontsize=16,color="burlywood",shape="box"];4116[label="vx170/Pos vx1700",fontsize=10,color="white",style="solid",shape="box"];3678 -> 4116[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4116 -> 3686[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4117[label="vx170/Neg vx1700",fontsize=10,color="white",style="solid",shape="box"];3678 -> 4117[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4117 -> 3687[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3683[label="gcd0 (Pos Zero) (Pos (Succ vx980))",fontsize=16,color="black",shape="box"];3683 -> 3693[label="",style="solid", color="black", weight=3]; 162.51/105.77 3684 -> 2462[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3684[label="error",fontsize=16,color="magenta"];3679[label="absReal1 (Neg (Succ vx1250)) (gtEsMyInt (Neg (Succ vx1250)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];3679 -> 3688[label="",style="solid", color="black", weight=3]; 162.51/105.77 2634[label="gcd0 (Neg Zero) (Pos (Succ vx980))",fontsize=16,color="black",shape="box"];2634 -> 2651[label="",style="solid", color="black", weight=3]; 162.51/105.77 2635 -> 2462[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2635[label="error",fontsize=16,color="magenta"];3478[label="gcd3 (Pos vx152) (Neg vx101)",fontsize=16,color="black",shape="box"];3478 -> 3500[label="",style="solid", color="black", weight=3]; 162.51/105.77 2467[label="gcd3 (Neg vx126) (Neg vx101)",fontsize=16,color="black",shape="box"];2467 -> 2481[label="",style="solid", color="black", weight=3]; 162.51/105.77 2521[label="gcd2 (primEqInt (primMulInt (Pos vx7300) (Pos vx7200)) (fromIntMyInt (Pos Zero))) (primMulInt (Pos vx7300) (Pos vx7200)) (Neg vx101)",fontsize=16,color="black",shape="box"];2521 -> 2538[label="",style="solid", color="black", weight=3]; 162.51/105.77 2522[label="gcd2 (primEqInt (primMulInt (Pos vx7300) (Neg vx7200)) (fromIntMyInt (Pos Zero))) (primMulInt (Pos vx7300) (Neg vx7200)) (Neg vx101)",fontsize=16,color="black",shape="box"];2522 -> 2539[label="",style="solid", color="black", weight=3]; 162.51/105.77 2523[label="gcd2 (primEqInt (primMulInt (Neg vx7300) (Pos vx7200)) (fromIntMyInt (Pos Zero))) (primMulInt (Neg vx7300) (Pos vx7200)) (Neg vx101)",fontsize=16,color="black",shape="box"];2523 -> 2540[label="",style="solid", color="black", weight=3]; 162.51/105.77 2524[label="gcd2 (primEqInt (primMulInt (Neg vx7300) (Neg vx7200)) (fromIntMyInt (Pos Zero))) (primMulInt (Neg vx7300) (Neg vx7200)) (Neg vx101)",fontsize=16,color="black",shape="box"];2524 -> 2541[label="",style="solid", color="black", weight=3]; 162.51/105.77 3685[label="absReal1 (Pos vx98) (fsEsOrdering (compareMyInt (Pos vx98) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];3685 -> 3694[label="",style="solid", color="black", weight=3]; 162.51/105.77 3686[label="gcd0Gcd'1 (primEqInt (Pos vx1700) (fromIntMyInt (Pos Zero))) vx171 (Pos vx1700)",fontsize=16,color="burlywood",shape="box"];4118[label="vx1700/Succ vx17000",fontsize=10,color="white",style="solid",shape="box"];3686 -> 4118[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4118 -> 3695[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4119[label="vx1700/Zero",fontsize=10,color="white",style="solid",shape="box"];3686 -> 4119[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4119 -> 3696[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3687[label="gcd0Gcd'1 (primEqInt (Neg vx1700) (fromIntMyInt (Pos Zero))) vx171 (Neg vx1700)",fontsize=16,color="burlywood",shape="box"];4120[label="vx1700/Succ vx17000",fontsize=10,color="white",style="solid",shape="box"];3687 -> 4120[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4120 -> 3697[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4121[label="vx1700/Zero",fontsize=10,color="white",style="solid",shape="box"];3687 -> 4121[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4121 -> 3698[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3693 -> 3633[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3693[label="gcd0Gcd' (absMyInt (Pos Zero)) (absMyInt (Pos (Succ vx980)))",fontsize=16,color="magenta"];3693 -> 3706[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3693 -> 3707[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3688[label="absReal1 (Neg (Succ vx1250)) (fsEsOrdering (compareMyInt (Neg (Succ vx1250)) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];3688 -> 3699[label="",style="solid", color="black", weight=3]; 162.51/105.77 2651 -> 3633[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2651[label="gcd0Gcd' (absMyInt (Neg Zero)) (absMyInt (Pos (Succ vx980)))",fontsize=16,color="magenta"];2651 -> 3638[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2651 -> 3639[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3500[label="gcd2 (esEsMyInt (Pos vx152) (fromIntMyInt (Pos Zero))) (Pos vx152) (Neg vx101)",fontsize=16,color="black",shape="box"];3500 -> 3514[label="",style="solid", color="black", weight=3]; 162.51/105.77 2481[label="gcd2 (esEsMyInt (Neg vx126) (fromIntMyInt (Pos Zero))) (Neg vx126) (Neg vx101)",fontsize=16,color="black",shape="box"];2481 -> 2495[label="",style="solid", color="black", weight=3]; 162.51/105.77 2538 -> 2554[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2538[label="gcd2 (primEqInt (Pos (primMulNat vx7300 vx7200)) (fromIntMyInt (Pos Zero))) (Pos (primMulNat vx7300 vx7200)) (Neg vx101)",fontsize=16,color="magenta"];2538 -> 2555[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2538 -> 2556[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2539 -> 2495[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2539[label="gcd2 (primEqInt (Neg (primMulNat vx7300 vx7200)) (fromIntMyInt (Pos Zero))) (Neg (primMulNat vx7300 vx7200)) (Neg vx101)",fontsize=16,color="magenta"];2539 -> 2567[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2540 -> 2495[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2540[label="gcd2 (primEqInt (Neg (primMulNat vx7300 vx7200)) (fromIntMyInt (Pos Zero))) (Neg (primMulNat vx7300 vx7200)) (Neg vx101)",fontsize=16,color="magenta"];2540 -> 2568[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2541 -> 2554[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2541[label="gcd2 (primEqInt (Pos (primMulNat vx7300 vx7200)) (fromIntMyInt (Pos Zero))) (Pos (primMulNat vx7300 vx7200)) (Neg vx101)",fontsize=16,color="magenta"];2541 -> 2557[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2541 -> 2558[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3694[label="absReal1 (Pos vx98) (not (esEsOrdering (compareMyInt (Pos vx98) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3694 -> 3708[label="",style="solid", color="black", weight=3]; 162.51/105.77 3695[label="gcd0Gcd'1 (primEqInt (Pos (Succ vx17000)) (fromIntMyInt (Pos Zero))) vx171 (Pos (Succ vx17000))",fontsize=16,color="black",shape="box"];3695 -> 3709[label="",style="solid", color="black", weight=3]; 162.51/105.77 3696[label="gcd0Gcd'1 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) vx171 (Pos Zero)",fontsize=16,color="black",shape="box"];3696 -> 3710[label="",style="solid", color="black", weight=3]; 162.51/105.77 3697[label="gcd0Gcd'1 (primEqInt (Neg (Succ vx17000)) (fromIntMyInt (Pos Zero))) vx171 (Neg (Succ vx17000))",fontsize=16,color="black",shape="box"];3697 -> 3711[label="",style="solid", color="black", weight=3]; 162.51/105.77 3698[label="gcd0Gcd'1 (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero))) vx171 (Neg Zero)",fontsize=16,color="black",shape="box"];3698 -> 3712[label="",style="solid", color="black", weight=3]; 162.51/105.77 3706 -> 3634[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3706[label="absMyInt (Pos (Succ vx980))",fontsize=16,color="magenta"];3706 -> 3720[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3707 -> 3634[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3707[label="absMyInt (Pos Zero)",fontsize=16,color="magenta"];3707 -> 3721[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3699[label="absReal1 (Neg (Succ vx1250)) (not (esEsOrdering (compareMyInt (Neg (Succ vx1250)) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3699 -> 3713[label="",style="solid", color="black", weight=3]; 162.51/105.77 3638 -> 3634[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3638[label="absMyInt (Pos (Succ vx980))",fontsize=16,color="magenta"];3638 -> 3658[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3639[label="absMyInt (Neg Zero)",fontsize=16,color="black",shape="box"];3639 -> 3659[label="",style="solid", color="black", weight=3]; 162.51/105.77 3514 -> 2554[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3514[label="gcd2 (primEqInt (Pos vx152) (fromIntMyInt (Pos Zero))) (Pos vx152) (Neg vx101)",fontsize=16,color="magenta"];3514 -> 3526[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3514 -> 3527[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2495[label="gcd2 (primEqInt (Neg vx126) (fromIntMyInt (Pos Zero))) (Neg vx126) (Neg vx101)",fontsize=16,color="burlywood",shape="triangle"];4122[label="vx126/Succ vx1260",fontsize=10,color="white",style="solid",shape="box"];2495 -> 4122[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4122 -> 2508[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4123[label="vx126/Zero",fontsize=10,color="white",style="solid",shape="box"];2495 -> 4123[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4123 -> 2509[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 2555 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2555[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2555 -> 2569[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2555 -> 2570[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2556 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2556[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2556 -> 2571[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2556 -> 2572[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2554[label="gcd2 (primEqInt (Pos vx128) (fromIntMyInt (Pos Zero))) (Pos vx127) (Neg vx101)",fontsize=16,color="burlywood",shape="triangle"];4124[label="vx128/Succ vx1280",fontsize=10,color="white",style="solid",shape="box"];2554 -> 4124[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4124 -> 2573[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4125[label="vx128/Zero",fontsize=10,color="white",style="solid",shape="box"];2554 -> 4125[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4125 -> 2574[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 2567 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2567[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2567 -> 2594[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2567 -> 2595[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2568 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2568[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2568 -> 2596[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2568 -> 2597[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2557 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2557[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2557 -> 2575[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2557 -> 2576[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2558 -> 1277[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2558[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2558 -> 2577[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2558 -> 2578[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3708[label="absReal1 (Pos vx98) (not (esEsOrdering (primCmpInt (Pos vx98) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="burlywood",shape="box"];4126[label="vx98/Succ vx980",fontsize=10,color="white",style="solid",shape="box"];3708 -> 4126[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4126 -> 3722[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4127[label="vx98/Zero",fontsize=10,color="white",style="solid",shape="box"];3708 -> 4127[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4127 -> 3723[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3709[label="gcd0Gcd'1 (primEqInt (Pos (Succ vx17000)) (Pos Zero)) vx171 (Pos (Succ vx17000))",fontsize=16,color="black",shape="box"];3709 -> 3724[label="",style="solid", color="black", weight=3]; 162.51/105.77 3710[label="gcd0Gcd'1 (primEqInt (Pos Zero) (Pos Zero)) vx171 (Pos Zero)",fontsize=16,color="black",shape="box"];3710 -> 3725[label="",style="solid", color="black", weight=3]; 162.51/105.77 3711[label="gcd0Gcd'1 (primEqInt (Neg (Succ vx17000)) (Pos Zero)) vx171 (Neg (Succ vx17000))",fontsize=16,color="black",shape="box"];3711 -> 3726[label="",style="solid", color="black", weight=3]; 162.51/105.77 3712[label="gcd0Gcd'1 (primEqInt (Neg Zero) (Pos Zero)) vx171 (Neg Zero)",fontsize=16,color="black",shape="box"];3712 -> 3727[label="",style="solid", color="black", weight=3]; 162.51/105.77 3720[label="Succ vx980",fontsize=16,color="green",shape="box"];3721[label="Zero",fontsize=16,color="green",shape="box"];3713[label="absReal1 (Neg (Succ vx1250)) (not (esEsOrdering (primCmpInt (Neg (Succ vx1250)) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3713 -> 3728[label="",style="solid", color="black", weight=3]; 162.51/105.77 3658[label="Succ vx980",fontsize=16,color="green",shape="box"];3659[label="absReal (Neg Zero)",fontsize=16,color="black",shape="box"];3659 -> 3671[label="",style="solid", color="black", weight=3]; 162.51/105.77 3526[label="vx152",fontsize=16,color="green",shape="box"];3527[label="vx152",fontsize=16,color="green",shape="box"];2508[label="gcd2 (primEqInt (Neg (Succ vx1260)) (fromIntMyInt (Pos Zero))) (Neg (Succ vx1260)) (Neg vx101)",fontsize=16,color="black",shape="box"];2508 -> 2525[label="",style="solid", color="black", weight=3]; 162.51/105.77 2509[label="gcd2 (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero))) (Neg Zero) (Neg vx101)",fontsize=16,color="black",shape="box"];2509 -> 2526[label="",style="solid", color="black", weight=3]; 162.51/105.77 2569[label="vx7300",fontsize=16,color="green",shape="box"];2570[label="vx7200",fontsize=16,color="green",shape="box"];2571[label="vx7300",fontsize=16,color="green",shape="box"];2572[label="vx7200",fontsize=16,color="green",shape="box"];2573[label="gcd2 (primEqInt (Pos (Succ vx1280)) (fromIntMyInt (Pos Zero))) (Pos vx127) (Neg vx101)",fontsize=16,color="black",shape="box"];2573 -> 2598[label="",style="solid", color="black", weight=3]; 162.51/105.77 2574[label="gcd2 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) (Pos vx127) (Neg vx101)",fontsize=16,color="black",shape="box"];2574 -> 2599[label="",style="solid", color="black", weight=3]; 162.51/105.77 2594[label="vx7300",fontsize=16,color="green",shape="box"];2595[label="vx7200",fontsize=16,color="green",shape="box"];2596[label="vx7300",fontsize=16,color="green",shape="box"];2597[label="vx7200",fontsize=16,color="green",shape="box"];2575[label="vx7300",fontsize=16,color="green",shape="box"];2576[label="vx7200",fontsize=16,color="green",shape="box"];2577[label="vx7300",fontsize=16,color="green",shape="box"];2578[label="vx7200",fontsize=16,color="green",shape="box"];3722[label="absReal1 (Pos (Succ vx980)) (not (esEsOrdering (primCmpInt (Pos (Succ vx980)) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3722 -> 3734[label="",style="solid", color="black", weight=3]; 162.51/105.77 3723[label="absReal1 (Pos Zero) (not (esEsOrdering (primCmpInt (Pos Zero) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3723 -> 3735[label="",style="solid", color="black", weight=3]; 162.51/105.77 3724[label="gcd0Gcd'1 MyFalse vx171 (Pos (Succ vx17000))",fontsize=16,color="black",shape="box"];3724 -> 3736[label="",style="solid", color="black", weight=3]; 162.51/105.77 3725[label="gcd0Gcd'1 MyTrue vx171 (Pos Zero)",fontsize=16,color="black",shape="box"];3725 -> 3737[label="",style="solid", color="black", weight=3]; 162.51/105.77 3726[label="gcd0Gcd'1 MyFalse vx171 (Neg (Succ vx17000))",fontsize=16,color="black",shape="box"];3726 -> 3738[label="",style="solid", color="black", weight=3]; 162.51/105.77 3727[label="gcd0Gcd'1 MyTrue vx171 (Neg Zero)",fontsize=16,color="black",shape="box"];3727 -> 3739[label="",style="solid", color="black", weight=3]; 162.51/105.77 3728[label="absReal1 (Neg (Succ vx1250)) (not (esEsOrdering (primCmpInt (Neg (Succ vx1250)) (Pos Zero)) LT))",fontsize=16,color="black",shape="triangle"];3728 -> 3740[label="",style="solid", color="black", weight=3]; 162.51/105.77 3671[label="absReal2 (Neg Zero)",fontsize=16,color="black",shape="box"];3671 -> 3680[label="",style="solid", color="black", weight=3]; 162.51/105.77 2525[label="gcd2 (primEqInt (Neg (Succ vx1260)) (Pos Zero)) (Neg (Succ vx1260)) (Neg vx101)",fontsize=16,color="black",shape="box"];2525 -> 2542[label="",style="solid", color="black", weight=3]; 162.51/105.77 2526[label="gcd2 (primEqInt (Neg Zero) (Pos Zero)) (Neg Zero) (Neg vx101)",fontsize=16,color="black",shape="box"];2526 -> 2543[label="",style="solid", color="black", weight=3]; 162.51/105.77 2598[label="gcd2 (primEqInt (Pos (Succ vx1280)) (Pos Zero)) (Pos vx127) (Neg vx101)",fontsize=16,color="black",shape="box"];2598 -> 2617[label="",style="solid", color="black", weight=3]; 162.51/105.77 2599[label="gcd2 (primEqInt (Pos Zero) (Pos Zero)) (Pos vx127) (Neg vx101)",fontsize=16,color="black",shape="box"];2599 -> 2618[label="",style="solid", color="black", weight=3]; 162.51/105.77 3734[label="absReal1 (Pos (Succ vx980)) (not (esEsOrdering (primCmpInt (Pos (Succ vx980)) (Pos Zero)) LT))",fontsize=16,color="black",shape="box"];3734 -> 3744[label="",style="solid", color="black", weight=3]; 162.51/105.77 3735[label="absReal1 (Pos Zero) (not (esEsOrdering (primCmpInt (Pos Zero) (Pos Zero)) LT))",fontsize=16,color="black",shape="box"];3735 -> 3745[label="",style="solid", color="black", weight=3]; 162.51/105.77 3736[label="gcd0Gcd'0 vx171 (Pos (Succ vx17000))",fontsize=16,color="black",shape="box"];3736 -> 3746[label="",style="solid", color="black", weight=3]; 162.51/105.77 3737[label="vx171",fontsize=16,color="green",shape="box"];3738[label="gcd0Gcd'0 vx171 (Neg (Succ vx17000))",fontsize=16,color="black",shape="box"];3738 -> 3747[label="",style="solid", color="black", weight=3]; 162.51/105.77 3739[label="vx171",fontsize=16,color="green",shape="box"];3740[label="absReal1 (Neg (Succ vx1250)) (not (esEsOrdering LT LT))",fontsize=16,color="black",shape="box"];3740 -> 3748[label="",style="solid", color="black", weight=3]; 162.51/105.77 3680[label="absReal1 (Neg Zero) (gtEsMyInt (Neg Zero) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];3680 -> 3689[label="",style="solid", color="black", weight=3]; 162.51/105.77 2542[label="gcd2 MyFalse (Neg (Succ vx1260)) (Neg vx101)",fontsize=16,color="black",shape="box"];2542 -> 2579[label="",style="solid", color="black", weight=3]; 162.51/105.77 2543[label="gcd2 MyTrue (Neg Zero) (Neg vx101)",fontsize=16,color="black",shape="box"];2543 -> 2580[label="",style="solid", color="black", weight=3]; 162.51/105.77 2617[label="gcd2 MyFalse (Pos vx127) (Neg vx101)",fontsize=16,color="black",shape="box"];2617 -> 2636[label="",style="solid", color="black", weight=3]; 162.51/105.77 2618[label="gcd2 MyTrue (Pos vx127) (Neg vx101)",fontsize=16,color="black",shape="box"];2618 -> 2637[label="",style="solid", color="black", weight=3]; 162.51/105.77 3744[label="absReal1 (Pos (Succ vx980)) (not (esEsOrdering (primCmpNat (Succ vx980) Zero) LT))",fontsize=16,color="black",shape="box"];3744 -> 3751[label="",style="solid", color="black", weight=3]; 162.51/105.77 3745[label="absReal1 (Pos Zero) (not (esEsOrdering EQ LT))",fontsize=16,color="black",shape="box"];3745 -> 3752[label="",style="solid", color="black", weight=3]; 162.51/105.77 3746 -> 3633[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3746[label="gcd0Gcd' (Pos (Succ vx17000)) (remMyInt vx171 (Pos (Succ vx17000)))",fontsize=16,color="magenta"];3746 -> 3753[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3746 -> 3754[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3747 -> 3633[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3747[label="gcd0Gcd' (Neg (Succ vx17000)) (remMyInt vx171 (Neg (Succ vx17000)))",fontsize=16,color="magenta"];3747 -> 3755[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3747 -> 3756[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3748[label="absReal1 (Neg (Succ vx1250)) (not MyTrue)",fontsize=16,color="black",shape="box"];3748 -> 3757[label="",style="solid", color="black", weight=3]; 162.51/105.77 3689[label="absReal1 (Neg Zero) (fsEsOrdering (compareMyInt (Neg Zero) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];3689 -> 3700[label="",style="solid", color="black", weight=3]; 162.51/105.77 2579[label="gcd0 (Neg (Succ vx1260)) (Neg vx101)",fontsize=16,color="black",shape="box"];2579 -> 2600[label="",style="solid", color="black", weight=3]; 162.51/105.77 2580[label="gcd1 (esEsMyInt (Neg vx101) (fromIntMyInt (Pos Zero))) (Neg Zero) (Neg vx101)",fontsize=16,color="black",shape="box"];2580 -> 2601[label="",style="solid", color="black", weight=3]; 162.51/105.77 2636[label="gcd0 (Pos vx127) (Neg vx101)",fontsize=16,color="black",shape="triangle"];2636 -> 2652[label="",style="solid", color="black", weight=3]; 162.51/105.77 2637[label="gcd1 (esEsMyInt (Neg vx101) (fromIntMyInt (Pos Zero))) (Pos vx127) (Neg vx101)",fontsize=16,color="black",shape="box"];2637 -> 2653[label="",style="solid", color="black", weight=3]; 162.51/105.77 3751[label="absReal1 (Pos (Succ vx980)) (not (esEsOrdering GT LT))",fontsize=16,color="black",shape="box"];3751 -> 3759[label="",style="solid", color="black", weight=3]; 162.51/105.77 3752[label="absReal1 (Pos Zero) (not MyFalse)",fontsize=16,color="black",shape="box"];3752 -> 3760[label="",style="solid", color="black", weight=3]; 162.51/105.77 3753[label="remMyInt vx171 (Pos (Succ vx17000))",fontsize=16,color="black",shape="box"];3753 -> 3761[label="",style="solid", color="black", weight=3]; 162.51/105.77 3754[label="Pos (Succ vx17000)",fontsize=16,color="green",shape="box"];3755[label="remMyInt vx171 (Neg (Succ vx17000))",fontsize=16,color="black",shape="box"];3755 -> 3762[label="",style="solid", color="black", weight=3]; 162.51/105.77 3756[label="Neg (Succ vx17000)",fontsize=16,color="green",shape="box"];3757[label="absReal1 (Neg (Succ vx1250)) MyFalse",fontsize=16,color="black",shape="box"];3757 -> 3763[label="",style="solid", color="black", weight=3]; 162.51/105.77 3700[label="absReal1 (Neg Zero) (not (esEsOrdering (compareMyInt (Neg Zero) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3700 -> 3714[label="",style="solid", color="black", weight=3]; 162.51/105.77 2600 -> 3633[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2600[label="gcd0Gcd' (absMyInt (Neg (Succ vx1260))) (absMyInt (Neg vx101))",fontsize=16,color="magenta"];2600 -> 3640[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2600 -> 3641[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2601[label="gcd1 (primEqInt (Neg vx101) (fromIntMyInt (Pos Zero))) (Neg Zero) (Neg vx101)",fontsize=16,color="burlywood",shape="box"];4128[label="vx101/Succ vx1010",fontsize=10,color="white",style="solid",shape="box"];2601 -> 4128[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4128 -> 2620[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4129[label="vx101/Zero",fontsize=10,color="white",style="solid",shape="box"];2601 -> 4129[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4129 -> 2621[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 2652 -> 3633[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2652[label="gcd0Gcd' (absMyInt (Pos vx127)) (absMyInt (Neg vx101))",fontsize=16,color="magenta"];2652 -> 3642[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2652 -> 3643[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2653[label="gcd1 (primEqInt (Neg vx101) (fromIntMyInt (Pos Zero))) (Pos vx127) (Neg vx101)",fontsize=16,color="burlywood",shape="box"];4130[label="vx101/Succ vx1010",fontsize=10,color="white",style="solid",shape="box"];2653 -> 4130[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4130 -> 2670[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4131[label="vx101/Zero",fontsize=10,color="white",style="solid",shape="box"];2653 -> 4131[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4131 -> 2671[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3759[label="absReal1 (Pos (Succ vx980)) (not MyFalse)",fontsize=16,color="black",shape="box"];3759 -> 3765[label="",style="solid", color="black", weight=3]; 162.51/105.77 3760[label="absReal1 (Pos Zero) MyTrue",fontsize=16,color="black",shape="box"];3760 -> 3766[label="",style="solid", color="black", weight=3]; 162.51/105.77 3761[label="primRemInt vx171 (Pos (Succ vx17000))",fontsize=16,color="burlywood",shape="box"];4132[label="vx171/Pos vx1710",fontsize=10,color="white",style="solid",shape="box"];3761 -> 4132[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4132 -> 3767[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4133[label="vx171/Neg vx1710",fontsize=10,color="white",style="solid",shape="box"];3761 -> 4133[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4133 -> 3768[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3762[label="primRemInt vx171 (Neg (Succ vx17000))",fontsize=16,color="burlywood",shape="box"];4134[label="vx171/Pos vx1710",fontsize=10,color="white",style="solid",shape="box"];3762 -> 4134[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4134 -> 3769[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4135[label="vx171/Neg vx1710",fontsize=10,color="white",style="solid",shape="box"];3762 -> 4135[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4135 -> 3770[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3763[label="absReal0 (Neg (Succ vx1250)) otherwise",fontsize=16,color="black",shape="box"];3763 -> 3771[label="",style="solid", color="black", weight=3]; 162.51/105.77 3714[label="absReal1 (Neg Zero) (not (esEsOrdering (primCmpInt (Neg Zero) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3714 -> 3729[label="",style="solid", color="black", weight=3]; 162.51/105.77 3640[label="absMyInt (Neg vx101)",fontsize=16,color="black",shape="triangle"];3640 -> 3660[label="",style="solid", color="black", weight=3]; 162.51/105.77 3641 -> 3640[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3641[label="absMyInt (Neg (Succ vx1260))",fontsize=16,color="magenta"];3641 -> 3661[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2620[label="gcd1 (primEqInt (Neg (Succ vx1010)) (fromIntMyInt (Pos Zero))) (Neg Zero) (Neg (Succ vx1010))",fontsize=16,color="black",shape="box"];2620 -> 2639[label="",style="solid", color="black", weight=3]; 162.51/105.77 2621[label="gcd1 (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero))) (Neg Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];2621 -> 2640[label="",style="solid", color="black", weight=3]; 162.51/105.77 3642 -> 3640[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3642[label="absMyInt (Neg vx101)",fontsize=16,color="magenta"];3643 -> 3634[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3643[label="absMyInt (Pos vx127)",fontsize=16,color="magenta"];3643 -> 3662[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2670[label="gcd1 (primEqInt (Neg (Succ vx1010)) (fromIntMyInt (Pos Zero))) (Pos vx127) (Neg (Succ vx1010))",fontsize=16,color="black",shape="box"];2670 -> 2687[label="",style="solid", color="black", weight=3]; 162.51/105.77 2671[label="gcd1 (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero))) (Pos vx127) (Neg Zero)",fontsize=16,color="black",shape="box"];2671 -> 2688[label="",style="solid", color="black", weight=3]; 162.51/105.77 3765[label="absReal1 (Pos (Succ vx980)) MyTrue",fontsize=16,color="black",shape="box"];3765 -> 3772[label="",style="solid", color="black", weight=3]; 162.51/105.77 3766[label="Pos Zero",fontsize=16,color="green",shape="box"];3767[label="primRemInt (Pos vx1710) (Pos (Succ vx17000))",fontsize=16,color="black",shape="box"];3767 -> 3773[label="",style="solid", color="black", weight=3]; 162.51/105.77 3768[label="primRemInt (Neg vx1710) (Pos (Succ vx17000))",fontsize=16,color="black",shape="box"];3768 -> 3774[label="",style="solid", color="black", weight=3]; 162.51/105.77 3769[label="primRemInt (Pos vx1710) (Neg (Succ vx17000))",fontsize=16,color="black",shape="box"];3769 -> 3775[label="",style="solid", color="black", weight=3]; 162.51/105.77 3770[label="primRemInt (Neg vx1710) (Neg (Succ vx17000))",fontsize=16,color="black",shape="box"];3770 -> 3776[label="",style="solid", color="black", weight=3]; 162.51/105.77 3771[label="absReal0 (Neg (Succ vx1250)) MyTrue",fontsize=16,color="black",shape="box"];3771 -> 3777[label="",style="solid", color="black", weight=3]; 162.51/105.77 3729[label="absReal1 (Neg Zero) (not (esEsOrdering (primCmpInt (Neg Zero) (Pos Zero)) LT))",fontsize=16,color="black",shape="triangle"];3729 -> 3741[label="",style="solid", color="black", weight=3]; 162.51/105.77 3660[label="absReal (Neg vx101)",fontsize=16,color="black",shape="box"];3660 -> 3672[label="",style="solid", color="black", weight=3]; 162.51/105.77 3661[label="Succ vx1260",fontsize=16,color="green",shape="box"];2639[label="gcd1 (primEqInt (Neg (Succ vx1010)) (Pos Zero)) (Neg Zero) (Neg (Succ vx1010))",fontsize=16,color="black",shape="box"];2639 -> 2655[label="",style="solid", color="black", weight=3]; 162.51/105.77 2640[label="gcd1 (primEqInt (Neg Zero) (Pos Zero)) (Neg Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];2640 -> 2656[label="",style="solid", color="black", weight=3]; 162.51/105.77 3662[label="vx127",fontsize=16,color="green",shape="box"];2687[label="gcd1 (primEqInt (Neg (Succ vx1010)) (Pos Zero)) (Pos vx127) (Neg (Succ vx1010))",fontsize=16,color="black",shape="box"];2687 -> 2703[label="",style="solid", color="black", weight=3]; 162.51/105.77 2688[label="gcd1 (primEqInt (Neg Zero) (Pos Zero)) (Pos vx127) (Neg Zero)",fontsize=16,color="black",shape="box"];2688 -> 2704[label="",style="solid", color="black", weight=3]; 162.51/105.77 3772[label="Pos (Succ vx980)",fontsize=16,color="green",shape="box"];3773[label="Pos (primModNatS vx1710 (Succ vx17000))",fontsize=16,color="green",shape="box"];3773 -> 3778[label="",style="dashed", color="green", weight=3]; 162.51/105.77 3774[label="Neg (primModNatS vx1710 (Succ vx17000))",fontsize=16,color="green",shape="box"];3774 -> 3779[label="",style="dashed", color="green", weight=3]; 162.51/105.77 3775[label="Pos (primModNatS vx1710 (Succ vx17000))",fontsize=16,color="green",shape="box"];3775 -> 3780[label="",style="dashed", color="green", weight=3]; 162.51/105.77 3776[label="Neg (primModNatS vx1710 (Succ vx17000))",fontsize=16,color="green",shape="box"];3776 -> 3781[label="",style="dashed", color="green", weight=3]; 162.51/105.77 3777[label="negateMyInt (Neg (Succ vx1250))",fontsize=16,color="black",shape="box"];3777 -> 3782[label="",style="solid", color="black", weight=3]; 162.51/105.77 3741[label="absReal1 (Neg Zero) (not (esEsOrdering EQ LT))",fontsize=16,color="black",shape="box"];3741 -> 3749[label="",style="solid", color="black", weight=3]; 162.51/105.77 3672[label="absReal2 (Neg vx101)",fontsize=16,color="black",shape="box"];3672 -> 3681[label="",style="solid", color="black", weight=3]; 162.51/105.77 2655[label="gcd1 MyFalse (Neg Zero) (Neg (Succ vx1010))",fontsize=16,color="black",shape="box"];2655 -> 2673[label="",style="solid", color="black", weight=3]; 162.51/105.77 2656[label="gcd1 MyTrue (Neg Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];2656 -> 2674[label="",style="solid", color="black", weight=3]; 162.51/105.77 2703[label="gcd1 MyFalse (Pos vx127) (Neg (Succ vx1010))",fontsize=16,color="black",shape="box"];2703 -> 2723[label="",style="solid", color="black", weight=3]; 162.51/105.77 2704[label="gcd1 MyTrue (Pos vx127) (Neg Zero)",fontsize=16,color="black",shape="box"];2704 -> 2724[label="",style="solid", color="black", weight=3]; 162.51/105.77 3778[label="primModNatS vx1710 (Succ vx17000)",fontsize=16,color="burlywood",shape="triangle"];4136[label="vx1710/Succ vx17100",fontsize=10,color="white",style="solid",shape="box"];3778 -> 4136[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4136 -> 3783[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4137[label="vx1710/Zero",fontsize=10,color="white",style="solid",shape="box"];3778 -> 4137[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4137 -> 3784[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3779 -> 3778[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3779[label="primModNatS vx1710 (Succ vx17000)",fontsize=16,color="magenta"];3779 -> 3785[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3780 -> 3778[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3780[label="primModNatS vx1710 (Succ vx17000)",fontsize=16,color="magenta"];3780 -> 3786[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3781 -> 3778[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3781[label="primModNatS vx1710 (Succ vx17000)",fontsize=16,color="magenta"];3781 -> 3787[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3781 -> 3788[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3782[label="primNegInt (Neg (Succ vx1250))",fontsize=16,color="black",shape="box"];3782 -> 3789[label="",style="solid", color="black", weight=3]; 162.51/105.77 3749[label="absReal1 (Neg Zero) (not MyFalse)",fontsize=16,color="black",shape="box"];3749 -> 3758[label="",style="solid", color="black", weight=3]; 162.51/105.77 3681[label="absReal1 (Neg vx101) (gtEsMyInt (Neg vx101) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];3681 -> 3690[label="",style="solid", color="black", weight=3]; 162.51/105.77 2673[label="gcd0 (Neg Zero) (Neg (Succ vx1010))",fontsize=16,color="black",shape="box"];2673 -> 2690[label="",style="solid", color="black", weight=3]; 162.51/105.77 2674 -> 2462[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2674[label="error",fontsize=16,color="magenta"];2723 -> 2636[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2723[label="gcd0 (Pos vx127) (Neg (Succ vx1010))",fontsize=16,color="magenta"];2723 -> 2743[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2724 -> 2462[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2724[label="error",fontsize=16,color="magenta"];3783[label="primModNatS (Succ vx17100) (Succ vx17000)",fontsize=16,color="burlywood",shape="box"];4138[label="vx17000/Succ vx170000",fontsize=10,color="white",style="solid",shape="box"];3783 -> 4138[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4138 -> 3790[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4139[label="vx17000/Zero",fontsize=10,color="white",style="solid",shape="box"];3783 -> 4139[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4139 -> 3791[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3784[label="primModNatS Zero (Succ vx17000)",fontsize=16,color="black",shape="box"];3784 -> 3792[label="",style="solid", color="black", weight=3]; 162.51/105.77 3785[label="vx1710",fontsize=16,color="green",shape="box"];3786[label="vx17000",fontsize=16,color="green",shape="box"];3787[label="vx1710",fontsize=16,color="green",shape="box"];3788[label="vx17000",fontsize=16,color="green",shape="box"];3789[label="Pos (Succ vx1250)",fontsize=16,color="green",shape="box"];3758[label="absReal1 (Neg Zero) MyTrue",fontsize=16,color="black",shape="box"];3758 -> 3764[label="",style="solid", color="black", weight=3]; 162.51/105.77 3690[label="absReal1 (Neg vx101) (fsEsOrdering (compareMyInt (Neg vx101) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];3690 -> 3701[label="",style="solid", color="black", weight=3]; 162.51/105.77 2690 -> 3633[label="",style="dashed", color="red", weight=0]; 162.51/105.77 2690[label="gcd0Gcd' (absMyInt (Neg Zero)) (absMyInt (Neg (Succ vx1010)))",fontsize=16,color="magenta"];2690 -> 3644[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2690 -> 3645[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 2743[label="Succ vx1010",fontsize=16,color="green",shape="box"];3790[label="primModNatS (Succ vx17100) (Succ (Succ vx170000))",fontsize=16,color="black",shape="box"];3790 -> 3793[label="",style="solid", color="black", weight=3]; 162.51/105.77 3791[label="primModNatS (Succ vx17100) (Succ Zero)",fontsize=16,color="black",shape="box"];3791 -> 3794[label="",style="solid", color="black", weight=3]; 162.51/105.77 3792[label="Zero",fontsize=16,color="green",shape="box"];3764[label="Neg Zero",fontsize=16,color="green",shape="box"];3701[label="absReal1 (Neg vx101) (not (esEsOrdering (compareMyInt (Neg vx101) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3701 -> 3715[label="",style="solid", color="black", weight=3]; 162.51/105.77 3644 -> 3640[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3644[label="absMyInt (Neg (Succ vx1010))",fontsize=16,color="magenta"];3644 -> 3663[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3645 -> 3640[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3645[label="absMyInt (Neg Zero)",fontsize=16,color="magenta"];3645 -> 3664[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3793[label="primModNatS0 vx17100 vx170000 (primGEqNatS vx17100 (Succ vx170000))",fontsize=16,color="burlywood",shape="box"];4140[label="vx17100/Succ vx171000",fontsize=10,color="white",style="solid",shape="box"];3793 -> 4140[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4140 -> 3795[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4141[label="vx17100/Zero",fontsize=10,color="white",style="solid",shape="box"];3793 -> 4141[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4141 -> 3796[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3794[label="Zero",fontsize=16,color="green",shape="box"];3715[label="absReal1 (Neg vx101) (not (esEsOrdering (primCmpInt (Neg vx101) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="burlywood",shape="box"];4142[label="vx101/Succ vx1010",fontsize=10,color="white",style="solid",shape="box"];3715 -> 4142[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4142 -> 3730[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4143[label="vx101/Zero",fontsize=10,color="white",style="solid",shape="box"];3715 -> 4143[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4143 -> 3731[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3663[label="Succ vx1010",fontsize=16,color="green",shape="box"];3664[label="Zero",fontsize=16,color="green",shape="box"];3795[label="primModNatS0 (Succ vx171000) vx170000 (primGEqNatS (Succ vx171000) (Succ vx170000))",fontsize=16,color="black",shape="box"];3795 -> 3797[label="",style="solid", color="black", weight=3]; 162.51/105.77 3796[label="primModNatS0 Zero vx170000 (primGEqNatS Zero (Succ vx170000))",fontsize=16,color="black",shape="box"];3796 -> 3798[label="",style="solid", color="black", weight=3]; 162.51/105.77 3730[label="absReal1 (Neg (Succ vx1010)) (not (esEsOrdering (primCmpInt (Neg (Succ vx1010)) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3730 -> 3742[label="",style="solid", color="black", weight=3]; 162.51/105.77 3731[label="absReal1 (Neg Zero) (not (esEsOrdering (primCmpInt (Neg Zero) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3731 -> 3743[label="",style="solid", color="black", weight=3]; 162.51/105.77 3797[label="primModNatS0 (Succ vx171000) vx170000 (primGEqNatS vx171000 vx170000)",fontsize=16,color="burlywood",shape="box"];4144[label="vx171000/Succ vx1710000",fontsize=10,color="white",style="solid",shape="box"];3797 -> 4144[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4144 -> 3799[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4145[label="vx171000/Zero",fontsize=10,color="white",style="solid",shape="box"];3797 -> 4145[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4145 -> 3800[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3798[label="primModNatS0 Zero vx170000 MyFalse",fontsize=16,color="black",shape="box"];3798 -> 3801[label="",style="solid", color="black", weight=3]; 162.51/105.77 3742 -> 3728[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3742[label="absReal1 (Neg (Succ vx1010)) (not (esEsOrdering (primCmpInt (Neg (Succ vx1010)) (Pos Zero)) LT))",fontsize=16,color="magenta"];3742 -> 3750[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3743 -> 3729[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3743[label="absReal1 (Neg Zero) (not (esEsOrdering (primCmpInt (Neg Zero) (Pos Zero)) LT))",fontsize=16,color="magenta"];3799[label="primModNatS0 (Succ (Succ vx1710000)) vx170000 (primGEqNatS (Succ vx1710000) vx170000)",fontsize=16,color="burlywood",shape="box"];4146[label="vx170000/Succ vx1700000",fontsize=10,color="white",style="solid",shape="box"];3799 -> 4146[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4146 -> 3802[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4147[label="vx170000/Zero",fontsize=10,color="white",style="solid",shape="box"];3799 -> 4147[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4147 -> 3803[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3800[label="primModNatS0 (Succ Zero) vx170000 (primGEqNatS Zero vx170000)",fontsize=16,color="burlywood",shape="box"];4148[label="vx170000/Succ vx1700000",fontsize=10,color="white",style="solid",shape="box"];3800 -> 4148[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4148 -> 3804[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4149[label="vx170000/Zero",fontsize=10,color="white",style="solid",shape="box"];3800 -> 4149[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4149 -> 3805[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3801[label="Succ Zero",fontsize=16,color="green",shape="box"];3750[label="vx1010",fontsize=16,color="green",shape="box"];3802[label="primModNatS0 (Succ (Succ vx1710000)) (Succ vx1700000) (primGEqNatS (Succ vx1710000) (Succ vx1700000))",fontsize=16,color="black",shape="box"];3802 -> 3806[label="",style="solid", color="black", weight=3]; 162.51/105.77 3803[label="primModNatS0 (Succ (Succ vx1710000)) Zero (primGEqNatS (Succ vx1710000) Zero)",fontsize=16,color="black",shape="box"];3803 -> 3807[label="",style="solid", color="black", weight=3]; 162.51/105.77 3804[label="primModNatS0 (Succ Zero) (Succ vx1700000) (primGEqNatS Zero (Succ vx1700000))",fontsize=16,color="black",shape="box"];3804 -> 3808[label="",style="solid", color="black", weight=3]; 162.51/105.77 3805[label="primModNatS0 (Succ Zero) Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];3805 -> 3809[label="",style="solid", color="black", weight=3]; 162.51/105.77 3806 -> 3922[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3806[label="primModNatS0 (Succ (Succ vx1710000)) (Succ vx1700000) (primGEqNatS vx1710000 vx1700000)",fontsize=16,color="magenta"];3806 -> 3923[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3806 -> 3924[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3806 -> 3925[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3806 -> 3926[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3807[label="primModNatS0 (Succ (Succ vx1710000)) Zero MyTrue",fontsize=16,color="black",shape="box"];3807 -> 3812[label="",style="solid", color="black", weight=3]; 162.51/105.77 3808[label="primModNatS0 (Succ Zero) (Succ vx1700000) MyFalse",fontsize=16,color="black",shape="box"];3808 -> 3813[label="",style="solid", color="black", weight=3]; 162.51/105.77 3809[label="primModNatS0 (Succ Zero) Zero MyTrue",fontsize=16,color="black",shape="box"];3809 -> 3814[label="",style="solid", color="black", weight=3]; 162.51/105.77 3923[label="vx1700000",fontsize=16,color="green",shape="box"];3924[label="vx1710000",fontsize=16,color="green",shape="box"];3925[label="Succ vx1710000",fontsize=16,color="green",shape="box"];3926[label="vx1700000",fontsize=16,color="green",shape="box"];3922[label="primModNatS0 (Succ vx180) (Succ vx181) (primGEqNatS vx182 vx183)",fontsize=16,color="burlywood",shape="triangle"];4150[label="vx182/Succ vx1820",fontsize=10,color="white",style="solid",shape="box"];3922 -> 4150[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4150 -> 3951[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4151[label="vx182/Zero",fontsize=10,color="white",style="solid",shape="box"];3922 -> 4151[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4151 -> 3952[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3812 -> 3778[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3812[label="primModNatS (primMinusNatS (Succ (Succ vx1710000)) (Succ Zero)) (Succ (Succ Zero))",fontsize=16,color="magenta"];3812 -> 3819[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3812 -> 3820[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3813[label="Succ (Succ Zero)",fontsize=16,color="green",shape="box"];3814 -> 3778[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3814[label="primModNatS (primMinusNatS (Succ Zero) (Succ Zero)) (Succ (Succ Zero))",fontsize=16,color="magenta"];3814 -> 3821[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3814 -> 3822[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3951[label="primModNatS0 (Succ vx180) (Succ vx181) (primGEqNatS (Succ vx1820) vx183)",fontsize=16,color="burlywood",shape="box"];4152[label="vx183/Succ vx1830",fontsize=10,color="white",style="solid",shape="box"];3951 -> 4152[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4152 -> 3953[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4153[label="vx183/Zero",fontsize=10,color="white",style="solid",shape="box"];3951 -> 4153[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4153 -> 3954[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3952[label="primModNatS0 (Succ vx180) (Succ vx181) (primGEqNatS Zero vx183)",fontsize=16,color="burlywood",shape="box"];4154[label="vx183/Succ vx1830",fontsize=10,color="white",style="solid",shape="box"];3952 -> 4154[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4154 -> 3955[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 4155[label="vx183/Zero",fontsize=10,color="white",style="solid",shape="box"];3952 -> 4155[label="",style="solid", color="burlywood", weight=9]; 162.51/105.77 4155 -> 3956[label="",style="solid", color="burlywood", weight=3]; 162.51/105.77 3819 -> 3682[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3819[label="primMinusNatS (Succ (Succ vx1710000)) (Succ Zero)",fontsize=16,color="magenta"];3819 -> 3827[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3819 -> 3828[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3820[label="Succ Zero",fontsize=16,color="green",shape="box"];3821 -> 3682[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3821[label="primMinusNatS (Succ Zero) (Succ Zero)",fontsize=16,color="magenta"];3821 -> 3829[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3821 -> 3830[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3822[label="Succ Zero",fontsize=16,color="green",shape="box"];3953[label="primModNatS0 (Succ vx180) (Succ vx181) (primGEqNatS (Succ vx1820) (Succ vx1830))",fontsize=16,color="black",shape="box"];3953 -> 3957[label="",style="solid", color="black", weight=3]; 162.51/105.77 3954[label="primModNatS0 (Succ vx180) (Succ vx181) (primGEqNatS (Succ vx1820) Zero)",fontsize=16,color="black",shape="box"];3954 -> 3958[label="",style="solid", color="black", weight=3]; 162.51/105.77 3955[label="primModNatS0 (Succ vx180) (Succ vx181) (primGEqNatS Zero (Succ vx1830))",fontsize=16,color="black",shape="box"];3955 -> 3959[label="",style="solid", color="black", weight=3]; 162.51/105.77 3956[label="primModNatS0 (Succ vx180) (Succ vx181) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];3956 -> 3960[label="",style="solid", color="black", weight=3]; 162.51/105.77 3827[label="Succ Zero",fontsize=16,color="green",shape="box"];3828[label="Succ (Succ vx1710000)",fontsize=16,color="green",shape="box"];3829[label="Succ Zero",fontsize=16,color="green",shape="box"];3830[label="Succ Zero",fontsize=16,color="green",shape="box"];3957 -> 3922[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3957[label="primModNatS0 (Succ vx180) (Succ vx181) (primGEqNatS vx1820 vx1830)",fontsize=16,color="magenta"];3957 -> 3961[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3957 -> 3962[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3958[label="primModNatS0 (Succ vx180) (Succ vx181) MyTrue",fontsize=16,color="black",shape="triangle"];3958 -> 3963[label="",style="solid", color="black", weight=3]; 162.51/105.77 3959[label="primModNatS0 (Succ vx180) (Succ vx181) MyFalse",fontsize=16,color="black",shape="box"];3959 -> 3964[label="",style="solid", color="black", weight=3]; 162.51/105.77 3960 -> 3958[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3960[label="primModNatS0 (Succ vx180) (Succ vx181) MyTrue",fontsize=16,color="magenta"];3961[label="vx1820",fontsize=16,color="green",shape="box"];3962[label="vx1830",fontsize=16,color="green",shape="box"];3963 -> 3778[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3963[label="primModNatS (primMinusNatS (Succ vx180) (Succ (Succ vx181))) (Succ (Succ (Succ vx181)))",fontsize=16,color="magenta"];3963 -> 3965[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3963 -> 3966[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3964[label="Succ (Succ vx180)",fontsize=16,color="green",shape="box"];3965 -> 3682[label="",style="dashed", color="red", weight=0]; 162.51/105.77 3965[label="primMinusNatS (Succ vx180) (Succ (Succ vx181))",fontsize=16,color="magenta"];3965 -> 3967[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3965 -> 3968[label="",style="dashed", color="magenta", weight=3]; 162.51/105.77 3966[label="Succ (Succ vx181)",fontsize=16,color="green",shape="box"];3967[label="Succ (Succ vx181)",fontsize=16,color="green",shape="box"];3968[label="Succ vx180",fontsize=16,color="green",shape="box"];} 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (6) 162.51/105.77 Complex Obligation (AND) 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (7) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_pr2F33(Main.Succ(vx4000), Main.Succ(vx5000), vx3) -> new_pr2F33(vx4000, vx5000, vx3) 162.51/105.77 162.51/105.77 R is empty. 162.51/105.77 Q is empty. 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (8) QDPSizeChangeProof (EQUIVALENT) 162.51/105.77 By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. 162.51/105.77 162.51/105.77 From the DPs we obtained the following set of size-change graphs: 162.51/105.77 *new_pr2F33(Main.Succ(vx4000), Main.Succ(vx5000), vx3) -> new_pr2F33(vx4000, vx5000, vx3) 162.51/105.77 The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3 162.51/105.77 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (9) 162.51/105.77 YES 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (10) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_primModNatS0(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS00(vx180, vx181) 162.51/105.77 new_primModNatS0(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS0(vx180, vx181, vx1820, vx1830) 162.51/105.77 new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS00(vx180, vx181) -> new_primModNatS(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.77 new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS0(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.77 new_primModNatS0(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.77 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (11) DependencyGraphProof (EQUIVALENT) 162.51/105.77 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (12) 162.51/105.77 Complex Obligation (AND) 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (13) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_primModNatS(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.77 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (14) TransformationProof (EQUIVALENT) 162.51/105.77 By rewriting [LPAR04] the rule new_primModNatS(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) at position [0] we obtained the following new rules [LPAR04]: 162.51/105.77 162.51/105.77 (new_primModNatS(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)),new_primModNatS(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero))) 162.51/105.77 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (15) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.77 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (16) DependencyGraphProof (EQUIVALENT) 162.51/105.77 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (17) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.77 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (18) TransformationProof (EQUIVALENT) 162.51/105.77 By rewriting [LPAR04] the rule new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) at position [0] we obtained the following new rules [LPAR04]: 162.51/105.77 162.51/105.77 (new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS(new_primMinusNatS0(Main.Succ(vx1710000), Main.Zero), Main.Succ(Main.Zero)),new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS(new_primMinusNatS0(Main.Succ(vx1710000), Main.Zero), Main.Succ(Main.Zero))) 162.51/105.77 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (19) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS(new_primMinusNatS0(Main.Succ(vx1710000), Main.Zero), Main.Succ(Main.Zero)) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.77 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (20) UsableRulesProof (EQUIVALENT) 162.51/105.77 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (21) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS(new_primMinusNatS0(Main.Succ(vx1710000), Main.Zero), Main.Succ(Main.Zero)) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (22) TransformationProof (EQUIVALENT) 162.51/105.77 By rewriting [LPAR04] the rule new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS(new_primMinusNatS0(Main.Succ(vx1710000), Main.Zero), Main.Succ(Main.Zero)) at position [0] we obtained the following new rules [LPAR04]: 162.51/105.77 162.51/105.77 (new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS(Main.Succ(vx1710000), Main.Succ(Main.Zero)),new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS(Main.Succ(vx1710000), Main.Succ(Main.Zero))) 162.51/105.77 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (23) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS(Main.Succ(vx1710000), Main.Succ(Main.Zero)) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (24) UsableRulesProof (EQUIVALENT) 162.51/105.77 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (25) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS(Main.Succ(vx1710000), Main.Succ(Main.Zero)) 162.51/105.77 162.51/105.77 R is empty. 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (26) QReductionProof (EQUIVALENT) 162.51/105.77 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (27) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS(Main.Succ(vx1710000), Main.Succ(Main.Zero)) 162.51/105.77 162.51/105.77 R is empty. 162.51/105.77 Q is empty. 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (28) QDPSizeChangeProof (EQUIVALENT) 162.51/105.77 By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. 162.51/105.77 162.51/105.77 From the DPs we obtained the following set of size-change graphs: 162.51/105.77 *new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS(Main.Succ(vx1710000), Main.Succ(Main.Zero)) 162.51/105.77 The graph contains the following edges 1 > 1, 2 >= 2 162.51/105.77 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (29) 162.51/105.77 YES 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (30) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_primModNatS00(vx180, vx181) -> new_primModNatS(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.77 new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS0(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.77 new_primModNatS0(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS00(vx180, vx181) 162.51/105.77 new_primModNatS0(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS0(vx180, vx181, vx1820, vx1830) 162.51/105.77 new_primModNatS0(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.77 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (31) TransformationProof (EQUIVALENT) 162.51/105.77 By rewriting [LPAR04] the rule new_primModNatS00(vx180, vx181) -> new_primModNatS(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) at position [0] we obtained the following new rules [LPAR04]: 162.51/105.77 162.51/105.77 (new_primModNatS00(vx180, vx181) -> new_primModNatS(new_primMinusNatS0(vx180, Main.Succ(vx181)), Main.Succ(Main.Succ(vx181))),new_primModNatS00(vx180, vx181) -> new_primModNatS(new_primMinusNatS0(vx180, Main.Succ(vx181)), Main.Succ(Main.Succ(vx181)))) 162.51/105.77 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (32) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS0(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.77 new_primModNatS0(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS00(vx180, vx181) 162.51/105.77 new_primModNatS0(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS0(vx180, vx181, vx1820, vx1830) 162.51/105.77 new_primModNatS0(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.77 new_primModNatS00(vx180, vx181) -> new_primModNatS(new_primMinusNatS0(vx180, Main.Succ(vx181)), Main.Succ(Main.Succ(vx181))) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.77 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (33) TransformationProof (EQUIVALENT) 162.51/105.77 By rewriting [LPAR04] the rule new_primModNatS0(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) at position [0] we obtained the following new rules [LPAR04]: 162.51/105.77 162.51/105.77 (new_primModNatS0(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS(new_primMinusNatS0(vx180, Main.Succ(vx181)), Main.Succ(Main.Succ(vx181))),new_primModNatS0(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS(new_primMinusNatS0(vx180, Main.Succ(vx181)), Main.Succ(Main.Succ(vx181)))) 162.51/105.77 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (34) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS0(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.77 new_primModNatS0(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS00(vx180, vx181) 162.51/105.77 new_primModNatS0(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS0(vx180, vx181, vx1820, vx1830) 162.51/105.77 new_primModNatS00(vx180, vx181) -> new_primModNatS(new_primMinusNatS0(vx180, Main.Succ(vx181)), Main.Succ(Main.Succ(vx181))) 162.51/105.77 new_primModNatS0(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS(new_primMinusNatS0(vx180, Main.Succ(vx181)), Main.Succ(Main.Succ(vx181))) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.77 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (35) QDPSizeChangeProof (EQUIVALENT) 162.51/105.77 We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. 162.51/105.77 162.51/105.77 Order:Polynomial interpretation [POLO]: 162.51/105.77 162.51/105.77 POL(Main.Succ(x_1)) = 1 + x_1 162.51/105.77 POL(Main.Zero) = 1 162.51/105.77 POL(new_primMinusNatS0(x_1, x_2)) = x_1 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 From the DPs we obtained the following set of size-change graphs: 162.51/105.77 *new_primModNatS0(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS(new_primMinusNatS0(vx180, Main.Succ(vx181)), Main.Succ(Main.Succ(vx181))) (allowed arguments on rhs = {1, 2}) 162.51/105.77 The graph contains the following edges 1 >= 1 162.51/105.77 162.51/105.77 162.51/105.77 *new_primModNatS00(vx180, vx181) -> new_primModNatS(new_primMinusNatS0(vx180, Main.Succ(vx181)), Main.Succ(Main.Succ(vx181))) (allowed arguments on rhs = {1, 2}) 162.51/105.77 The graph contains the following edges 1 >= 1 162.51/105.77 162.51/105.77 162.51/105.77 *new_primModNatS(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS0(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) (allowed arguments on rhs = {1, 2, 3, 4}) 162.51/105.77 The graph contains the following edges 1 > 1, 2 > 2, 1 > 3, 2 > 4 162.51/105.77 162.51/105.77 162.51/105.77 *new_primModNatS0(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS0(vx180, vx181, vx1820, vx1830) (allowed arguments on rhs = {1, 2, 3, 4}) 162.51/105.77 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4 162.51/105.77 162.51/105.77 162.51/105.77 *new_primModNatS0(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS00(vx180, vx181) (allowed arguments on rhs = {1, 2}) 162.51/105.77 The graph contains the following edges 1 >= 1, 2 >= 2 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We oriented the following set of usable rules [AAECC05,FROCOS05]. 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (36) 162.51/105.77 YES 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (37) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_gcd0Gcd'(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.51/105.77 new_gcd0Gcd'(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.77 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.77 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.77 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.77 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.77 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primRemInt(Main.Neg(x0), x1) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.77 new_primRemInt0(Main.Neg(x0), x1) 162.51/105.77 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.77 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.77 new_primModNatS02(x0, x1) 162.51/105.77 new_primRemInt(Main.Pos(x0), x1) 162.51/105.77 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.77 new_primRemInt0(Main.Pos(x0), x1) 162.51/105.77 new_primModNatS1(Main.Zero, x0) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (38) MNOCProof (EQUIVALENT) 162.51/105.77 We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (39) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_gcd0Gcd'(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.51/105.77 new_gcd0Gcd'(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.77 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.77 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.77 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.77 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.77 162.51/105.77 Q is empty. 162.51/105.77 We have to consider all (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (40) InductionCalculusProof (EQUIVALENT) 162.51/105.77 Note that final constraints are written in bold face. 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 For Pair new_gcd0Gcd'(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) the following chains were created: 162.51/105.77 *We consider the chain new_gcd0Gcd'(x0, Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), new_primRemInt(x0, x1)), new_gcd0Gcd'(x2, Main.Pos(Main.Succ(x3))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x3)), new_primRemInt(x2, x3)) which results in the following constraint: 162.51/105.77 162.51/105.77 (1) (new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), new_primRemInt(x0, x1))=new_gcd0Gcd'(x2, Main.Pos(Main.Succ(x3))) ==> new_gcd0Gcd'(x0, Main.Pos(Main.Succ(x1)))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), new_primRemInt(x0, x1))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.51/105.77 162.51/105.77 (2) (new_primRemInt(x0, x1)=Main.Pos(Main.Succ(x3)) ==> new_gcd0Gcd'(x0, Main.Pos(Main.Succ(x1)))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), new_primRemInt(x0, x1))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primRemInt(x0, x1)=Main.Pos(Main.Succ(x3)) which results in the following new constraint: 162.51/105.77 162.51/105.77 (3) (Main.Pos(new_primModNatS1(x19, x18))=Main.Pos(Main.Succ(x3)) ==> new_gcd0Gcd'(Main.Pos(x19), Main.Pos(Main.Succ(x18)))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(x18)), new_primRemInt(Main.Pos(x19), x18))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (3) using rules (I), (II) which results in the following new constraint: 162.51/105.77 162.51/105.77 (4) (new_primModNatS1(x19, x18)=Main.Succ(x3) ==> new_gcd0Gcd'(Main.Pos(x19), Main.Pos(Main.Succ(x18)))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(x18)), new_primRemInt(Main.Pos(x19), x18))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS1(x19, x18)=Main.Succ(x3) which results in the following new constraints: 162.51/105.77 162.51/105.77 (5) (Main.Succ(Main.Zero)=Main.Succ(x3) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Pos(Main.Succ(Main.Succ(x20))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(x20))), new_primRemInt(Main.Pos(Main.Succ(Main.Zero)), Main.Succ(x20)))) 162.51/105.77 162.51/105.77 (6) (Main.Succ(Main.Succ(Main.Zero))=Main.Succ(x3) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x22)))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x22)))), new_primRemInt(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x22))))) 162.51/105.77 162.51/105.77 (7) (new_primModNatS01(Main.Succ(x24), x23, x24, x23)=Main.Succ(x3) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x24)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x23)))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x23)))), new_primRemInt(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x24)))), Main.Succ(Main.Succ(x23))))) 162.51/105.77 162.51/105.77 (8) (new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x25)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))=Main.Succ(x3) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x25)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x25)))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 (9) (new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))=Main.Succ(x3) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (5) using rules (I), (II), (IV) which results in the following new constraint: 162.51/105.77 162.51/105.77 (10) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Pos(Main.Succ(Main.Succ(x20))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(x20))), new_primRemInt(Main.Pos(Main.Succ(Main.Zero)), Main.Succ(x20)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (6) using rules (I), (II), (IV) which results in the following new constraint: 162.51/105.77 162.51/105.77 (11) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x22)))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x22)))), new_primRemInt(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x22))))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (7) using rules (III), (IV), (VII) which results in the following new constraint: 162.51/105.77 162.51/105.77 (12) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x24)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x28)))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x28)))), new_primRemInt(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x24)))), Main.Succ(Main.Succ(x28))))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (8) using rules (III), (IV), (VII) which results in the following new constraint: 162.51/105.77 162.51/105.77 (13) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x25)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x25)))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (9) using rules (III), (IV), (VII) which results in the following new constraint: 162.51/105.77 162.51/105.77 (14) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 *We consider the chain new_gcd0Gcd'(x4, Main.Pos(Main.Succ(x5))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x5)), new_primRemInt(x4, x5)), new_gcd0Gcd'(x6, Main.Neg(Main.Succ(x7))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x7)), new_primRemInt0(x6, x7)) which results in the following constraint: 162.51/105.77 162.51/105.77 (1) (new_gcd0Gcd'(Main.Pos(Main.Succ(x5)), new_primRemInt(x4, x5))=new_gcd0Gcd'(x6, Main.Neg(Main.Succ(x7))) ==> new_gcd0Gcd'(x4, Main.Pos(Main.Succ(x5)))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(x5)), new_primRemInt(x4, x5))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.51/105.77 162.51/105.77 (2) (new_primRemInt(x4, x5)=Main.Neg(Main.Succ(x7)) ==> new_gcd0Gcd'(x4, Main.Pos(Main.Succ(x5)))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(x5)), new_primRemInt(x4, x5))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primRemInt(x4, x5)=Main.Neg(Main.Succ(x7)) which results in the following new constraint: 162.51/105.77 162.51/105.77 (3) (Main.Neg(new_primModNatS1(x38, x37))=Main.Neg(Main.Succ(x7)) ==> new_gcd0Gcd'(Main.Neg(x38), Main.Pos(Main.Succ(x37)))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(x37)), new_primRemInt(Main.Neg(x38), x37))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (3) using rules (I), (II) which results in the following new constraint: 162.51/105.77 162.51/105.77 (4) (new_primModNatS1(x38, x37)=Main.Succ(x7) ==> new_gcd0Gcd'(Main.Neg(x38), Main.Pos(Main.Succ(x37)))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(x37)), new_primRemInt(Main.Neg(x38), x37))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS1(x38, x37)=Main.Succ(x7) which results in the following new constraints: 162.51/105.77 162.51/105.77 (5) (Main.Succ(Main.Zero)=Main.Succ(x7) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Pos(Main.Succ(Main.Succ(x41))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(x41))), new_primRemInt(Main.Neg(Main.Succ(Main.Zero)), Main.Succ(x41)))) 162.51/105.77 162.51/105.77 (6) (Main.Succ(Main.Succ(Main.Zero))=Main.Succ(x7) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x43)))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x43)))), new_primRemInt(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x43))))) 162.51/105.77 162.51/105.77 (7) (new_primModNatS01(Main.Succ(x45), x44, x45, x44)=Main.Succ(x7) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x45)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x44)))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x44)))), new_primRemInt(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x45)))), Main.Succ(Main.Succ(x44))))) 162.51/105.77 162.51/105.77 (8) (new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x46)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))=Main.Succ(x7) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x46)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x46)))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 (9) (new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))=Main.Succ(x7) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (5) using rules (I), (II), (IV) which results in the following new constraint: 162.51/105.77 162.51/105.77 (10) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Pos(Main.Succ(Main.Succ(x41))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(x41))), new_primRemInt(Main.Neg(Main.Succ(Main.Zero)), Main.Succ(x41)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (6) using rules (I), (II), (IV) which results in the following new constraint: 162.51/105.77 162.51/105.77 (11) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x43)))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x43)))), new_primRemInt(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x43))))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (7) using rules (III), (IV), (VII) which results in the following new constraint: 162.51/105.77 162.51/105.77 (12) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x45)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x49)))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x49)))), new_primRemInt(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x45)))), Main.Succ(Main.Succ(x49))))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (8) using rules (III), (IV), (VII) which results in the following new constraint: 162.51/105.77 162.51/105.77 (13) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x46)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x46)))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (9) using rules (III), (IV), (VII) which results in the following new constraint: 162.51/105.77 162.51/105.77 (14) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 For Pair new_gcd0Gcd'(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) the following chains were created: 162.51/105.77 *We consider the chain new_gcd0Gcd'(x8, Main.Neg(Main.Succ(x9))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x9)), new_primRemInt0(x8, x9)), new_gcd0Gcd'(x10, Main.Pos(Main.Succ(x11))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x11)), new_primRemInt(x10, x11)) which results in the following constraint: 162.51/105.77 162.51/105.77 (1) (new_gcd0Gcd'(Main.Neg(Main.Succ(x9)), new_primRemInt0(x8, x9))=new_gcd0Gcd'(x10, Main.Pos(Main.Succ(x11))) ==> new_gcd0Gcd'(x8, Main.Neg(Main.Succ(x9)))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(x9)), new_primRemInt0(x8, x9))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.51/105.77 162.51/105.77 (2) (new_primRemInt0(x8, x9)=Main.Pos(Main.Succ(x11)) ==> new_gcd0Gcd'(x8, Main.Neg(Main.Succ(x9)))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(x9)), new_primRemInt0(x8, x9))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primRemInt0(x8, x9)=Main.Pos(Main.Succ(x11)) which results in the following new constraint: 162.51/105.77 162.51/105.77 (3) (Main.Pos(new_primModNatS1(x59, x58))=Main.Pos(Main.Succ(x11)) ==> new_gcd0Gcd'(Main.Pos(x59), Main.Neg(Main.Succ(x58)))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(x58)), new_primRemInt0(Main.Pos(x59), x58))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (3) using rules (I), (II) which results in the following new constraint: 162.51/105.77 162.51/105.77 (4) (new_primModNatS1(x59, x58)=Main.Succ(x11) ==> new_gcd0Gcd'(Main.Pos(x59), Main.Neg(Main.Succ(x58)))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(x58)), new_primRemInt0(Main.Pos(x59), x58))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS1(x59, x58)=Main.Succ(x11) which results in the following new constraints: 162.51/105.77 162.51/105.77 (5) (Main.Succ(Main.Zero)=Main.Succ(x11) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x62))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x62))), new_primRemInt0(Main.Pos(Main.Succ(Main.Zero)), Main.Succ(x62)))) 162.51/105.77 162.51/105.77 (6) (Main.Succ(Main.Succ(Main.Zero))=Main.Succ(x11) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x64)))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x64)))), new_primRemInt0(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x64))))) 162.51/105.77 162.51/105.77 (7) (new_primModNatS01(Main.Succ(x66), x65, x66, x65)=Main.Succ(x11) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x66)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x65)))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x65)))), new_primRemInt0(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x66)))), Main.Succ(Main.Succ(x65))))) 162.51/105.77 162.51/105.77 (8) (new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x67)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))=Main.Succ(x11) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x67)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt0(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x67)))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 (9) (new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))=Main.Succ(x11) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt0(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (5) using rules (I), (II), (IV) which results in the following new constraint: 162.51/105.77 162.51/105.77 (10) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x62))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x62))), new_primRemInt0(Main.Pos(Main.Succ(Main.Zero)), Main.Succ(x62)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (6) using rules (I), (II), (IV) which results in the following new constraint: 162.51/105.77 162.51/105.77 (11) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x64)))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x64)))), new_primRemInt0(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x64))))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (7) using rules (III), (IV), (VII) which results in the following new constraint: 162.51/105.77 162.51/105.77 (12) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x66)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x70)))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x70)))), new_primRemInt0(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x66)))), Main.Succ(Main.Succ(x70))))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (8) using rules (III), (IV), (VII) which results in the following new constraint: 162.51/105.77 162.51/105.77 (13) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x67)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt0(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x67)))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (9) using rules (III), (IV), (VII) which results in the following new constraint: 162.51/105.77 162.51/105.77 (14) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt0(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 *We consider the chain new_gcd0Gcd'(x12, Main.Neg(Main.Succ(x13))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x13)), new_primRemInt0(x12, x13)), new_gcd0Gcd'(x14, Main.Neg(Main.Succ(x15))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x15)), new_primRemInt0(x14, x15)) which results in the following constraint: 162.51/105.77 162.51/105.77 (1) (new_gcd0Gcd'(Main.Neg(Main.Succ(x13)), new_primRemInt0(x12, x13))=new_gcd0Gcd'(x14, Main.Neg(Main.Succ(x15))) ==> new_gcd0Gcd'(x12, Main.Neg(Main.Succ(x13)))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(x13)), new_primRemInt0(x12, x13))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.51/105.77 162.51/105.77 (2) (new_primRemInt0(x12, x13)=Main.Neg(Main.Succ(x15)) ==> new_gcd0Gcd'(x12, Main.Neg(Main.Succ(x13)))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(x13)), new_primRemInt0(x12, x13))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primRemInt0(x12, x13)=Main.Neg(Main.Succ(x15)) which results in the following new constraint: 162.51/105.77 162.51/105.77 (3) (Main.Neg(new_primModNatS1(x82, x81))=Main.Neg(Main.Succ(x15)) ==> new_gcd0Gcd'(Main.Neg(x82), Main.Neg(Main.Succ(x81)))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(x81)), new_primRemInt0(Main.Neg(x82), x81))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (3) using rules (I), (II) which results in the following new constraint: 162.51/105.77 162.51/105.77 (4) (new_primModNatS1(x82, x81)=Main.Succ(x15) ==> new_gcd0Gcd'(Main.Neg(x82), Main.Neg(Main.Succ(x81)))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(x81)), new_primRemInt0(Main.Neg(x82), x81))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS1(x82, x81)=Main.Succ(x15) which results in the following new constraints: 162.51/105.77 162.51/105.77 (5) (Main.Succ(Main.Zero)=Main.Succ(x15) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x83))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x83))), new_primRemInt0(Main.Neg(Main.Succ(Main.Zero)), Main.Succ(x83)))) 162.51/105.77 162.51/105.77 (6) (Main.Succ(Main.Succ(Main.Zero))=Main.Succ(x15) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x85)))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x85)))), new_primRemInt0(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x85))))) 162.51/105.77 162.51/105.77 (7) (new_primModNatS01(Main.Succ(x87), x86, x87, x86)=Main.Succ(x15) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x87)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x86)))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x86)))), new_primRemInt0(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x87)))), Main.Succ(Main.Succ(x86))))) 162.51/105.77 162.51/105.77 (8) (new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x88)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))=Main.Succ(x15) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x88)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt0(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x88)))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 (9) (new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))=Main.Succ(x15) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt0(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (5) using rules (I), (II), (IV) which results in the following new constraint: 162.51/105.77 162.51/105.77 (10) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x83))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x83))), new_primRemInt0(Main.Neg(Main.Succ(Main.Zero)), Main.Succ(x83)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (6) using rules (I), (II), (IV) which results in the following new constraint: 162.51/105.77 162.51/105.77 (11) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x85)))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x85)))), new_primRemInt0(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x85))))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (7) using rules (III), (IV), (VII) which results in the following new constraint: 162.51/105.77 162.51/105.77 (12) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x87)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x91)))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x91)))), new_primRemInt0(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x87)))), Main.Succ(Main.Succ(x91))))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (8) using rules (III), (IV), (VII) which results in the following new constraint: 162.51/105.77 162.51/105.77 (13) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x88)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt0(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x88)))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 We simplified constraint (9) using rules (III), (IV), (VII) which results in the following new constraint: 162.51/105.77 162.51/105.77 (14) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt0(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 To summarize, we get the following constraints P__>=_ for the following pairs. 162.51/105.77 162.51/105.77 *new_gcd0Gcd'(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Pos(Main.Succ(Main.Succ(x20))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(x20))), new_primRemInt(Main.Pos(Main.Succ(Main.Zero)), Main.Succ(x20)))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x22)))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x22)))), new_primRemInt(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x22))))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x24)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x28)))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x28)))), new_primRemInt(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x24)))), Main.Succ(Main.Succ(x28))))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x25)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x25)))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Pos(Main.Succ(Main.Succ(x41))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(x41))), new_primRemInt(Main.Neg(Main.Succ(Main.Zero)), Main.Succ(x41)))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x43)))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x43)))), new_primRemInt(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x43))))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x45)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x49)))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x49)))), new_primRemInt(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x45)))), Main.Succ(Main.Succ(x49))))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x46)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x46)))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 *new_gcd0Gcd'(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x62))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x62))), new_primRemInt0(Main.Pos(Main.Succ(Main.Zero)), Main.Succ(x62)))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x64)))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x64)))), new_primRemInt0(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x64))))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x66)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x70)))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x70)))), new_primRemInt0(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x66)))), Main.Succ(Main.Succ(x70))))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x67)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt0(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x67)))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt0(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x83))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x83))), new_primRemInt0(Main.Neg(Main.Succ(Main.Zero)), Main.Succ(x83)))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x85)))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x85)))), new_primRemInt0(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x85))))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x87)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x91)))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x91)))), new_primRemInt0(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x87)))), Main.Succ(Main.Succ(x91))))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x88)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt0(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x88)))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), new_primRemInt0(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 162.51/105.77 The constraints for P_> respective P_bound are constructed from P__>=_ where we just replace every occurence of "t _>=_ s" in P__>=_ by "t > s" respective "t _>=_ c". Here c stands for the fresh constant used for P_bound. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (41) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_gcd0Gcd'(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.51/105.77 new_gcd0Gcd'(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.77 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.77 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.77 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.77 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.77 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primRemInt(Main.Neg(x0), x1) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.77 new_primRemInt0(Main.Neg(x0), x1) 162.51/105.77 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.77 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.77 new_primModNatS02(x0, x1) 162.51/105.77 new_primRemInt(Main.Pos(x0), x1) 162.51/105.77 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.77 new_primRemInt0(Main.Pos(x0), x1) 162.51/105.77 new_primModNatS1(Main.Zero, x0) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (42) TransformationProof (EQUIVALENT) 162.51/105.77 By narrowing [LPAR04] the rule new_gcd0Gcd'(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) at position [1] we obtained the following new rules [LPAR04]: 162.51/105.77 162.51/105.77 (new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))),new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1)))) 162.51/105.77 (new_gcd0Gcd'(Main.Pos(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Pos(new_primModNatS1(x0, x1))),new_gcd0Gcd'(Main.Pos(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Pos(new_primModNatS1(x0, x1)))) 162.51/105.77 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (43) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_gcd0Gcd'(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.51/105.77 new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.51/105.77 new_gcd0Gcd'(Main.Pos(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Pos(new_primModNatS1(x0, x1))) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.77 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.77 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.77 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.77 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.77 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primRemInt(Main.Neg(x0), x1) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.77 new_primRemInt0(Main.Neg(x0), x1) 162.51/105.77 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.77 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.77 new_primModNatS02(x0, x1) 162.51/105.77 new_primRemInt(Main.Pos(x0), x1) 162.51/105.77 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.77 new_primRemInt0(Main.Pos(x0), x1) 162.51/105.77 new_primModNatS1(Main.Zero, x0) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (44) DependencyGraphProof (EQUIVALENT) 162.51/105.77 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (45) 162.51/105.77 Complex Obligation (AND) 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (46) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_gcd0Gcd'(Main.Pos(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Pos(new_primModNatS1(x0, x1))) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.77 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.77 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.77 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.77 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.77 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primRemInt(Main.Neg(x0), x1) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.77 new_primRemInt0(Main.Neg(x0), x1) 162.51/105.77 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.77 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.77 new_primModNatS02(x0, x1) 162.51/105.77 new_primRemInt(Main.Pos(x0), x1) 162.51/105.77 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.77 new_primRemInt0(Main.Pos(x0), x1) 162.51/105.77 new_primModNatS1(Main.Zero, x0) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (47) UsableRulesProof (EQUIVALENT) 162.51/105.77 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (48) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_gcd0Gcd'(Main.Pos(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Pos(new_primModNatS1(x0, x1))) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.77 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.77 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primRemInt(Main.Neg(x0), x1) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.77 new_primRemInt0(Main.Neg(x0), x1) 162.51/105.77 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.77 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.77 new_primModNatS02(x0, x1) 162.51/105.77 new_primRemInt(Main.Pos(x0), x1) 162.51/105.77 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.77 new_primRemInt0(Main.Pos(x0), x1) 162.51/105.77 new_primModNatS1(Main.Zero, x0) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (49) QReductionProof (EQUIVALENT) 162.51/105.77 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 162.51/105.77 162.51/105.77 new_primRemInt(Main.Neg(x0), x1) 162.51/105.77 new_primRemInt0(Main.Neg(x0), x1) 162.51/105.77 new_primRemInt(Main.Pos(x0), x1) 162.51/105.77 new_primRemInt0(Main.Pos(x0), x1) 162.51/105.77 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (50) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_gcd0Gcd'(Main.Pos(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Pos(new_primModNatS1(x0, x1))) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.77 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.77 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.77 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.77 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.77 new_primModNatS02(x0, x1) 162.51/105.77 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.77 new_primModNatS1(Main.Zero, x0) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (51) TransformationProof (EQUIVALENT) 162.51/105.77 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Pos(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Pos(new_primModNatS1(x0, x1))) at position [1,0] we obtained the following new rules [LPAR04]: 162.51/105.77 162.51/105.77 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Pos(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(x0))), Main.Pos(Main.Succ(Main.Zero))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Pos(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(x0))), Main.Pos(Main.Succ(Main.Zero)))) 162.51/105.77 (new_gcd0Gcd'(Main.Pos(Main.Zero), Main.Pos(Main.Succ(x0))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x0)), Main.Pos(Main.Zero)),new_gcd0Gcd'(Main.Pos(Main.Zero), Main.Pos(Main.Succ(x0))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x0)), Main.Pos(Main.Zero))) 162.51/105.77 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.77 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1)))) 162.51/105.77 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.51/105.77 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.51/105.77 (new_gcd0Gcd'(Main.Pos(Main.Succ(x0)), Main.Pos(Main.Succ(Main.Zero))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Pos(Main.Zero)),new_gcd0Gcd'(Main.Pos(Main.Succ(x0)), Main.Pos(Main.Succ(Main.Zero))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Pos(Main.Zero))) 162.51/105.77 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (52) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Pos(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(x0))), Main.Pos(Main.Succ(Main.Zero))) 162.51/105.77 new_gcd0Gcd'(Main.Pos(Main.Zero), Main.Pos(Main.Succ(x0))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x0)), Main.Pos(Main.Zero)) 162.51/105.77 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.77 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.51/105.77 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.77 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.77 new_gcd0Gcd'(Main.Pos(Main.Succ(x0)), Main.Pos(Main.Succ(Main.Zero))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Pos(Main.Zero)) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.77 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.77 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.77 162.51/105.77 The set Q consists of the following terms: 162.51/105.77 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.77 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.77 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.77 new_primModNatS02(x0, x1) 162.51/105.77 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.77 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.77 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.77 new_primModNatS1(Main.Zero, x0) 162.51/105.77 162.51/105.77 We have to consider all minimal (P,Q,R)-chains. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (53) DependencyGraphProof (EQUIVALENT) 162.51/105.77 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 3 less nodes. 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (54) 162.51/105.77 Complex Obligation (AND) 162.51/105.77 162.51/105.77 ---------------------------------------- 162.51/105.77 162.51/105.77 (55) 162.51/105.77 Obligation: 162.51/105.77 Q DP problem: 162.51/105.77 The TRS P consists of the following rules: 162.51/105.77 162.51/105.77 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.77 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.77 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.77 162.51/105.77 The TRS R consists of the following rules: 162.51/105.77 162.51/105.77 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.77 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.77 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.77 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.78 new_primModNatS02(x0, x1) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (56) UsableRulesProof (EQUIVALENT) 162.51/105.78 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (57) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.78 new_primModNatS02(x0, x1) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (58) QReductionProof (EQUIVALENT) 162.51/105.78 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 162.51/105.78 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.78 new_primModNatS02(x0, x1) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (59) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (60) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (61) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (62) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (63) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (64) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (65) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (66) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (67) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (68) DependencyGraphProof (EQUIVALENT) 162.51/105.78 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (69) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (70) TransformationProof (EQUIVALENT) 162.51/105.78 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Zero))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Zero)))) 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (71) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Zero))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (72) DependencyGraphProof (EQUIVALENT) 162.51/105.78 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (73) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (74) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (75) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (76) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (77) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (78) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (79) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (80) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (81) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (82) DependencyGraphProof (EQUIVALENT) 162.51/105.78 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (83) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (84) TransformationProof (EQUIVALENT) 162.51/105.78 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Zero))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Zero)))) 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (85) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Zero))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (86) DependencyGraphProof (EQUIVALENT) 162.51/105.78 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (87) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (88) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (89) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (90) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (91) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (92) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (93) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (94) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (95) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (96) DependencyGraphProof (EQUIVALENT) 162.51/105.78 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (97) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (98) QDPSizeChangeProof (EQUIVALENT) 162.51/105.78 We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. 162.51/105.78 162.51/105.78 Order:Polynomial interpretation [POLO]: 162.51/105.78 162.51/105.78 POL(Main.Pos(x_1)) = x_1 162.51/105.78 POL(Main.Succ(x_1)) = 1 + x_1 162.51/105.78 POL(Main.Zero) = 1 162.51/105.78 POL(new_primMinusNatS0(x_1, x_2)) = x_1 162.51/105.78 POL(new_primModNatS1(x_1, x_2)) = x_1 162.51/105.78 162.51/105.78 162.51/105.78 162.51/105.78 162.51/105.78 From the DPs we obtained the following set of size-change graphs: 162.51/105.78 *new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) (allowed arguments on rhs = {1, 2}) 162.51/105.78 The graph contains the following edges 2 >= 1, 1 >= 2 162.51/105.78 162.51/105.78 162.51/105.78 *new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) (allowed arguments on rhs = {1, 2}) 162.51/105.78 The graph contains the following edges 2 >= 1, 1 > 2 162.51/105.78 162.51/105.78 162.51/105.78 162.51/105.78 We oriented the following set of usable rules [AAECC05,FROCOS05]. 162.51/105.78 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (99) 162.51/105.78 YES 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (100) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.78 new_primModNatS02(x0, x1) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (101) UsableRulesProof (EQUIVALENT) 162.51/105.78 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (102) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.78 new_primModNatS02(x0, x1) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (103) TransformationProof (EQUIVALENT) 162.51/105.78 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) at position [1,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Zero), Main.Zero))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Zero), Main.Zero)))) 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero)))) 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3)))) 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (104) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Zero), Main.Zero))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.78 new_primModNatS02(x0, x1) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (105) DependencyGraphProof (EQUIVALENT) 162.51/105.78 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (106) 162.51/105.78 Complex Obligation (AND) 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (107) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Zero), Main.Zero))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.78 new_primModNatS02(x0, x1) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (108) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Zero), Main.Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (109) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.78 new_primModNatS02(x0, x1) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (110) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (111) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.78 new_primModNatS02(x0, x1) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (112) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero)))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (113) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.78 new_primModNatS02(x0, x1) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (114) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero)))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (115) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.78 new_primModNatS02(x0, x1) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (116) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Zero)))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (117) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.78 new_primModNatS02(x0, x1) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (118) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero)))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (119) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.78 new_primModNatS02(x0, x1) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (120) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Zero)))))) 162.51/105.78 162.51/105.78 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (121) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.78 new_primModNatS02(x0, x1) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (122) DependencyGraphProof (EQUIVALENT) 162.51/105.78 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (123) 162.51/105.78 Obligation: 162.51/105.78 Q DP problem: 162.51/105.78 The TRS P consists of the following rules: 162.51/105.78 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.51/105.78 162.51/105.78 The TRS R consists of the following rules: 162.51/105.78 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.51/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.51/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.51/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.51/105.78 162.51/105.78 The set Q consists of the following terms: 162.51/105.78 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.51/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.51/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.51/105.78 new_primModNatS02(x0, x1) 162.51/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.51/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.51/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.51/105.78 new_primModNatS1(Main.Zero, x0) 162.51/105.78 162.51/105.78 We have to consider all minimal (P,Q,R)-chains. 162.51/105.78 ---------------------------------------- 162.51/105.78 162.51/105.78 (124) TransformationProof (EQUIVALENT) 162.51/105.78 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.51/105.78 162.51/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.78 162.72/105.78 162.72/105.78 ---------------------------------------- 162.72/105.78 162.72/105.78 (125) 162.72/105.78 Obligation: 162.72/105.78 Q DP problem: 162.72/105.78 The TRS P consists of the following rules: 162.72/105.78 162.72/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.78 162.72/105.78 The TRS R consists of the following rules: 162.72/105.78 162.72/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.78 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.78 162.72/105.78 The set Q consists of the following terms: 162.72/105.78 162.72/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.78 new_primModNatS02(x0, x1) 162.72/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.78 new_primModNatS1(Main.Zero, x0) 162.72/105.78 162.72/105.78 We have to consider all minimal (P,Q,R)-chains. 162.72/105.78 ---------------------------------------- 162.72/105.78 162.72/105.78 (126) TransformationProof (EQUIVALENT) 162.72/105.78 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.78 162.72/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero)))) 162.72/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Zero))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Zero)))) 162.72/105.78 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.78 162.72/105.78 162.72/105.78 ---------------------------------------- 162.72/105.78 162.72/105.78 (127) 162.72/105.78 Obligation: 162.72/105.78 Q DP problem: 162.72/105.78 The TRS P consists of the following rules: 162.72/105.78 162.72/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero))) 162.72/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Zero))) 162.72/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.78 162.72/105.78 The TRS R consists of the following rules: 162.72/105.78 162.72/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.78 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.78 162.72/105.78 The set Q consists of the following terms: 162.72/105.78 162.72/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.78 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.78 new_primModNatS02(x0, x1) 162.72/105.78 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.78 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.78 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.78 new_primModNatS1(Main.Zero, x0) 162.72/105.78 162.72/105.78 We have to consider all minimal (P,Q,R)-chains. 162.72/105.78 ---------------------------------------- 162.72/105.78 162.72/105.78 (128) DependencyGraphProof (EQUIVALENT) 162.72/105.78 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 2 less nodes. 162.72/105.78 ---------------------------------------- 162.72/105.78 162.72/105.78 (129) 162.72/105.78 Obligation: 162.72/105.78 Q DP problem: 162.72/105.78 The TRS P consists of the following rules: 162.72/105.78 162.72/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero))) 162.72/105.78 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.78 162.72/105.78 The TRS R consists of the following rules: 162.72/105.78 162.72/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.78 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.78 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.78 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.78 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.78 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.78 162.72/105.78 The set Q consists of the following terms: 162.72/105.78 162.72/105.78 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.78 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.78 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.78 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (130) QDPOrderProof (EQUIVALENT) 162.72/105.79 We use the reduction pair processor [LPAR04,JAR06]. 162.72/105.79 162.72/105.79 162.72/105.79 The following pairs can be oriented strictly and are deleted. 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero))) 162.72/105.79 The remaining pairs can at least be oriented weakly. 162.72/105.79 Used ordering: Polynomial interpretation [POLO]: 162.72/105.79 162.72/105.79 POL(Main.Pos(x_1)) = 2*x_1 162.72/105.79 POL(Main.Succ(x_1)) = 1 + x_1 162.72/105.79 POL(Main.Zero) = 0 162.72/105.79 POL(new_gcd0Gcd'(x_1, x_2)) = 2*x_1 + 2*x_2 162.72/105.79 POL(new_primMinusNatS0(x_1, x_2)) = x_1 162.72/105.79 POL(new_primModNatS01(x_1, x_2, x_3, x_4)) = 2 + x_1 162.72/105.79 POL(new_primModNatS02(x_1, x_2)) = 1 + x_1 162.72/105.79 POL(new_primModNatS1(x_1, x_2)) = x_1 162.72/105.79 162.72/105.79 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (131) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (132) DependencyGraphProof (EQUIVALENT) 162.72/105.79 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (133) 162.72/105.79 TRUE 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (134) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (135) TransformationProof (EQUIVALENT) 162.72/105.79 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.79 162.72/105.79 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.79 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero))))) 162.72/105.79 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3)))) 162.72/105.79 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (136) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (137) DependencyGraphProof (EQUIVALENT) 162.72/105.79 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (138) 162.72/105.79 Complex Obligation (AND) 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (139) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (140) TransformationProof (EQUIVALENT) 162.72/105.79 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.79 162.72/105.79 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (141) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (142) TransformationProof (EQUIVALENT) 162.72/105.79 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.79 162.72/105.79 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (143) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (144) TransformationProof (EQUIVALENT) 162.72/105.79 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.79 162.72/105.79 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (145) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (146) TransformationProof (EQUIVALENT) 162.72/105.79 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.79 162.72/105.79 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (147) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (148) TransformationProof (EQUIVALENT) 162.72/105.79 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.79 162.72/105.79 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (149) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (150) TransformationProof (EQUIVALENT) 162.72/105.79 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.79 162.72/105.79 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (151) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (152) TransformationProof (EQUIVALENT) 162.72/105.79 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.79 162.72/105.79 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (153) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (154) TransformationProof (EQUIVALENT) 162.72/105.79 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.79 162.72/105.79 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (155) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (156) TransformationProof (EQUIVALENT) 162.72/105.79 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.79 162.72/105.79 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (157) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (158) DependencyGraphProof (EQUIVALENT) 162.72/105.79 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (159) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (160) TransformationProof (EQUIVALENT) 162.72/105.79 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.79 162.72/105.79 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (161) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (162) QDPOrderProof (EQUIVALENT) 162.72/105.79 We use the reduction pair processor [LPAR04,JAR06]. 162.72/105.79 162.72/105.79 162.72/105.79 The following pairs can be oriented strictly and are deleted. 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 The remaining pairs can at least be oriented weakly. 162.72/105.79 Used ordering: Polynomial interpretation [POLO]: 162.72/105.79 162.72/105.79 POL(Main.Pos(x_1)) = 2*x_1 162.72/105.79 POL(Main.Succ(x_1)) = 1 + x_1 162.72/105.79 POL(Main.Zero) = 0 162.72/105.79 POL(new_gcd0Gcd'(x_1, x_2)) = x_1 + x_2 162.72/105.79 POL(new_primMinusNatS0(x_1, x_2)) = x_1 162.72/105.79 POL(new_primModNatS01(x_1, x_2, x_3, x_4)) = 2 + x_1 162.72/105.79 POL(new_primModNatS02(x_1, x_2)) = 2 + x_1 162.72/105.79 POL(new_primModNatS1(x_1, x_2)) = x_1 162.72/105.79 162.72/105.79 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (163) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (164) DependencyGraphProof (EQUIVALENT) 162.72/105.79 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (165) 162.72/105.79 TRUE 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (166) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (167) InductionCalculusProof (EQUIVALENT) 162.72/105.79 Note that final constraints are written in bold face. 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 For Pair new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) the following chains were created: 162.72/105.79 *We consider the chain new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1)), x0, x1))), new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) which results in the following constraint: 162.72/105.79 162.72/105.79 (1) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1)), x0, x1)))=new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1)), x0, x1)))) 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 162.72/105.79 162.72/105.79 (2) (Main.Succ(Main.Succ(Main.Succ(x0)))=x4 & Main.Succ(Main.Succ(x1))=x5 & new_primModNatS01(x4, x5, x0, x1)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1)), x0, x1)))) 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x4, x5, x0, x1)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) which results in the following new constraints: 162.72/105.79 162.72/105.79 (3) (new_primModNatS02(x7, x6)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x7 & Main.Succ(Main.Succ(Main.Zero))=x6 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)), Main.Zero, Main.Zero)))) 162.72/105.79 162.72/105.79 (4) (new_primModNatS02(x10, x9)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8))))=x10 & Main.Succ(Main.Succ(Main.Zero))=x9 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8)))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(x8), Main.Zero)))) 162.72/105.79 162.72/105.79 (5) (new_primModNatS01(x14, x13, x12, x11)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x12))))=x14 & Main.Succ(Main.Succ(Main.Succ(x11)))=x13 & (\/x15:new_primModNatS01(x14, x13, x12, x11)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x15))))) & Main.Succ(Main.Succ(Main.Succ(x12)))=x14 & Main.Succ(Main.Succ(x11))=x13 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x12)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x11)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x11)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x12))), Main.Succ(Main.Succ(x11)), x12, x11)))) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x12))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x11))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x11))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x12)))), Main.Succ(Main.Succ(Main.Succ(x11))), Main.Succ(x12), Main.Succ(x11))))) 162.72/105.79 162.72/105.79 (6) (Main.Succ(Main.Succ(x18))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x18 & Main.Succ(Main.Succ(Main.Succ(x16)))=x17 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(x16))), Main.Zero, Main.Succ(x16))))) 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 We simplified constraint (3) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x7, x6)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) which results in the following new constraint: 162.72/105.79 162.72/105.79 (7) (new_primModNatS1(new_primMinusNatS0(Main.Succ(x20), Main.Succ(Main.Succ(x19))), Main.Succ(Main.Succ(x19)))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x20 & Main.Succ(Main.Succ(Main.Zero))=x19 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)), Main.Zero, Main.Zero)))) 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x10, x9)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) which results in the following new constraint: 162.72/105.79 162.72/105.79 (8) (new_primModNatS1(new_primMinusNatS0(Main.Succ(x26), Main.Succ(Main.Succ(x25))), Main.Succ(Main.Succ(x25)))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8))))=x26 & Main.Succ(Main.Succ(Main.Zero))=x25 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8)))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(x8), Main.Zero)))) 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 We simplified constraint (5) using rule (IV) which results in the following new constraint: 162.72/105.79 162.72/105.79 (9) (new_primModNatS01(x14, x13, x12, x11)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x12))))=x14 & Main.Succ(Main.Succ(Main.Succ(x11)))=x13 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x12))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x11))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x11))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x12)))), Main.Succ(Main.Succ(Main.Succ(x11))), Main.Succ(x12), Main.Succ(x11))))) 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 We simplified constraint (6) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.72/105.79 162.72/105.79 (10) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(x16))), Main.Zero, Main.Succ(x16))))) 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 We simplified constraint (7) using rules (III), (IV), (VII) which results in the following new constraint: 162.72/105.79 162.72/105.79 (11) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)), Main.Zero, Main.Zero)))) 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 We simplified constraint (8) using rules (III), (IV), (VII) which results in the following new constraint: 162.72/105.79 162.72/105.79 (12) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8)))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(x8), Main.Zero)))) 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 We simplified constraint (9) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x14, x13, x12, x11)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) which results in the following new constraints: 162.72/105.79 162.72/105.79 (13) (new_primModNatS02(x32, x31)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x32 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x31 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.79 162.72/105.79 (14) (new_primModNatS02(x35, x34)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x33)))))=x35 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x34 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x33)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x33))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x33)), Main.Succ(Main.Zero))))) 162.72/105.79 162.72/105.79 (15) (new_primModNatS01(x39, x38, x37, x36)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37)))))=x39 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36))))=x38 & (\/x40:new_primModNatS01(x39, x38, x37, x36)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x40))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37))))=x39 & Main.Succ(Main.Succ(Main.Succ(x36)))=x38 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37)))), Main.Succ(Main.Succ(Main.Succ(x36))), Main.Succ(x37), Main.Succ(x36))))) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))), Main.Succ(Main.Succ(x37)), Main.Succ(Main.Succ(x36)))))) 162.72/105.79 162.72/105.79 (16) (Main.Succ(Main.Succ(x43))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x43 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41))))=x42 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(x41)))))) 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 We simplified constraint (13) using rules (III), (IV) which results in the following new constraint: 162.72/105.79 162.72/105.79 (17) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 We simplified constraint (14) using rules (III), (IV) which results in the following new constraint: 162.72/105.79 162.72/105.79 (18) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x33)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x33))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x33)), Main.Succ(Main.Zero))))) 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 We simplified constraint (15) using rules (III), (IV) which results in the following new constraint: 162.72/105.79 162.72/105.79 (19) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))), Main.Succ(Main.Succ(x37)), Main.Succ(Main.Succ(x36)))))) 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 We simplified constraint (16) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.72/105.79 162.72/105.79 (20) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(x41)))))) 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 To summarize, we get the following constraints P__>=_ for the following pairs. 162.72/105.79 162.72/105.79 *new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.79 162.72/105.79 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(x41)))))) 162.72/105.79 162.72/105.79 162.72/105.79 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(x16))), Main.Zero, Main.Succ(x16))))) 162.72/105.79 162.72/105.79 162.72/105.79 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)), Main.Zero, Main.Zero)))) 162.72/105.79 162.72/105.79 162.72/105.79 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8)))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(x8), Main.Zero)))) 162.72/105.79 162.72/105.79 162.72/105.79 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.79 162.72/105.79 162.72/105.79 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x33)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x33))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x33)), Main.Succ(Main.Zero))))) 162.72/105.79 162.72/105.79 162.72/105.79 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))), Main.Succ(Main.Succ(x37)), Main.Succ(Main.Succ(x36)))))) 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 162.72/105.79 The constraints for P_> respective P_bound are constructed from P__>=_ where we just replace every occurence of "t _>=_ s" in P__>=_ by "t > s" respective "t _>=_ c". Here c stands for the fresh constant used for P_bound. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (168) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (169) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.79 new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primRemInt(Main.Neg(x0), x1) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primRemInt(Main.Pos(x0), x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (170) UsableRulesProof (EQUIVALENT) 162.72/105.79 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (171) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.79 new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.79 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primRemInt(Main.Neg(x0), x1) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primRemInt(Main.Pos(x0), x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (172) QReductionProof (EQUIVALENT) 162.72/105.79 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 162.72/105.79 162.72/105.79 new_primRemInt(Main.Neg(x0), x1) 162.72/105.79 new_primRemInt(Main.Pos(x0), x1) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (173) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.79 new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.79 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (174) TransformationProof (EQUIVALENT) 162.72/105.79 By narrowing [LPAR04] the rule new_gcd0Gcd'(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) at position [1] we obtained the following new rules [LPAR04]: 162.72/105.79 162.72/105.79 (new_gcd0Gcd'(Main.Pos(x0), Main.Neg(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x1)), Main.Pos(new_primModNatS1(x0, x1))),new_gcd0Gcd'(Main.Pos(x0), Main.Neg(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x1)), Main.Pos(new_primModNatS1(x0, x1)))) 162.72/105.79 (new_gcd0Gcd'(Main.Neg(x0), Main.Neg(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))),new_gcd0Gcd'(Main.Neg(x0), Main.Neg(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1)))) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (175) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.79 new_gcd0Gcd'(Main.Pos(x0), Main.Neg(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x1)), Main.Pos(new_primModNatS1(x0, x1))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(x0), Main.Neg(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.79 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (176) DependencyGraphProof (EQUIVALENT) 162.72/105.79 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (177) 162.72/105.79 Complex Obligation (AND) 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (178) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Neg(x0), Main.Neg(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.79 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (179) UsableRulesProof (EQUIVALENT) 162.72/105.79 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (180) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Neg(x0), Main.Neg(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (181) QReductionProof (EQUIVALENT) 162.72/105.79 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 162.72/105.79 162.72/105.79 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.79 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (182) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Neg(x0), Main.Neg(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (183) TransformationProof (EQUIVALENT) 162.72/105.79 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Neg(x0), Main.Neg(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.79 162.72/105.79 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x0))), Main.Neg(Main.Succ(Main.Zero))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x0))), Main.Neg(Main.Succ(Main.Zero)))) 162.72/105.79 (new_gcd0Gcd'(Main.Neg(Main.Zero), Main.Neg(Main.Succ(x0))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x0)), Main.Neg(Main.Zero)),new_gcd0Gcd'(Main.Neg(Main.Zero), Main.Neg(Main.Succ(x0))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x0)), Main.Neg(Main.Zero))) 162.72/105.79 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.79 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Neg(new_primModNatS01(Main.Succ(x0), x1, x0, x1))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Neg(new_primModNatS01(Main.Succ(x0), x1, x0, x1)))) 162.72/105.79 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.79 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.79 (new_gcd0Gcd'(Main.Neg(Main.Succ(x0)), Main.Neg(Main.Succ(Main.Zero))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Neg(Main.Zero)),new_gcd0Gcd'(Main.Neg(Main.Succ(x0)), Main.Neg(Main.Succ(Main.Zero))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Neg(Main.Zero))) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (184) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x0))), Main.Neg(Main.Succ(Main.Zero))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Zero), Main.Neg(Main.Succ(x0))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x0)), Main.Neg(Main.Zero)) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Neg(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(x0)), Main.Neg(Main.Succ(Main.Zero))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Neg(Main.Zero)) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (185) DependencyGraphProof (EQUIVALENT) 162.72/105.79 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 3 less nodes. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (186) 162.72/105.79 Complex Obligation (AND) 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (187) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (188) UsableRulesProof (EQUIVALENT) 162.72/105.79 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (189) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (190) QReductionProof (EQUIVALENT) 162.72/105.79 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 162.72/105.79 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.79 new_primModNatS02(x0, x1) 162.72/105.79 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.79 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (191) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (192) TransformationProof (EQUIVALENT) 162.72/105.79 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.79 162.72/105.79 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (193) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (194) TransformationProof (EQUIVALENT) 162.72/105.79 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.79 162.72/105.79 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (195) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (196) TransformationProof (EQUIVALENT) 162.72/105.79 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.79 162.72/105.79 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero))))) 162.72/105.79 162.72/105.79 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (197) 162.72/105.79 Obligation: 162.72/105.79 Q DP problem: 162.72/105.79 The TRS P consists of the following rules: 162.72/105.79 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.79 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.72/105.79 162.72/105.79 The TRS R consists of the following rules: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.79 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.79 162.72/105.79 The set Q consists of the following terms: 162.72/105.79 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.79 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.79 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.79 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.79 new_primModNatS1(Main.Zero, x0) 162.72/105.79 162.72/105.79 We have to consider all minimal (P,Q,R)-chains. 162.72/105.79 ---------------------------------------- 162.72/105.79 162.72/105.79 (198) TransformationProof (EQUIVALENT) 162.72/105.79 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.79 162.72/105.79 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (199) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (200) DependencyGraphProof (EQUIVALENT) 162.72/105.80 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (201) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (202) TransformationProof (EQUIVALENT) 162.72/105.80 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Zero))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Zero)))) 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (203) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Zero))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (204) DependencyGraphProof (EQUIVALENT) 162.72/105.80 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (205) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (206) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (207) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (208) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (209) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (210) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (211) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (212) DependencyGraphProof (EQUIVALENT) 162.72/105.80 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (213) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (214) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (215) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (216) TransformationProof (EQUIVALENT) 162.72/105.80 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Zero))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Zero)))) 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (217) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Zero))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (218) DependencyGraphProof (EQUIVALENT) 162.72/105.80 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (219) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (220) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (221) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (222) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (223) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (224) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (225) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (226) DependencyGraphProof (EQUIVALENT) 162.72/105.80 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (227) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (228) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (229) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (230) QDPSizeChangeProof (EQUIVALENT) 162.72/105.80 We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. 162.72/105.80 162.72/105.80 Order:Polynomial interpretation [POLO]: 162.72/105.80 162.72/105.80 POL(Main.Neg(x_1)) = x_1 162.72/105.80 POL(Main.Succ(x_1)) = 1 + x_1 162.72/105.80 POL(Main.Zero) = 1 162.72/105.80 POL(new_primMinusNatS0(x_1, x_2)) = x_1 162.72/105.80 POL(new_primModNatS1(x_1, x_2)) = x_1 162.72/105.80 162.72/105.80 162.72/105.80 162.72/105.80 162.72/105.80 From the DPs we obtained the following set of size-change graphs: 162.72/105.80 *new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) (allowed arguments on rhs = {1, 2}) 162.72/105.80 The graph contains the following edges 2 >= 1, 1 > 2 162.72/105.80 162.72/105.80 162.72/105.80 *new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) (allowed arguments on rhs = {1, 2}) 162.72/105.80 The graph contains the following edges 2 >= 1, 1 >= 2 162.72/105.80 162.72/105.80 162.72/105.80 162.72/105.80 We oriented the following set of usable rules [AAECC05,FROCOS05]. 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (231) 162.72/105.80 YES 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (232) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Neg(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (233) UsableRulesProof (EQUIVALENT) 162.72/105.80 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (234) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Neg(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (235) TransformationProof (EQUIVALENT) 162.72/105.80 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Neg(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Zero), Main.Zero))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Zero), Main.Zero)))) 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero)))) 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3)))) 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (236) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Zero), Main.Zero))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (237) DependencyGraphProof (EQUIVALENT) 162.72/105.80 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (238) 162.72/105.80 Complex Obligation (AND) 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (239) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Zero), Main.Zero))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (240) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Zero), Main.Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (241) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (242) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (243) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (244) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (245) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (246) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (247) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (248) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (249) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (250) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (251) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (252) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (253) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (254) DependencyGraphProof (EQUIVALENT) 162.72/105.80 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (255) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (256) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (257) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (258) TransformationProof (EQUIVALENT) 162.72/105.80 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero)))) 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Zero))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Zero)))) 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (259) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Zero))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (260) DependencyGraphProof (EQUIVALENT) 162.72/105.80 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 2 less nodes. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (261) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (262) QDPOrderProof (EQUIVALENT) 162.72/105.80 We use the reduction pair processor [LPAR04,JAR06]. 162.72/105.80 162.72/105.80 162.72/105.80 The following pairs can be oriented strictly and are deleted. 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero))) 162.72/105.80 The remaining pairs can at least be oriented weakly. 162.72/105.80 Used ordering: Polynomial interpretation [POLO]: 162.72/105.80 162.72/105.80 POL(Main.Neg(x_1)) = 2*x_1 162.72/105.80 POL(Main.Succ(x_1)) = 1 + x_1 162.72/105.80 POL(Main.Zero) = 0 162.72/105.80 POL(new_gcd0Gcd'(x_1, x_2)) = 2*x_1 + 2*x_2 162.72/105.80 POL(new_primMinusNatS0(x_1, x_2)) = x_1 162.72/105.80 POL(new_primModNatS01(x_1, x_2, x_3, x_4)) = 2 + x_1 162.72/105.80 POL(new_primModNatS02(x_1, x_2)) = 1 + x_1 162.72/105.80 POL(new_primModNatS1(x_1, x_2)) = x_1 162.72/105.80 162.72/105.80 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (263) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (264) DependencyGraphProof (EQUIVALENT) 162.72/105.80 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (265) 162.72/105.80 TRUE 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (266) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (267) TransformationProof (EQUIVALENT) 162.72/105.80 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero))))) 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3)))) 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (268) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (269) DependencyGraphProof (EQUIVALENT) 162.72/105.80 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (270) 162.72/105.80 Complex Obligation (AND) 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (271) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (272) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (273) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (274) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (275) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (276) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.80 162.72/105.80 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.80 162.72/105.80 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (277) 162.72/105.80 Obligation: 162.72/105.80 Q DP problem: 162.72/105.80 The TRS P consists of the following rules: 162.72/105.80 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.80 162.72/105.80 The TRS R consists of the following rules: 162.72/105.80 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.80 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.80 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.80 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.80 162.72/105.80 The set Q consists of the following terms: 162.72/105.80 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.80 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.80 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.80 new_primModNatS02(x0, x1) 162.72/105.80 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.80 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.80 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.80 new_primModNatS1(Main.Zero, x0) 162.72/105.80 162.72/105.80 We have to consider all minimal (P,Q,R)-chains. 162.72/105.80 ---------------------------------------- 162.72/105.80 162.72/105.80 (278) TransformationProof (EQUIVALENT) 162.72/105.80 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (279) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (280) TransformationProof (EQUIVALENT) 162.72/105.81 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (281) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (282) TransformationProof (EQUIVALENT) 162.72/105.81 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (283) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (284) TransformationProof (EQUIVALENT) 162.72/105.81 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (285) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (286) TransformationProof (EQUIVALENT) 162.72/105.81 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (287) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (288) TransformationProof (EQUIVALENT) 162.72/105.81 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (289) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (290) DependencyGraphProof (EQUIVALENT) 162.72/105.81 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (291) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (292) TransformationProof (EQUIVALENT) 162.72/105.81 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (293) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (294) QDPOrderProof (EQUIVALENT) 162.72/105.81 We use the reduction pair processor [LPAR04,JAR06]. 162.72/105.81 162.72/105.81 162.72/105.81 The following pairs can be oriented strictly and are deleted. 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 The remaining pairs can at least be oriented weakly. 162.72/105.81 Used ordering: Polynomial interpretation [POLO]: 162.72/105.81 162.72/105.81 POL(Main.Neg(x_1)) = 2*x_1 162.72/105.81 POL(Main.Succ(x_1)) = 1 + x_1 162.72/105.81 POL(Main.Zero) = 0 162.72/105.81 POL(new_gcd0Gcd'(x_1, x_2)) = x_1 + x_2 162.72/105.81 POL(new_primMinusNatS0(x_1, x_2)) = x_1 162.72/105.81 POL(new_primModNatS01(x_1, x_2, x_3, x_4)) = 2 + x_1 162.72/105.81 POL(new_primModNatS02(x_1, x_2)) = 2 + x_1 162.72/105.81 POL(new_primModNatS1(x_1, x_2)) = x_1 162.72/105.81 162.72/105.81 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (295) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (296) DependencyGraphProof (EQUIVALENT) 162.72/105.81 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (297) 162.72/105.81 TRUE 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (298) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (299) InductionCalculusProof (EQUIVALENT) 162.72/105.81 Note that final constraints are written in bold face. 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 For Pair new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) the following chains were created: 162.72/105.81 *We consider the chain new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1)), x0, x1))), new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) which results in the following constraint: 162.72/105.81 162.72/105.81 (1) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1)), x0, x1)))=new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1)), x0, x1)))) 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 162.72/105.81 162.72/105.81 (2) (Main.Succ(Main.Succ(Main.Succ(x0)))=x4 & Main.Succ(Main.Succ(x1))=x5 & new_primModNatS01(x4, x5, x0, x1)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1)), x0, x1)))) 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x4, x5, x0, x1)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) which results in the following new constraints: 162.72/105.81 162.72/105.81 (3) (new_primModNatS02(x7, x6)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x7 & Main.Succ(Main.Succ(Main.Zero))=x6 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)), Main.Zero, Main.Zero)))) 162.72/105.81 162.72/105.81 (4) (new_primModNatS02(x10, x9)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8))))=x10 & Main.Succ(Main.Succ(Main.Zero))=x9 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8)))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(x8), Main.Zero)))) 162.72/105.81 162.72/105.81 (5) (new_primModNatS01(x14, x13, x12, x11)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x12))))=x14 & Main.Succ(Main.Succ(Main.Succ(x11)))=x13 & (\/x15:new_primModNatS01(x14, x13, x12, x11)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x15))))) & Main.Succ(Main.Succ(Main.Succ(x12)))=x14 & Main.Succ(Main.Succ(x11))=x13 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x12)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x11)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x11)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x12))), Main.Succ(Main.Succ(x11)), x12, x11)))) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x12))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x11))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x11))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x12)))), Main.Succ(Main.Succ(Main.Succ(x11))), Main.Succ(x12), Main.Succ(x11))))) 162.72/105.81 162.72/105.81 (6) (Main.Succ(Main.Succ(x18))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x18 & Main.Succ(Main.Succ(Main.Succ(x16)))=x17 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(x16))), Main.Zero, Main.Succ(x16))))) 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 We simplified constraint (3) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x7, x6)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) which results in the following new constraint: 162.72/105.81 162.72/105.81 (7) (new_primModNatS1(new_primMinusNatS0(Main.Succ(x20), Main.Succ(Main.Succ(x19))), Main.Succ(Main.Succ(x19)))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x20 & Main.Succ(Main.Succ(Main.Zero))=x19 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)), Main.Zero, Main.Zero)))) 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x10, x9)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) which results in the following new constraint: 162.72/105.81 162.72/105.81 (8) (new_primModNatS1(new_primMinusNatS0(Main.Succ(x26), Main.Succ(Main.Succ(x25))), Main.Succ(Main.Succ(x25)))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8))))=x26 & Main.Succ(Main.Succ(Main.Zero))=x25 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8)))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(x8), Main.Zero)))) 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 We simplified constraint (5) using rule (IV) which results in the following new constraint: 162.72/105.81 162.72/105.81 (9) (new_primModNatS01(x14, x13, x12, x11)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x12))))=x14 & Main.Succ(Main.Succ(Main.Succ(x11)))=x13 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x12))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x11))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x11))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x12)))), Main.Succ(Main.Succ(Main.Succ(x11))), Main.Succ(x12), Main.Succ(x11))))) 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 We simplified constraint (6) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.72/105.81 162.72/105.81 (10) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(x16))), Main.Zero, Main.Succ(x16))))) 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 We simplified constraint (7) using rules (III), (IV), (VII) which results in the following new constraint: 162.72/105.81 162.72/105.81 (11) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)), Main.Zero, Main.Zero)))) 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 We simplified constraint (8) using rules (III), (IV), (VII) which results in the following new constraint: 162.72/105.81 162.72/105.81 (12) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8)))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(x8), Main.Zero)))) 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 We simplified constraint (9) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x14, x13, x12, x11)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) which results in the following new constraints: 162.72/105.81 162.72/105.81 (13) (new_primModNatS02(x32, x31)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x32 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x31 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.81 162.72/105.81 (14) (new_primModNatS02(x35, x34)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x33)))))=x35 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x34 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x33)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x33))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x33)), Main.Succ(Main.Zero))))) 162.72/105.81 162.72/105.81 (15) (new_primModNatS01(x39, x38, x37, x36)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37)))))=x39 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36))))=x38 & (\/x40:new_primModNatS01(x39, x38, x37, x36)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x40))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37))))=x39 & Main.Succ(Main.Succ(Main.Succ(x36)))=x38 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37)))), Main.Succ(Main.Succ(Main.Succ(x36))), Main.Succ(x37), Main.Succ(x36))))) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))), Main.Succ(Main.Succ(x37)), Main.Succ(Main.Succ(x36)))))) 162.72/105.81 162.72/105.81 (16) (Main.Succ(Main.Succ(x43))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x43 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41))))=x42 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(x41)))))) 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 We simplified constraint (13) using rules (III), (IV) which results in the following new constraint: 162.72/105.81 162.72/105.81 (17) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 We simplified constraint (14) using rules (III), (IV) which results in the following new constraint: 162.72/105.81 162.72/105.81 (18) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x33)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x33))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x33)), Main.Succ(Main.Zero))))) 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 We simplified constraint (15) using rules (III), (IV) which results in the following new constraint: 162.72/105.81 162.72/105.81 (19) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))), Main.Succ(Main.Succ(x37)), Main.Succ(Main.Succ(x36)))))) 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 We simplified constraint (16) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.72/105.81 162.72/105.81 (20) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(x41)))))) 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 To summarize, we get the following constraints P__>=_ for the following pairs. 162.72/105.81 162.72/105.81 *new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.81 162.72/105.81 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(x41)))))) 162.72/105.81 162.72/105.81 162.72/105.81 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(x16))), Main.Zero, Main.Succ(x16))))) 162.72/105.81 162.72/105.81 162.72/105.81 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)), Main.Zero, Main.Zero)))) 162.72/105.81 162.72/105.81 162.72/105.81 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8)))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(x8), Main.Zero)))) 162.72/105.81 162.72/105.81 162.72/105.81 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.81 162.72/105.81 162.72/105.81 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x33)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x33))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x33)), Main.Succ(Main.Zero))))) 162.72/105.81 162.72/105.81 162.72/105.81 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x37))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x36)))), Main.Succ(Main.Succ(x37)), Main.Succ(Main.Succ(x36)))))) 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 162.72/105.81 The constraints for P_> respective P_bound are constructed from P__>=_ where we just replace every occurence of "t _>=_ s" in P__>=_ by "t > s" respective "t _>=_ c". Here c stands for the fresh constant used for P_bound. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (300) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (301) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Pos(x0), Main.Neg(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x1)), Main.Pos(new_primModNatS1(x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.81 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (302) UsableRulesProof (EQUIVALENT) 162.72/105.81 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (303) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Pos(x0), Main.Neg(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x1)), Main.Pos(new_primModNatS1(x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (304) QReductionProof (EQUIVALENT) 162.72/105.81 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 162.72/105.81 162.72/105.81 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.81 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (305) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Pos(x0), Main.Neg(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x1)), Main.Pos(new_primModNatS1(x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (306) TransformationProof (EQUIVALENT) 162.72/105.81 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Pos(x0), Main.Neg(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x1)), Main.Pos(new_primModNatS1(x0, x1))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x0))), Main.Pos(Main.Succ(Main.Zero))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x0))), Main.Pos(Main.Succ(Main.Zero)))) 162.72/105.81 (new_gcd0Gcd'(Main.Pos(Main.Zero), Main.Neg(Main.Succ(x0))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x0)), Main.Pos(Main.Zero)),new_gcd0Gcd'(Main.Pos(Main.Zero), Main.Neg(Main.Succ(x0))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x0)), Main.Pos(Main.Zero))) 162.72/105.81 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.81 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1)))) 162.72/105.81 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.81 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.81 (new_gcd0Gcd'(Main.Pos(Main.Succ(x0)), Main.Neg(Main.Succ(Main.Zero))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Pos(Main.Zero)),new_gcd0Gcd'(Main.Pos(Main.Succ(x0)), Main.Neg(Main.Succ(Main.Zero))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Pos(Main.Zero))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (307) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x0))), Main.Pos(Main.Succ(Main.Zero))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Zero), Main.Neg(Main.Succ(x0))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(x0)), Main.Pos(Main.Zero)) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(x0)), Main.Neg(Main.Succ(Main.Zero))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Pos(Main.Zero)) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (308) DependencyGraphProof (EQUIVALENT) 162.72/105.81 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 2 less nodes. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (309) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x0))), Main.Pos(Main.Succ(Main.Zero))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (310) TransformationProof (EQUIVALENT) 162.72/105.81 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (311) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x0))), Main.Pos(Main.Succ(Main.Zero))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (312) TransformationProof (EQUIVALENT) 162.72/105.81 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (313) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x0))), Main.Pos(Main.Succ(Main.Zero))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (314) TransformationProof (EQUIVALENT) 162.72/105.81 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (315) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x0))), Main.Pos(Main.Succ(Main.Zero))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (316) TransformationProof (EQUIVALENT) 162.72/105.81 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (317) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x0))), Main.Pos(Main.Succ(Main.Zero))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (318) DependencyGraphProof (EQUIVALENT) 162.72/105.81 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (319) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x0))), Main.Pos(Main.Succ(Main.Zero))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (320) TransformationProof (EQUIVALENT) 162.72/105.81 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Neg(x0), Main.Pos(Main.Succ(x1))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x1)), Main.Neg(new_primModNatS1(x0, x1))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Pos(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(x0))), Main.Neg(Main.Succ(Main.Zero))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Pos(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(x0))), Main.Neg(Main.Succ(Main.Zero)))) 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Zero), Main.Pos(Main.Succ(x0))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x0)), Main.Neg(Main.Zero)),new_gcd0Gcd'(Main.Neg(Main.Zero), Main.Pos(Main.Succ(x0))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x0)), Main.Neg(Main.Zero))) 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Neg(new_primModNatS01(Main.Succ(x0), x1, x0, x1))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Neg(new_primModNatS01(Main.Succ(x0), x1, x0, x1)))) 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(x0)), Main.Pos(Main.Succ(Main.Zero))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Neg(Main.Zero)),new_gcd0Gcd'(Main.Neg(Main.Succ(x0)), Main.Pos(Main.Succ(Main.Zero))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Neg(Main.Zero))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (321) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Neg(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(x0))), Main.Pos(Main.Succ(Main.Zero))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Zero)), Main.Pos(Main.Succ(Main.Succ(x0)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(x0))), Main.Neg(Main.Succ(Main.Zero))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Zero), Main.Pos(Main.Succ(x0))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(x0)), Main.Neg(Main.Zero)) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Neg(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(x0)), Main.Pos(Main.Succ(Main.Zero))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Zero)), Main.Neg(Main.Zero)) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (322) DependencyGraphProof (EQUIVALENT) 162.72/105.81 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 3 SCCs with 5 less nodes. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (323) 162.72/105.81 Complex Obligation (AND) 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (324) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (325) UsableRulesProof (EQUIVALENT) 162.72/105.81 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (326) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (327) QReductionProof (EQUIVALENT) 162.72/105.81 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 162.72/105.81 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.81 new_primModNatS02(x0, x1) 162.72/105.81 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.81 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (328) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (329) TransformationProof (EQUIVALENT) 162.72/105.81 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (330) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (331) TransformationProof (EQUIVALENT) 162.72/105.81 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (332) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (333) TransformationProof (EQUIVALENT) 162.72/105.81 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Zero))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Zero)))) 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (334) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Zero))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (335) DependencyGraphProof (EQUIVALENT) 162.72/105.81 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (336) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (337) TransformationProof (EQUIVALENT) 162.72/105.81 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (338) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (339) TransformationProof (EQUIVALENT) 162.72/105.81 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (340) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (341) TransformationProof (EQUIVALENT) 162.72/105.81 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (342) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (343) DependencyGraphProof (EQUIVALENT) 162.72/105.81 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (344) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (345) TransformationProof (EQUIVALENT) 162.72/105.81 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.81 162.72/105.81 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero))))) 162.72/105.81 162.72/105.81 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (346) 162.72/105.81 Obligation: 162.72/105.81 Q DP problem: 162.72/105.81 The TRS P consists of the following rules: 162.72/105.81 162.72/105.81 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.81 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.72/105.81 162.72/105.81 The TRS R consists of the following rules: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.81 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.81 162.72/105.81 The set Q consists of the following terms: 162.72/105.81 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.81 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.81 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.81 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.81 new_primModNatS1(Main.Zero, x0) 162.72/105.81 162.72/105.81 We have to consider all minimal (P,Q,R)-chains. 162.72/105.81 ---------------------------------------- 162.72/105.81 162.72/105.81 (347) TransformationProof (EQUIVALENT) 162.72/105.81 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Zero))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Zero)))) 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (348) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Zero))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (349) DependencyGraphProof (EQUIVALENT) 162.72/105.82 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (350) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (351) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (352) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (353) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (354) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (355) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (356) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (357) DependencyGraphProof (EQUIVALENT) 162.72/105.82 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (358) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (359) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (360) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (361) QDPSizeChangeProof (EQUIVALENT) 162.72/105.82 We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. 162.72/105.82 162.72/105.82 Order:Polynomial interpretation [POLO]: 162.72/105.82 162.72/105.82 POL(Main.Neg(x_1)) = x_1 162.72/105.82 POL(Main.Pos(x_1)) = 1 162.72/105.82 POL(Main.Succ(x_1)) = 1 + x_1 162.72/105.82 POL(Main.Zero) = 1 162.72/105.82 POL(new_primMinusNatS0(x_1, x_2)) = x_1 162.72/105.82 POL(new_primModNatS1(x_1, x_2)) = x_1 162.72/105.82 162.72/105.82 162.72/105.82 162.72/105.82 162.72/105.82 From the DPs we obtained the following set of size-change graphs: 162.72/105.82 *new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) (allowed arguments on rhs = {1, 2}) 162.72/105.82 The graph contains the following edges 2 >= 1, 1 > 2 162.72/105.82 162.72/105.82 162.72/105.82 *new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Zero))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) (allowed arguments on rhs = {1, 2}) 162.72/105.82 The graph contains the following edges 2 >= 1, 1 >= 2 162.72/105.82 162.72/105.82 162.72/105.82 162.72/105.82 We oriented the following set of usable rules [AAECC05,FROCOS05]. 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (362) 162.72/105.82 YES 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (363) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.82 new_primModNatS02(x0, x1) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (364) UsableRulesProof (EQUIVALENT) 162.72/105.82 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (365) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.82 new_primModNatS02(x0, x1) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (366) QReductionProof (EQUIVALENT) 162.72/105.82 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 162.72/105.82 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.82 new_primModNatS02(x0, x1) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (367) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (368) TransformationProof (EQUIVALENT) 162.72/105.82 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Zero))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Zero)))) 162.72/105.82 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.82 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (369) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Zero))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (370) DependencyGraphProof (EQUIVALENT) 162.72/105.82 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (371) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (372) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (373) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (374) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (375) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (376) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (377) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (378) DependencyGraphProof (EQUIVALENT) 162.72/105.82 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (379) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (380) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (381) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (382) TransformationProof (EQUIVALENT) 162.72/105.82 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Zero))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Zero)))) 162.72/105.82 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.82 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (383) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Zero))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (384) DependencyGraphProof (EQUIVALENT) 162.72/105.82 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (385) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (386) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (387) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (388) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x0)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (389) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (390) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (391) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Zero, Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (392) DependencyGraphProof (EQUIVALENT) 162.72/105.82 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (393) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (394) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x0), Main.Zero), Main.Succ(Main.Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (395) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (396) QDPSizeChangeProof (EQUIVALENT) 162.72/105.82 We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. 162.72/105.82 162.72/105.82 Order:Polynomial interpretation [POLO]: 162.72/105.82 162.72/105.82 POL(Main.Neg(x_1)) = 1 162.72/105.82 POL(Main.Pos(x_1)) = x_1 162.72/105.82 POL(Main.Succ(x_1)) = 1 + x_1 162.72/105.82 POL(Main.Zero) = 1 162.72/105.82 POL(new_primMinusNatS0(x_1, x_2)) = x_1 162.72/105.82 POL(new_primModNatS1(x_1, x_2)) = x_1 162.72/105.82 162.72/105.82 162.72/105.82 162.72/105.82 162.72/105.82 From the DPs we obtained the following set of size-change graphs: 162.72/105.82 *new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(new_primModNatS1(Main.Succ(x0), Main.Succ(Main.Zero)))) (allowed arguments on rhs = {1, 2}) 162.72/105.82 The graph contains the following edges 2 >= 1, 1 > 2 162.72/105.82 162.72/105.82 162.72/105.82 *new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Zero))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) (allowed arguments on rhs = {1, 2}) 162.72/105.82 The graph contains the following edges 2 >= 1, 1 >= 2 162.72/105.82 162.72/105.82 162.72/105.82 162.72/105.82 We oriented the following set of usable rules [AAECC05,FROCOS05]. 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (397) 162.72/105.82 YES 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (398) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Neg(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.82 new_primModNatS02(x0, x1) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (399) UsableRulesProof (EQUIVALENT) 162.72/105.82 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (400) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Neg(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.82 new_primModNatS02(x0, x1) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (401) TransformationProof (EQUIVALENT) 162.72/105.82 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Neg(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Zero), Main.Zero))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Zero), Main.Zero)))) 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero)))) 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3)))) 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (402) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Zero), Main.Zero))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.82 new_primModNatS02(x0, x1) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (403) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Zero), Main.Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (404) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.82 new_primModNatS02(x0, x1) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (405) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (406) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.82 new_primModNatS02(x0, x1) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (407) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (408) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.82 new_primModNatS02(x0, x1) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (409) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (410) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.82 new_primModNatS02(x0, x1) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (411) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (412) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.82 new_primModNatS02(x0, x1) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (413) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (414) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.82 new_primModNatS02(x0, x1) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (415) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (416) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.82 new_primModNatS02(x0, x1) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (417) DependencyGraphProof (EQUIVALENT) 162.72/105.82 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (418) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.82 new_primModNatS02(x0, x1) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (419) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (420) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.82 new_primModNatS02(x0, x1) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (421) TransformationProof (EQUIVALENT) 162.72/105.82 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero))))) 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3)))) 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (422) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.82 new_primModNatS02(x0, x1) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (423) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.82 162.72/105.82 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (424) 162.72/105.82 Obligation: 162.72/105.82 Q DP problem: 162.72/105.82 The TRS P consists of the following rules: 162.72/105.82 162.72/105.82 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.82 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.82 162.72/105.82 The TRS R consists of the following rules: 162.72/105.82 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.82 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.82 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.82 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.82 162.72/105.82 The set Q consists of the following terms: 162.72/105.82 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.82 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.82 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.82 new_primModNatS02(x0, x1) 162.72/105.82 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.82 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.82 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.82 new_primModNatS1(Main.Zero, x0) 162.72/105.82 162.72/105.82 We have to consider all minimal (P,Q,R)-chains. 162.72/105.82 ---------------------------------------- 162.72/105.82 162.72/105.82 (425) TransformationProof (EQUIVALENT) 162.72/105.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.82 162.72/105.82 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (426) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (427) TransformationProof (EQUIVALENT) 162.72/105.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (428) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (429) TransformationProof (EQUIVALENT) 162.72/105.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (430) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (431) TransformationProof (EQUIVALENT) 162.72/105.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (432) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (433) TransformationProof (EQUIVALENT) 162.72/105.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (434) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (435) TransformationProof (EQUIVALENT) 162.72/105.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (436) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (437) TransformationProof (EQUIVALENT) 162.72/105.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (438) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (439) TransformationProof (EQUIVALENT) 162.72/105.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (440) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Zero, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (441) DependencyGraphProof (EQUIVALENT) 162.72/105.83 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (442) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (443) TransformationProof (EQUIVALENT) 162.72/105.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (444) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (445) TransformationProof (EQUIVALENT) 162.72/105.83 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(x0)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(x1)))), Main.Pos(new_primModNatS01(Main.Succ(x0), x1, x0, x1))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Zero), Main.Zero))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Zero), Main.Zero)))) 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero)))) 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3)))) 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (446) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Zero), Main.Zero))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (447) DependencyGraphProof (EQUIVALENT) 162.72/105.83 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 3 SCCs with 1 less node. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (448) 162.72/105.83 Complex Obligation (AND) 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (449) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (450) TransformationProof (EQUIVALENT) 162.72/105.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(x2)), Main.Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (451) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (452) TransformationProof (EQUIVALENT) 162.72/105.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (453) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (454) TransformationProof (EQUIVALENT) 162.72/105.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (455) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (456) TransformationProof (EQUIVALENT) 162.72/105.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (457) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (458) TransformationProof (EQUIVALENT) 162.72/105.83 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero)))) 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Zero))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Zero)))) 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (459) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Zero))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (460) DependencyGraphProof (EQUIVALENT) 162.72/105.83 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 2 less nodes. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (461) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (462) QDPOrderProof (EQUIVALENT) 162.72/105.83 We use the reduction pair processor [LPAR04,JAR06]. 162.72/105.83 162.72/105.83 162.72/105.83 The following pairs can be oriented strictly and are deleted. 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero))) 162.72/105.83 The remaining pairs can at least be oriented weakly. 162.72/105.83 Used ordering: Polynomial interpretation [POLO]: 162.72/105.83 162.72/105.83 POL(Main.Neg(x_1)) = 3 162.72/105.83 POL(Main.Pos(x_1)) = 3 + 2*x_1 162.72/105.83 POL(Main.Succ(x_1)) = 1 + x_1 162.72/105.83 POL(Main.Zero) = 0 162.72/105.83 POL(new_gcd0Gcd'(x_1, x_2)) = 2*x_1 + 2*x_2 162.72/105.83 POL(new_primMinusNatS0(x_1, x_2)) = x_1 162.72/105.83 POL(new_primModNatS01(x_1, x_2, x_3, x_4)) = 2 + x_1 162.72/105.83 POL(new_primModNatS02(x_1, x_2)) = 1 + x_1 162.72/105.83 POL(new_primModNatS1(x_1, x_2)) = x_1 162.72/105.83 162.72/105.83 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (463) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (464) DependencyGraphProof (EQUIVALENT) 162.72/105.83 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (465) 162.72/105.83 TRUE 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (466) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (467) TransformationProof (EQUIVALENT) 162.72/105.83 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Zero))))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero)))) 162.72/105.83 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Zero))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Zero)))) 162.72/105.83 (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (468) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Zero))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Zero)))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (469) DependencyGraphProof (EQUIVALENT) 162.72/105.83 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 2 less nodes. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (470) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (471) QDPOrderProof (EQUIVALENT) 162.72/105.83 We use the reduction pair processor [LPAR04,JAR06]. 162.72/105.83 162.72/105.83 162.72/105.83 The following pairs can be oriented strictly and are deleted. 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(new_primModNatS01(Main.Succ(x0), Main.Zero, x0, Main.Zero))) 162.72/105.83 The remaining pairs can at least be oriented weakly. 162.72/105.83 Used ordering: Polynomial interpretation [POLO]: 162.72/105.83 162.72/105.83 POL(Main.Neg(x_1)) = 3 + 2*x_1 162.72/105.83 POL(Main.Pos(x_1)) = 3 162.72/105.83 POL(Main.Succ(x_1)) = 1 + x_1 162.72/105.83 POL(Main.Zero) = 0 162.72/105.83 POL(new_gcd0Gcd'(x_1, x_2)) = 2*x_1 + 2*x_2 162.72/105.83 POL(new_primMinusNatS0(x_1, x_2)) = x_1 162.72/105.83 POL(new_primModNatS01(x_1, x_2, x_3, x_4)) = 2 + x_1 162.72/105.83 POL(new_primModNatS02(x_1, x_2)) = 1 + x_1 162.72/105.83 POL(new_primModNatS1(x_1, x_2)) = x_1 162.72/105.83 162.72/105.83 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (472) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (473) DependencyGraphProof (EQUIVALENT) 162.72/105.83 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (474) 162.72/105.83 TRUE 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (475) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (476) TransformationProof (EQUIVALENT) 162.72/105.83 By narrowing [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(x2)), Main.Succ(x3), x2, x3))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero))))) 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero))))) 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3)))) 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (477) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (478) DependencyGraphProof (EQUIVALENT) 162.72/105.83 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 3 SCCs with 1 less node. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (479) 162.72/105.83 Complex Obligation (AND) 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (480) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (481) TransformationProof (EQUIVALENT) 162.72/105.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS02(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (482) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (483) TransformationProof (EQUIVALENT) 162.72/105.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (484) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (485) TransformationProof (EQUIVALENT) 162.72/105.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (486) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (487) TransformationProof (EQUIVALENT) 162.72/105.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(x2)), Main.Succ(Main.Zero)), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (488) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (489) TransformationProof (EQUIVALENT) 162.72/105.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 162.72/105.83 162.72/105.83 (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))),new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (490) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (491) QDPOrderProof (EQUIVALENT) 162.72/105.83 We use the reduction pair processor [LPAR04,JAR06]. 162.72/105.83 162.72/105.83 162.72/105.83 The following pairs can be oriented strictly and are deleted. 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 The remaining pairs can at least be oriented weakly. 162.72/105.83 Used ordering: Polynomial interpretation [POLO]: 162.72/105.83 162.72/105.83 POL(Main.Neg(x_1)) = 2 162.72/105.83 POL(Main.Pos(x_1)) = x_1 162.72/105.83 POL(Main.Succ(x_1)) = 1 + x_1 162.72/105.83 POL(Main.Zero) = 1 162.72/105.83 POL(new_gcd0Gcd'(x_1, x_2)) = x_1 + x_2 162.72/105.83 POL(new_primMinusNatS0(x_1, x_2)) = x_1 162.72/105.83 POL(new_primModNatS01(x_1, x_2, x_3, x_4)) = 2 + x_1 162.72/105.83 POL(new_primModNatS02(x_1, x_2)) = 2 + x_1 162.72/105.83 POL(new_primModNatS1(x_1, x_2)) = x_1 162.72/105.83 162.72/105.83 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (492) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (493) DependencyGraphProof (EQUIVALENT) 162.72/105.83 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (494) 162.72/105.83 TRUE 162.72/105.83 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (495) 162.72/105.83 Obligation: 162.72/105.83 Q DP problem: 162.72/105.83 The TRS P consists of the following rules: 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 162.72/105.83 The TRS R consists of the following rules: 162.72/105.83 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.83 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.83 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.83 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.83 162.72/105.83 The set Q consists of the following terms: 162.72/105.83 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.83 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.83 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.83 new_primModNatS02(x0, x1) 162.72/105.83 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.83 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.83 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.83 new_primModNatS1(Main.Zero, x0) 162.72/105.83 162.72/105.83 We have to consider all minimal (P,Q,R)-chains. 162.72/105.83 ---------------------------------------- 162.72/105.83 162.72/105.83 (496) QDPOrderProof (EQUIVALENT) 162.72/105.83 We use the reduction pair processor [LPAR04,JAR06]. 162.72/105.83 162.72/105.83 162.72/105.83 The following pairs can be oriented strictly and are deleted. 162.72/105.83 162.72/105.83 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(new_primModNatS1(Main.Succ(x2), Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.83 The remaining pairs can at least be oriented weakly. 162.72/105.83 Used ordering: Polynomial interpretation [POLO]: 162.72/105.83 162.72/105.83 POL(Main.Neg(x_1)) = x_1 162.72/105.83 POL(Main.Pos(x_1)) = 2 162.72/105.83 POL(Main.Succ(x_1)) = 1 + x_1 162.72/105.83 POL(Main.Zero) = 1 162.72/105.83 POL(new_gcd0Gcd'(x_1, x_2)) = x_1 + x_2 162.72/105.83 POL(new_primMinusNatS0(x_1, x_2)) = x_1 162.72/105.83 POL(new_primModNatS01(x_1, x_2, x_3, x_4)) = 2 + x_1 162.72/105.83 POL(new_primModNatS02(x_1, x_2)) = 2 + x_1 162.72/105.83 POL(new_primModNatS1(x_1, x_2)) = x_1 162.72/105.83 162.72/105.83 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 162.72/105.84 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.84 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.84 162.72/105.84 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (497) 162.72/105.84 Obligation: 162.72/105.84 Q DP problem: 162.72/105.84 The TRS P consists of the following rules: 162.72/105.84 162.72/105.84 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.72/105.84 162.72/105.84 The TRS R consists of the following rules: 162.72/105.84 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.84 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.84 162.72/105.84 The set Q consists of the following terms: 162.72/105.84 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.84 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.84 new_primModNatS02(x0, x1) 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.84 new_primModNatS1(Main.Zero, x0) 162.72/105.84 162.72/105.84 We have to consider all minimal (P,Q,R)-chains. 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (498) DependencyGraphProof (EQUIVALENT) 162.72/105.84 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (499) 162.72/105.84 TRUE 162.72/105.84 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (500) 162.72/105.84 Obligation: 162.72/105.84 Q DP problem: 162.72/105.84 The TRS P consists of the following rules: 162.72/105.84 162.72/105.84 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.84 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.84 162.72/105.84 The TRS R consists of the following rules: 162.72/105.84 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.84 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.84 162.72/105.84 The set Q consists of the following terms: 162.72/105.84 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.84 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.84 new_primModNatS02(x0, x1) 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.84 new_primModNatS1(Main.Zero, x0) 162.72/105.84 162.72/105.84 We have to consider all minimal (P,Q,R)-chains. 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (501) InductionCalculusProof (EQUIVALENT) 162.72/105.84 Note that final constraints are written in bold face. 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 For Pair new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) the following chains were created: 162.72/105.84 *We consider the chain new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))), new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x4)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x4))), Main.Succ(Main.Succ(x5)), x4, x5))) which results in the following constraint: 162.72/105.84 162.72/105.84 (1) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3)))=new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x4)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))))) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3)))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 162.72/105.84 162.72/105.84 (2) (Main.Succ(Main.Succ(Main.Succ(x2)))=x12 & Main.Succ(Main.Succ(x3))=x13 & new_primModNatS01(x12, x13, x2, x3)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3)))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x12, x13, x2, x3)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))) which results in the following new constraints: 162.72/105.84 162.72/105.84 (3) (new_primModNatS02(x15, x14)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x15 & Main.Succ(Main.Succ(Main.Zero))=x14 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)), Main.Zero, Main.Zero)))) 162.72/105.84 162.72/105.84 (4) (new_primModNatS02(x18, x17)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))=x18 & Main.Succ(Main.Succ(Main.Zero))=x17 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16)))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(x16), Main.Zero)))) 162.72/105.84 162.72/105.84 (5) (new_primModNatS01(x22, x21, x20, x19)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x20))))=x22 & Main.Succ(Main.Succ(Main.Succ(x19)))=x21 & (\/x23:new_primModNatS01(x22, x21, x20, x19)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x23))))) & Main.Succ(Main.Succ(Main.Succ(x20)))=x22 & Main.Succ(Main.Succ(x19))=x21 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x20)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x19)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x19)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x20))), Main.Succ(Main.Succ(x19)), x20, x19)))) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x20))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x19))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x19))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x20)))), Main.Succ(Main.Succ(Main.Succ(x19))), Main.Succ(x20), Main.Succ(x19))))) 162.72/105.84 162.72/105.84 (6) (Main.Succ(Main.Succ(x26))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x26 & Main.Succ(Main.Succ(Main.Succ(x24)))=x25 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x24))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x24))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(x24))), Main.Zero, Main.Succ(x24))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (3) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x15, x14)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))) which results in the following new constraint: 162.72/105.84 162.72/105.84 (7) (new_primModNatS1(new_primMinusNatS0(Main.Succ(x28), Main.Succ(Main.Succ(x27))), Main.Succ(Main.Succ(x27)))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x28 & Main.Succ(Main.Succ(Main.Zero))=x27 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)), Main.Zero, Main.Zero)))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x18, x17)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))) which results in the following new constraint: 162.72/105.84 162.72/105.84 (8) (new_primModNatS1(new_primMinusNatS0(Main.Succ(x34), Main.Succ(Main.Succ(x33))), Main.Succ(Main.Succ(x33)))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))=x34 & Main.Succ(Main.Succ(Main.Zero))=x33 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16)))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(x16), Main.Zero)))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (5) using rule (IV) which results in the following new constraint: 162.72/105.84 162.72/105.84 (9) (new_primModNatS01(x22, x21, x20, x19)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x20))))=x22 & Main.Succ(Main.Succ(Main.Succ(x19)))=x21 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x20))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x19))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x19))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x20)))), Main.Succ(Main.Succ(Main.Succ(x19))), Main.Succ(x20), Main.Succ(x19))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (6) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.72/105.84 162.72/105.84 (10) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x24))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x24))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(x24))), Main.Zero, Main.Succ(x24))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (7) using rules (III), (IV), (VII) which results in the following new constraint: 162.72/105.84 162.72/105.84 (11) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)), Main.Zero, Main.Zero)))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (8) using rules (III), (IV), (VII) which results in the following new constraint: 162.72/105.84 162.72/105.84 (12) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16)))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(x16), Main.Zero)))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (9) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x22, x21, x20, x19)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))) which results in the following new constraints: 162.72/105.84 162.72/105.84 (13) (new_primModNatS02(x40, x39)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x40 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x39 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.84 162.72/105.84 (14) (new_primModNatS02(x43, x42)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))))=x43 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x42 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x41)), Main.Succ(Main.Zero))))) 162.72/105.84 162.72/105.84 (15) (new_primModNatS01(x47, x46, x45, x44)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x45)))))=x47 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44))))=x46 & (\/x48:new_primModNatS01(x47, x46, x45, x44)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x48))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x45))))=x47 & Main.Succ(Main.Succ(Main.Succ(x44)))=x46 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x45))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x45)))), Main.Succ(Main.Succ(Main.Succ(x44))), Main.Succ(x45), Main.Succ(x44))))) ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x45)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44)))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44)))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x45))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44)))), Main.Succ(Main.Succ(x45)), Main.Succ(Main.Succ(x44)))))) 162.72/105.84 162.72/105.84 (16) (Main.Succ(Main.Succ(x51))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x5))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x51 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x49))))=x50 ==> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x49)))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x49)))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x49)))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(x49)))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (13) using rules (III), (IV) which results in the following new constraint: 162.72/105.84 162.72/105.84 (17) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (14) using rules (III), (IV) which results in the following new constraint: 162.72/105.84 162.72/105.84 (18) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x41)), Main.Succ(Main.Zero))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (15) using rules (III), (IV) which results in the following new constraint: 162.72/105.84 162.72/105.84 (19) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x45)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44)))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44)))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x45))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44)))), Main.Succ(Main.Succ(x45)), Main.Succ(Main.Succ(x44)))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (16) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.72/105.84 162.72/105.84 (20) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x49)))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x49)))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x49)))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(x49)))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 For Pair new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) the following chains were created: 162.72/105.84 *We consider the chain new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x6)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x7))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x7)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x6))), Main.Succ(Main.Succ(x7)), x6, x7))), new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x8))), Main.Succ(Main.Succ(x9)), x8, x9))) which results in the following constraint: 162.72/105.84 162.72/105.84 (1) (new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x7)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x6))), Main.Succ(Main.Succ(x7)), x6, x7)))=new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x8)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))))) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x6)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x7)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x7)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x6))), Main.Succ(Main.Succ(x7)), x6, x7)))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 162.72/105.84 162.72/105.84 (2) (Main.Succ(Main.Succ(Main.Succ(x6)))=x52 & Main.Succ(Main.Succ(x7))=x53 & new_primModNatS01(x52, x53, x6, x7)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x6)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x7)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x7)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x6))), Main.Succ(Main.Succ(x7)), x6, x7)))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x52, x53, x6, x7)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))) which results in the following new constraints: 162.72/105.84 162.72/105.84 (3) (new_primModNatS02(x55, x54)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x55 & Main.Succ(Main.Succ(Main.Zero))=x54 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)), Main.Zero, Main.Zero)))) 162.72/105.84 162.72/105.84 (4) (new_primModNatS02(x58, x57)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x56))))=x58 & Main.Succ(Main.Succ(Main.Zero))=x57 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x56))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x56)))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(x56), Main.Zero)))) 162.72/105.84 162.72/105.84 (5) (new_primModNatS01(x62, x61, x60, x59)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60))))=x62 & Main.Succ(Main.Succ(Main.Succ(x59)))=x61 & (\/x63:new_primModNatS01(x62, x61, x60, x59)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x63))))) & Main.Succ(Main.Succ(Main.Succ(x60)))=x62 & Main.Succ(Main.Succ(x59))=x61 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x59)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x59)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x60))), Main.Succ(Main.Succ(x59)), x60, x59)))) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x59))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x59))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60)))), Main.Succ(Main.Succ(Main.Succ(x59))), Main.Succ(x60), Main.Succ(x59))))) 162.72/105.84 162.72/105.84 (6) (Main.Succ(Main.Succ(x66))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x66 & Main.Succ(Main.Succ(Main.Succ(x64)))=x65 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x64))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x64))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(x64))), Main.Zero, Main.Succ(x64))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (3) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x55, x54)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))) which results in the following new constraint: 162.72/105.84 162.72/105.84 (7) (new_primModNatS1(new_primMinusNatS0(Main.Succ(x68), Main.Succ(Main.Succ(x67))), Main.Succ(Main.Succ(x67)))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))) & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x68 & Main.Succ(Main.Succ(Main.Zero))=x67 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)), Main.Zero, Main.Zero)))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x58, x57)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))) which results in the following new constraint: 162.72/105.84 162.72/105.84 (8) (new_primModNatS1(new_primMinusNatS0(Main.Succ(x74), Main.Succ(Main.Succ(x73))), Main.Succ(Main.Succ(x73)))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x56))))=x74 & Main.Succ(Main.Succ(Main.Zero))=x73 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x56))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x56)))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(x56), Main.Zero)))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (5) using rule (IV) which results in the following new constraint: 162.72/105.84 162.72/105.84 (9) (new_primModNatS01(x62, x61, x60, x59)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60))))=x62 & Main.Succ(Main.Succ(Main.Succ(x59)))=x61 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x59))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x59))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x60)))), Main.Succ(Main.Succ(Main.Succ(x59))), Main.Succ(x60), Main.Succ(x59))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (6) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.72/105.84 162.72/105.84 (10) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x64))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x64))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(x64))), Main.Zero, Main.Succ(x64))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (7) using rules (III), (IV), (VII) which results in the following new constraint: 162.72/105.84 162.72/105.84 (11) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)), Main.Zero, Main.Zero)))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (8) using rules (III), (IV), (VII) which results in the following new constraint: 162.72/105.84 162.72/105.84 (12) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x56))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x56)))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(x56), Main.Zero)))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (9) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x62, x61, x60, x59)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))) which results in the following new constraints: 162.72/105.84 162.72/105.84 (13) (new_primModNatS02(x80, x79)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x80 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x79 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.84 162.72/105.84 (14) (new_primModNatS02(x83, x82)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x81)))))=x83 & Main.Succ(Main.Succ(Main.Succ(Main.Zero)))=x82 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x81)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x81))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x81)), Main.Succ(Main.Zero))))) 162.72/105.84 162.72/105.84 (15) (new_primModNatS01(x87, x86, x85, x84)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x85)))))=x87 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x84))))=x86 & (\/x88:new_primModNatS01(x87, x86, x85, x84)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x88))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x85))))=x87 & Main.Succ(Main.Succ(Main.Succ(x84)))=x86 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x85))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x84))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x84))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x85)))), Main.Succ(Main.Succ(Main.Succ(x84))), Main.Succ(x85), Main.Succ(x84))))) ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x85)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x84)))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x84)))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x85))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x84)))), Main.Succ(Main.Succ(x85)), Main.Succ(Main.Succ(x84)))))) 162.72/105.84 162.72/105.84 (16) (Main.Succ(Main.Succ(x91))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x9))))) & Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))=x91 & Main.Succ(Main.Succ(Main.Succ(Main.Succ(x89))))=x90 ==> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x89)))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x89)))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x89)))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(x89)))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (13) using rules (III), (IV) which results in the following new constraint: 162.72/105.84 162.72/105.84 (17) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (14) using rules (III), (IV) which results in the following new constraint: 162.72/105.84 162.72/105.84 (18) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x81)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x81))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x81)), Main.Succ(Main.Zero))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (15) using rules (III), (IV) which results in the following new constraint: 162.72/105.84 162.72/105.84 (19) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x85)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x84)))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x84)))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x85))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x84)))), Main.Succ(Main.Succ(x85)), Main.Succ(Main.Succ(x84)))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 We simplified constraint (16) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.72/105.84 162.72/105.84 (20) (new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x89)))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x89)))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x89)))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(x89)))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 To summarize, we get the following constraints P__>=_ for the following pairs. 162.72/105.84 162.72/105.84 *new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.84 162.72/105.84 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x49)))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x49)))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x49)))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(x49)))))) 162.72/105.84 162.72/105.84 162.72/105.84 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x24))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x24))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(x24))), Main.Zero, Main.Succ(x24))))) 162.72/105.84 162.72/105.84 162.72/105.84 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)), Main.Zero, Main.Zero)))) 162.72/105.84 162.72/105.84 162.72/105.84 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x16)))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(x16), Main.Zero)))) 162.72/105.84 162.72/105.84 162.72/105.84 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.84 162.72/105.84 162.72/105.84 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x41))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x41)), Main.Succ(Main.Zero))))) 162.72/105.84 162.72/105.84 162.72/105.84 *(new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x45)))))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44)))))))))_>=_new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44)))))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x45))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x44)))), Main.Succ(Main.Succ(x45)), Main.Succ(Main.Succ(x44)))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 *new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.84 162.72/105.84 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x89)))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x89)))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x89)))), Main.Succ(Main.Zero), Main.Succ(Main.Succ(x89)))))) 162.72/105.84 162.72/105.84 162.72/105.84 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x64))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x64))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Succ(x64))), Main.Zero, Main.Succ(x64))))) 162.72/105.84 162.72/105.84 162.72/105.84 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(Main.Zero)), Main.Zero, Main.Zero)))) 162.72/105.84 162.72/105.84 162.72/105.84 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x56))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x56)))), Main.Succ(Main.Succ(Main.Zero)), Main.Succ(x56), Main.Zero)))) 162.72/105.84 162.72/105.84 162.72/105.84 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Zero), Main.Succ(Main.Zero))))) 162.72/105.84 162.72/105.84 162.72/105.84 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x81)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x81))))), Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Succ(Main.Succ(x81)), Main.Succ(Main.Zero))))) 162.72/105.84 162.72/105.84 162.72/105.84 *(new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x85)))))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x84)))))))))_>=_new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x84)))))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x85))))), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x84)))), Main.Succ(Main.Succ(x85)), Main.Succ(Main.Succ(x84)))))) 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 162.72/105.84 The constraints for P_> respective P_bound are constructed from P__>=_ where we just replace every occurence of "t _>=_ s" in P__>=_ by "t > s" respective "t _>=_ c". Here c stands for the fresh constant used for P_bound. 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (502) 162.72/105.84 Obligation: 162.72/105.84 Q DP problem: 162.72/105.84 The TRS P consists of the following rules: 162.72/105.84 162.72/105.84 new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Pos(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.84 new_gcd0Gcd'(Main.Neg(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2)))))), Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3))))))) -> new_gcd0Gcd'(Main.Pos(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x3)))))), Main.Neg(new_primModNatS01(Main.Succ(Main.Succ(Main.Succ(x2))), Main.Succ(Main.Succ(x3)), x2, x3))) 162.72/105.84 162.72/105.84 The TRS R consists of the following rules: 162.72/105.84 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.84 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.84 162.72/105.84 The set Q consists of the following terms: 162.72/105.84 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.84 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.84 new_primModNatS02(x0, x1) 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.84 new_primModNatS1(Main.Zero, x0) 162.72/105.84 162.72/105.84 We have to consider all minimal (P,Q,R)-chains. 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (503) 162.72/105.84 Obligation: 162.72/105.84 Q DP problem: 162.72/105.84 The TRS P consists of the following rules: 162.72/105.84 162.72/105.84 new_primMulNat(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primMulNat(vx73100, Main.Succ(vx72100)) 162.72/105.84 162.72/105.84 R is empty. 162.72/105.84 Q is empty. 162.72/105.84 We have to consider all minimal (P,Q,R)-chains. 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (504) QDPSizeChangeProof (EQUIVALENT) 162.72/105.84 By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. 162.72/105.84 162.72/105.84 From the DPs we obtained the following set of size-change graphs: 162.72/105.84 *new_primMulNat(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primMulNat(vx73100, Main.Succ(vx72100)) 162.72/105.84 The graph contains the following edges 1 > 1, 2 >= 2 162.72/105.84 162.72/105.84 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (505) 162.72/105.84 YES 162.72/105.84 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (506) 162.72/105.84 Obligation: 162.72/105.84 Q DP problem: 162.72/105.84 The TRS P consists of the following rules: 162.72/105.84 162.72/105.84 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.72/105.84 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, new_fromIntMyInt, vx77) 162.72/105.84 new_pr2F0G1(vx68, vx44, Main.Succ(Main.Zero)) -> new_pr2F(vx44, Main.Zero, new_fromIntMyInt, vx68) 162.72/105.84 new_pr2F0G1(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.84 new_pr2F3(Main.Succ(vx740), Main.Zero, vx73, vx72) -> new_pr2F30(Main.Succ(vx740), vx73, Main.Succ(vx740), vx72) 162.72/105.84 new_pr2F0(vx78, vx79, Main.Pos(vx860), vx77) -> new_pr2F31(new_primPlusNat0(Main.Succ(vx79), vx860), vx78, new_primPlusNat0(Main.Succ(vx79), vx860), vx77) 162.72/105.84 new_pr2F0G10(vx72, vx73, vx74, Main.Zero) -> new_pr2F0G(vx72, new_srRatio(vx73), vx74) 162.72/105.84 new_pr2F0G1(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), new_primDivNatS1) 162.72/105.84 new_pr2F0(vx78, vx79, Main.Neg(Main.Zero), vx77) -> new_pr2F31(Main.Succ(vx79), vx78, Main.Succ(vx79), vx77) 162.72/105.84 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.72/105.84 new_pr2F3(Main.Succ(vx740), Main.Succ(vx85000), vx73, vx72) -> new_pr2F3(vx740, vx85000, vx73, vx72) 162.72/105.84 new_pr2F32(vx620, vx50, Main.Zero, vx67) -> new_pr2F0G12(vx67, new_srRatio(vx50), new_primDivNatS1) 162.72/105.84 new_pr2F0G(vx72, vx81, vx74) -> new_pr2F0G1(vx72, vx81, new_primDivNatS2(vx74)) 162.72/105.84 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.72/105.84 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Succ(vx7500))) -> new_pr2F0G10(vx72, vx73, vx74, vx7500) 162.72/105.84 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.72/105.84 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.72/105.84 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, new_fromIntMyInt, vx67) 162.72/105.84 new_pr2F(vx73, Main.Succ(vx740), Main.Pos(Main.Succ(Main.Zero)), vx72) -> new_pr2F30(Main.Succ(vx740), vx73, Main.Succ(vx740), vx72) 162.72/105.84 new_pr2F0G0(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.84 new_pr2F0G0(vx68, vx44, Main.Succ(Main.Zero)) -> new_pr2F(vx44, Main.Zero, new_fromIntMyInt, vx68) 162.72/105.84 new_pr2F(vx73, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx72) -> new_pr2F30(Main.Zero, vx73, Main.Zero, vx72) 162.72/105.84 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, new_fromIntMyInt, vx67) 162.72/105.84 new_pr2F0G12(vx67, vx50, Main.Zero) -> new_pr2F0G12(vx67, new_srRatio(vx50), new_primDivNatS1) 162.72/105.84 new_pr2F0(vx78, vx79, Main.Neg(Main.Succ(vx8600)), vx77) -> new_pr2F3(vx8600, vx79, vx78, vx77) 162.72/105.84 new_pr2F3(Main.Zero, Main.Zero, vx73, vx72) -> new_pr2F30(Main.Zero, vx73, Main.Zero, vx72) 162.72/105.84 new_pr2F(vx73, Main.Zero, Main.Pos(Main.Succ(Main.Succ(vx85000))), vx72) -> new_pr2F31(Main.Succ(vx85000), vx73, Main.Succ(vx85000), vx72) 162.72/105.84 new_pr2F0G0(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), new_primDivNatS1) 162.72/105.84 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Zero)) -> new_pr2F(vx73, vx74, new_fromIntMyInt, vx72) 162.72/105.84 new_pr2F30(Main.Succ(vx880), vx73, vx87, vx72) -> new_pr2F0G0(new_srRatio0(vx73, vx72), vx73, vx87) 162.72/105.84 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.72/105.84 new_pr2F3(Main.Zero, Main.Succ(vx85000), vx73, vx72) -> new_pr2F31(Main.Succ(vx85000), vx73, Main.Succ(vx85000), vx72) 162.72/105.84 new_pr2F(vx73, vx74, Main.Pos(Main.Zero), vx72) -> new_pr2F30(Main.Succ(vx74), vx73, Main.Succ(vx74), vx72) 162.72/105.84 new_pr2F(vx73, Main.Succ(vx740), Main.Pos(Main.Succ(Main.Succ(vx85000))), vx72) -> new_pr2F3(vx740, vx85000, vx73, vx72) 162.72/105.84 new_pr2F(vx73, vx74, Main.Neg(vx850), vx72) -> new_pr2F30(new_primPlusNat0(Main.Succ(vx74), vx850), vx73, new_primPlusNat0(Main.Succ(vx74), vx850), vx72) 162.72/105.84 162.72/105.84 The TRS R consists of the following rules: 162.72/105.84 162.72/105.84 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.72/105.84 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.84 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.84 new_error -> Prelude.error([]) 162.72/105.84 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.84 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.84 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.84 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.84 new_absMyInt0(Main.Zero) -> new_absReal10 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.84 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.84 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.84 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.84 new_error0 -> Prelude.error([]) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.84 new_primMinusNatS2 -> Main.Zero 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.84 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.84 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.84 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.84 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.84 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.84 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.84 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.84 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.84 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.84 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.84 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.84 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.84 new_primDivNatS2(Main.Zero) -> Main.Zero 162.72/105.84 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.84 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.72/105.84 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.84 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.84 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.72/105.84 new_primDivNatS1 -> Main.Zero 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.84 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.84 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.72/105.84 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.84 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.84 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.84 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.72/105.84 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.84 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.84 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.72/105.84 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.72/105.84 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.72/105.84 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.84 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.84 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.72/105.84 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.72/105.84 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.72/105.84 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.72/105.84 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.72/105.84 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.84 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.72/105.84 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.84 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.84 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.84 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.84 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.84 new_fromIntMyInt -> Main.Pos(Main.Succ(Main.Zero)) 162.72/105.84 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.72/105.84 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.72/105.84 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.72/105.84 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.84 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.72/105.84 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.72/105.84 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.72/105.84 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.72/105.84 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.72/105.84 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.84 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 162.72/105.84 The set Q consists of the following terms: 162.72/105.84 162.72/105.84 new_reduce2D1(x0, x1) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.84 new_fromIntMyInt 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.84 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_primModNatS02(x0, x1) 162.72/105.84 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.84 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_gcd20(Main.Zero, x0, Main.Zero) 162.72/105.84 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.72/105.84 new_absReal1(x0) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.84 new_gcd22(Main.Zero, Main.Zero) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Zero) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.84 new_error0 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.72/105.84 new_gcd22(Main.Succ(x0), x1) 162.72/105.84 new_gcd20(Main.Succ(x0), x1, x2) 162.72/105.84 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_primDivNatS02(x0, x1) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.84 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.84 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_error 162.72/105.84 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.84 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primModNatS1(Main.Zero, x0) 162.72/105.84 new_primRemInt(Main.Neg(x0), x1) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.84 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.84 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.72/105.84 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.72/105.84 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.72/105.84 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_primDivNatS3(Main.Zero, x0) 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.84 new_gcd21(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_absMyInt(Main.Zero) 162.72/105.84 new_primMulNat0(Main.Zero, Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.84 new_absMyInt(Main.Succ(x0)) 162.72/105.84 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_gcd2(Main.Succ(x0), x1) 162.72/105.84 new_absMyInt0(Main.Zero) 162.72/105.84 new_primMulNat1(Main.Zero) 162.72/105.84 new_absReal10 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.84 new_gcd0(x0, x1) 162.72/105.84 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.84 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_gcd2(Main.Zero, Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.84 new_reduce2D(x0, x1) 162.72/105.84 new_gcd22(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.72/105.84 new_reduce2D0(x0, x1) 162.72/105.84 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_primMinusNatS2 162.72/105.84 new_primDivNatS1 162.72/105.84 new_gcd2(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_primDivNatS2(Main.Succ(x0)) 162.72/105.84 new_primMulNat1(Main.Succ(x0)) 162.72/105.84 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.84 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_primDivNatS2(Main.Zero) 162.72/105.84 new_gcd21(Main.Succ(x0), x1) 162.72/105.84 new_absMyInt0(Main.Succ(x0)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.72/105.84 new_reduce2D2(x0, x1) 162.72/105.84 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.84 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.84 new_primMinusNatS1(x0) 162.72/105.84 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primRemInt(Main.Pos(x0), x1) 162.72/105.84 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_gcd21(Main.Zero, Main.Zero) 162.72/105.84 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.72/105.84 162.72/105.84 We have to consider all minimal (P,Q,R)-chains. 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (507) DependencyGraphProof (EQUIVALENT) 162.72/105.84 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 3 SCCs with 12 less nodes. 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (508) 162.72/105.84 Complex Obligation (AND) 162.72/105.84 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (509) 162.72/105.84 Obligation: 162.72/105.84 Q DP problem: 162.72/105.84 The TRS P consists of the following rules: 162.72/105.84 162.72/105.84 new_pr2F0G1(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.84 new_pr2F0G10(vx72, vx73, vx74, Main.Zero) -> new_pr2F0G(vx72, new_srRatio(vx73), vx74) 162.72/105.84 new_pr2F0G(vx72, vx81, vx74) -> new_pr2F0G1(vx72, vx81, new_primDivNatS2(vx74)) 162.72/105.84 new_pr2F0G1(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), new_primDivNatS1) 162.72/105.84 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Succ(vx7500))) -> new_pr2F0G10(vx72, vx73, vx74, vx7500) 162.72/105.84 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Zero)) -> new_pr2F(vx73, vx74, new_fromIntMyInt, vx72) 162.72/105.84 new_pr2F(vx73, Main.Succ(vx740), Main.Pos(Main.Succ(Main.Zero)), vx72) -> new_pr2F30(Main.Succ(vx740), vx73, Main.Succ(vx740), vx72) 162.72/105.84 new_pr2F30(Main.Succ(vx880), vx73, vx87, vx72) -> new_pr2F0G0(new_srRatio0(vx73, vx72), vx73, vx87) 162.72/105.84 new_pr2F0G0(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.84 new_pr2F0G0(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), new_primDivNatS1) 162.72/105.84 162.72/105.84 The TRS R consists of the following rules: 162.72/105.84 162.72/105.84 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.72/105.84 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.84 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.84 new_error -> Prelude.error([]) 162.72/105.84 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.84 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.84 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.84 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.84 new_absMyInt0(Main.Zero) -> new_absReal10 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.84 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.84 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.84 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.84 new_error0 -> Prelude.error([]) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.84 new_primMinusNatS2 -> Main.Zero 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.84 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.84 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.84 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.84 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.84 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.84 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.84 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.84 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.84 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.84 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.84 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.84 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.84 new_primDivNatS2(Main.Zero) -> Main.Zero 162.72/105.84 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.84 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.72/105.84 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.84 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.84 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.72/105.84 new_primDivNatS1 -> Main.Zero 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.84 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.84 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.72/105.84 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.84 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.84 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.84 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.72/105.84 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.84 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.84 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.72/105.84 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.72/105.84 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.72/105.84 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.84 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.84 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.72/105.84 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.72/105.84 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.72/105.84 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.72/105.84 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.72/105.84 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.84 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.72/105.84 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.84 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.84 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.84 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.84 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.84 new_fromIntMyInt -> Main.Pos(Main.Succ(Main.Zero)) 162.72/105.84 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.72/105.84 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.72/105.84 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.72/105.84 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.84 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.72/105.84 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.72/105.84 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.72/105.84 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.72/105.84 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.72/105.84 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.84 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 162.72/105.84 The set Q consists of the following terms: 162.72/105.84 162.72/105.84 new_reduce2D1(x0, x1) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.84 new_fromIntMyInt 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.84 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_primModNatS02(x0, x1) 162.72/105.84 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.84 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_gcd20(Main.Zero, x0, Main.Zero) 162.72/105.84 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.72/105.84 new_absReal1(x0) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.84 new_gcd22(Main.Zero, Main.Zero) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Zero) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.84 new_error0 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.72/105.84 new_gcd22(Main.Succ(x0), x1) 162.72/105.84 new_gcd20(Main.Succ(x0), x1, x2) 162.72/105.84 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_primDivNatS02(x0, x1) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.84 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.84 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_error 162.72/105.84 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.84 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primModNatS1(Main.Zero, x0) 162.72/105.84 new_primRemInt(Main.Neg(x0), x1) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.84 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.84 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.72/105.84 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.72/105.84 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.72/105.84 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_primDivNatS3(Main.Zero, x0) 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.84 new_gcd21(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_absMyInt(Main.Zero) 162.72/105.84 new_primMulNat0(Main.Zero, Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.84 new_absMyInt(Main.Succ(x0)) 162.72/105.84 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_gcd2(Main.Succ(x0), x1) 162.72/105.84 new_absMyInt0(Main.Zero) 162.72/105.84 new_primMulNat1(Main.Zero) 162.72/105.84 new_absReal10 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.84 new_gcd0(x0, x1) 162.72/105.84 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.84 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_gcd2(Main.Zero, Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.84 new_reduce2D(x0, x1) 162.72/105.84 new_gcd22(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.72/105.84 new_reduce2D0(x0, x1) 162.72/105.84 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_primMinusNatS2 162.72/105.84 new_primDivNatS1 162.72/105.84 new_gcd2(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_primDivNatS2(Main.Succ(x0)) 162.72/105.84 new_primMulNat1(Main.Succ(x0)) 162.72/105.84 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.84 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_primDivNatS2(Main.Zero) 162.72/105.84 new_gcd21(Main.Succ(x0), x1) 162.72/105.84 new_absMyInt0(Main.Succ(x0)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.72/105.84 new_reduce2D2(x0, x1) 162.72/105.84 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.84 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.84 new_primMinusNatS1(x0) 162.72/105.84 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primRemInt(Main.Pos(x0), x1) 162.72/105.84 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_gcd21(Main.Zero, Main.Zero) 162.72/105.84 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.72/105.84 162.72/105.84 We have to consider all minimal (P,Q,R)-chains. 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (510) TransformationProof (EQUIVALENT) 162.72/105.84 By rewriting [LPAR04] the rule new_pr2F0G1(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), new_primDivNatS1) at position [2] we obtained the following new rules [LPAR04]: 162.72/105.84 162.72/105.84 (new_pr2F0G1(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), Main.Zero),new_pr2F0G1(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), Main.Zero)) 162.72/105.84 162.72/105.84 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (511) 162.72/105.84 Obligation: 162.72/105.84 Q DP problem: 162.72/105.84 The TRS P consists of the following rules: 162.72/105.84 162.72/105.84 new_pr2F0G1(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.84 new_pr2F0G10(vx72, vx73, vx74, Main.Zero) -> new_pr2F0G(vx72, new_srRatio(vx73), vx74) 162.72/105.84 new_pr2F0G(vx72, vx81, vx74) -> new_pr2F0G1(vx72, vx81, new_primDivNatS2(vx74)) 162.72/105.84 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Succ(vx7500))) -> new_pr2F0G10(vx72, vx73, vx74, vx7500) 162.72/105.84 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Zero)) -> new_pr2F(vx73, vx74, new_fromIntMyInt, vx72) 162.72/105.84 new_pr2F(vx73, Main.Succ(vx740), Main.Pos(Main.Succ(Main.Zero)), vx72) -> new_pr2F30(Main.Succ(vx740), vx73, Main.Succ(vx740), vx72) 162.72/105.84 new_pr2F30(Main.Succ(vx880), vx73, vx87, vx72) -> new_pr2F0G0(new_srRatio0(vx73, vx72), vx73, vx87) 162.72/105.84 new_pr2F0G0(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.84 new_pr2F0G0(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), new_primDivNatS1) 162.72/105.84 new_pr2F0G1(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), Main.Zero) 162.72/105.84 162.72/105.84 The TRS R consists of the following rules: 162.72/105.84 162.72/105.84 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.72/105.84 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.84 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.84 new_error -> Prelude.error([]) 162.72/105.84 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.84 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.84 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.84 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.84 new_absMyInt0(Main.Zero) -> new_absReal10 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.84 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.84 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.84 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.84 new_error0 -> Prelude.error([]) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.84 new_primMinusNatS2 -> Main.Zero 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.84 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.84 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.84 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.84 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.84 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.84 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.84 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.84 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.84 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.84 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.84 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.84 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.84 new_primDivNatS2(Main.Zero) -> Main.Zero 162.72/105.84 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.84 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.72/105.84 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.84 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.84 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.72/105.84 new_primDivNatS1 -> Main.Zero 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.84 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.84 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.72/105.84 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.84 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.84 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.84 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.72/105.84 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.84 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.84 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.72/105.84 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.72/105.84 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.72/105.84 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.84 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.84 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.72/105.84 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.72/105.84 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.72/105.84 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.72/105.84 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.72/105.84 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.84 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.72/105.84 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.84 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.84 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.84 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.84 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.84 new_fromIntMyInt -> Main.Pos(Main.Succ(Main.Zero)) 162.72/105.84 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.72/105.84 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.72/105.84 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.72/105.84 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.84 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.72/105.84 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.72/105.84 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.72/105.84 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.72/105.84 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.72/105.84 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.84 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 162.72/105.84 The set Q consists of the following terms: 162.72/105.84 162.72/105.84 new_reduce2D1(x0, x1) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.84 new_fromIntMyInt 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.84 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_primModNatS02(x0, x1) 162.72/105.84 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.84 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_gcd20(Main.Zero, x0, Main.Zero) 162.72/105.84 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.72/105.84 new_absReal1(x0) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.84 new_gcd22(Main.Zero, Main.Zero) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Zero) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.84 new_error0 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.72/105.84 new_gcd22(Main.Succ(x0), x1) 162.72/105.84 new_gcd20(Main.Succ(x0), x1, x2) 162.72/105.84 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_primDivNatS02(x0, x1) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.84 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.84 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_error 162.72/105.84 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.84 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primModNatS1(Main.Zero, x0) 162.72/105.84 new_primRemInt(Main.Neg(x0), x1) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.84 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.84 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.72/105.84 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.72/105.84 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.72/105.84 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_primDivNatS3(Main.Zero, x0) 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.84 new_gcd21(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_absMyInt(Main.Zero) 162.72/105.84 new_primMulNat0(Main.Zero, Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.84 new_absMyInt(Main.Succ(x0)) 162.72/105.84 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_gcd2(Main.Succ(x0), x1) 162.72/105.84 new_absMyInt0(Main.Zero) 162.72/105.84 new_primMulNat1(Main.Zero) 162.72/105.84 new_absReal10 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.84 new_gcd0(x0, x1) 162.72/105.84 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.84 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_gcd2(Main.Zero, Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.84 new_reduce2D(x0, x1) 162.72/105.84 new_gcd22(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.72/105.84 new_reduce2D0(x0, x1) 162.72/105.84 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_primMinusNatS2 162.72/105.84 new_primDivNatS1 162.72/105.84 new_gcd2(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_primDivNatS2(Main.Succ(x0)) 162.72/105.84 new_primMulNat1(Main.Succ(x0)) 162.72/105.84 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.84 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_primDivNatS2(Main.Zero) 162.72/105.84 new_gcd21(Main.Succ(x0), x1) 162.72/105.84 new_absMyInt0(Main.Succ(x0)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.72/105.84 new_reduce2D2(x0, x1) 162.72/105.84 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.84 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.84 new_primMinusNatS1(x0) 162.72/105.84 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primRemInt(Main.Pos(x0), x1) 162.72/105.84 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_gcd21(Main.Zero, Main.Zero) 162.72/105.84 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.72/105.84 162.72/105.84 We have to consider all minimal (P,Q,R)-chains. 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (512) DependencyGraphProof (EQUIVALENT) 162.72/105.84 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (513) 162.72/105.84 Complex Obligation (AND) 162.72/105.84 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (514) 162.72/105.84 Obligation: 162.72/105.84 Q DP problem: 162.72/105.84 The TRS P consists of the following rules: 162.72/105.84 162.72/105.84 new_pr2F0G1(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), Main.Zero) 162.72/105.84 162.72/105.84 The TRS R consists of the following rules: 162.72/105.84 162.72/105.84 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.72/105.84 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.84 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.84 new_error -> Prelude.error([]) 162.72/105.84 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.84 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.84 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.84 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.84 new_absMyInt0(Main.Zero) -> new_absReal10 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.84 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.84 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.84 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.84 new_error0 -> Prelude.error([]) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.84 new_primMinusNatS2 -> Main.Zero 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.84 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.84 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.84 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.84 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.84 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.84 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.84 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.84 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.84 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.84 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.84 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.84 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.84 new_primDivNatS2(Main.Zero) -> Main.Zero 162.72/105.84 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.84 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.72/105.84 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.84 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.84 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.72/105.84 new_primDivNatS1 -> Main.Zero 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.84 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.84 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.72/105.84 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.84 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.84 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.84 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.72/105.84 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.84 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.84 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.72/105.84 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.72/105.84 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.72/105.84 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.84 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.84 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.72/105.84 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.72/105.84 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.72/105.84 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.72/105.84 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.72/105.84 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.84 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.72/105.84 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.84 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.84 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.84 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.84 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.84 new_fromIntMyInt -> Main.Pos(Main.Succ(Main.Zero)) 162.72/105.84 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.72/105.84 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.72/105.84 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.72/105.84 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.84 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.72/105.84 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.72/105.84 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.72/105.84 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.72/105.84 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.72/105.84 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.84 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 162.72/105.84 The set Q consists of the following terms: 162.72/105.84 162.72/105.84 new_reduce2D1(x0, x1) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.84 new_fromIntMyInt 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.84 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_primModNatS02(x0, x1) 162.72/105.84 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.84 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_gcd20(Main.Zero, x0, Main.Zero) 162.72/105.84 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.72/105.84 new_absReal1(x0) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.84 new_gcd22(Main.Zero, Main.Zero) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Zero) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.84 new_error0 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.72/105.84 new_gcd22(Main.Succ(x0), x1) 162.72/105.84 new_gcd20(Main.Succ(x0), x1, x2) 162.72/105.84 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_primDivNatS02(x0, x1) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.84 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.84 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_error 162.72/105.84 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.84 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primModNatS1(Main.Zero, x0) 162.72/105.84 new_primRemInt(Main.Neg(x0), x1) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.84 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.84 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.72/105.84 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.72/105.84 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.72/105.84 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_primDivNatS3(Main.Zero, x0) 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.84 new_gcd21(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_absMyInt(Main.Zero) 162.72/105.84 new_primMulNat0(Main.Zero, Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.84 new_absMyInt(Main.Succ(x0)) 162.72/105.84 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_gcd2(Main.Succ(x0), x1) 162.72/105.84 new_absMyInt0(Main.Zero) 162.72/105.84 new_primMulNat1(Main.Zero) 162.72/105.84 new_absReal10 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.84 new_gcd0(x0, x1) 162.72/105.84 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.84 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_gcd2(Main.Zero, Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.84 new_reduce2D(x0, x1) 162.72/105.84 new_gcd22(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.72/105.84 new_reduce2D0(x0, x1) 162.72/105.84 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_primMinusNatS2 162.72/105.84 new_primDivNatS1 162.72/105.84 new_gcd2(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_primDivNatS2(Main.Succ(x0)) 162.72/105.84 new_primMulNat1(Main.Succ(x0)) 162.72/105.84 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.84 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_primDivNatS2(Main.Zero) 162.72/105.84 new_gcd21(Main.Succ(x0), x1) 162.72/105.84 new_absMyInt0(Main.Succ(x0)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.72/105.84 new_reduce2D2(x0, x1) 162.72/105.84 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.84 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.84 new_primMinusNatS1(x0) 162.72/105.84 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primRemInt(Main.Pos(x0), x1) 162.72/105.84 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_gcd21(Main.Zero, Main.Zero) 162.72/105.84 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.72/105.84 162.72/105.84 We have to consider all minimal (P,Q,R)-chains. 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (515) UsableRulesProof (EQUIVALENT) 162.72/105.84 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (516) 162.72/105.84 Obligation: 162.72/105.84 Q DP problem: 162.72/105.84 The TRS P consists of the following rules: 162.72/105.84 162.72/105.84 new_pr2F0G1(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), Main.Zero) 162.72/105.84 162.72/105.84 The TRS R consists of the following rules: 162.72/105.84 162.72/105.84 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.84 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.84 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.84 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.72/105.84 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.84 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.84 new_error0 -> Prelude.error([]) 162.72/105.84 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.84 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.84 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.72/105.84 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.72/105.84 new_error -> Prelude.error([]) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.72/105.84 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.84 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.84 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.84 new_primMinusNatS2 -> Main.Zero 162.72/105.84 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.72/105.84 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.72/105.84 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.72/105.84 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.84 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.84 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.84 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.84 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.84 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.84 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.84 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.72/105.84 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.84 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.84 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.72/105.84 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.84 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.72/105.84 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.84 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.84 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.84 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.84 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.72/105.84 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.72/105.84 162.72/105.84 The set Q consists of the following terms: 162.72/105.84 162.72/105.84 new_reduce2D1(x0, x1) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.84 new_fromIntMyInt 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.84 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_primModNatS02(x0, x1) 162.72/105.84 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.84 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_gcd20(Main.Zero, x0, Main.Zero) 162.72/105.84 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.72/105.84 new_absReal1(x0) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.84 new_gcd22(Main.Zero, Main.Zero) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Zero) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.84 new_error0 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.72/105.84 new_gcd22(Main.Succ(x0), x1) 162.72/105.84 new_gcd20(Main.Succ(x0), x1, x2) 162.72/105.84 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_primDivNatS02(x0, x1) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.84 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.84 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_error 162.72/105.84 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.84 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primModNatS1(Main.Zero, x0) 162.72/105.84 new_primRemInt(Main.Neg(x0), x1) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.84 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.84 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.72/105.84 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.72/105.84 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.72/105.84 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_primDivNatS3(Main.Zero, x0) 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.84 new_gcd21(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_absMyInt(Main.Zero) 162.72/105.84 new_primMulNat0(Main.Zero, Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.84 new_absMyInt(Main.Succ(x0)) 162.72/105.84 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_gcd2(Main.Succ(x0), x1) 162.72/105.84 new_absMyInt0(Main.Zero) 162.72/105.84 new_primMulNat1(Main.Zero) 162.72/105.84 new_absReal10 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.84 new_gcd0(x0, x1) 162.72/105.84 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.84 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_gcd2(Main.Zero, Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.84 new_reduce2D(x0, x1) 162.72/105.84 new_gcd22(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.72/105.84 new_reduce2D0(x0, x1) 162.72/105.84 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_primMinusNatS2 162.72/105.84 new_primDivNatS1 162.72/105.84 new_gcd2(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_primDivNatS2(Main.Succ(x0)) 162.72/105.84 new_primMulNat1(Main.Succ(x0)) 162.72/105.84 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.84 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_primDivNatS2(Main.Zero) 162.72/105.84 new_gcd21(Main.Succ(x0), x1) 162.72/105.84 new_absMyInt0(Main.Succ(x0)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.72/105.84 new_reduce2D2(x0, x1) 162.72/105.84 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.84 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.84 new_primMinusNatS1(x0) 162.72/105.84 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primRemInt(Main.Pos(x0), x1) 162.72/105.84 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_gcd21(Main.Zero, Main.Zero) 162.72/105.84 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.72/105.84 162.72/105.84 We have to consider all minimal (P,Q,R)-chains. 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (517) QReductionProof (EQUIVALENT) 162.72/105.84 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 162.72/105.84 162.72/105.84 new_reduce2D1(x0, x1) 162.72/105.84 new_fromIntMyInt 162.72/105.84 new_gcd20(Main.Zero, x0, Main.Zero) 162.72/105.84 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.72/105.84 new_gcd20(Main.Succ(x0), x1, x2) 162.72/105.84 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.84 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.72/105.84 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_gcd21(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_absMyInt0(Main.Zero) 162.72/105.84 new_gcd0(x0, x1) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.84 new_reduce2D0(x0, x1) 162.72/105.84 new_primDivNatS1 162.72/105.84 new_primDivNatS2(Main.Succ(x0)) 162.72/105.84 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_primDivNatS2(Main.Zero) 162.72/105.84 new_gcd21(Main.Succ(x0), x1) 162.72/105.84 new_absMyInt0(Main.Succ(x0)) 162.72/105.84 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.84 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.84 new_gcd21(Main.Zero, Main.Zero) 162.72/105.84 162.72/105.84 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (518) 162.72/105.84 Obligation: 162.72/105.84 Q DP problem: 162.72/105.84 The TRS P consists of the following rules: 162.72/105.84 162.72/105.84 new_pr2F0G1(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), Main.Zero) 162.72/105.84 162.72/105.84 The TRS R consists of the following rules: 162.72/105.84 162.72/105.84 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.84 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.84 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.84 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.72/105.84 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.84 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.84 new_error0 -> Prelude.error([]) 162.72/105.84 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.84 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.84 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.72/105.84 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.72/105.84 new_error -> Prelude.error([]) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.72/105.84 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.84 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.84 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.84 new_primMinusNatS2 -> Main.Zero 162.72/105.84 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.72/105.84 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.72/105.84 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.72/105.84 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.84 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.84 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.84 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.84 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.84 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.84 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.84 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.72/105.84 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.84 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.84 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.72/105.84 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.84 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.72/105.84 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.84 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.84 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.84 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.84 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.72/105.84 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.72/105.84 162.72/105.84 The set Q consists of the following terms: 162.72/105.84 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.84 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_primModNatS02(x0, x1) 162.72/105.84 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.84 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_absReal1(x0) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.84 new_gcd22(Main.Zero, Main.Zero) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Zero) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.84 new_error0 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.72/105.84 new_gcd22(Main.Succ(x0), x1) 162.72/105.84 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_primDivNatS02(x0, x1) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.84 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.84 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.84 new_error 162.72/105.84 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.84 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primModNatS1(Main.Zero, x0) 162.72/105.84 new_primRemInt(Main.Neg(x0), x1) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.84 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.72/105.84 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_primDivNatS3(Main.Zero, x0) 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.84 new_absMyInt(Main.Zero) 162.72/105.84 new_primMulNat0(Main.Zero, Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.84 new_absMyInt(Main.Succ(x0)) 162.72/105.84 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.72/105.84 new_gcd2(Main.Succ(x0), x1) 162.72/105.84 new_primMulNat1(Main.Zero) 162.72/105.84 new_absReal10 162.72/105.84 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.84 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.72/105.84 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_gcd2(Main.Zero, Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.84 new_reduce2D(x0, x1) 162.72/105.84 new_gcd22(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.72/105.84 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_primMinusNatS2 162.72/105.84 new_gcd2(Main.Zero, Main.Succ(x0)) 162.72/105.84 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_primMulNat1(Main.Succ(x0)) 162.72/105.84 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.84 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.72/105.84 new_reduce2D2(x0, x1) 162.72/105.84 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.84 new_primMinusNatS1(x0) 162.72/105.84 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.72/105.84 new_primRemInt(Main.Pos(x0), x1) 162.72/105.84 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.72/105.84 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.84 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.84 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.84 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.84 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.72/105.84 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.72/105.84 162.72/105.84 We have to consider all minimal (P,Q,R)-chains. 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (519) MNOCProof (EQUIVALENT) 162.72/105.84 We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set. 162.72/105.84 ---------------------------------------- 162.72/105.84 162.72/105.84 (520) 162.72/105.84 Obligation: 162.72/105.84 Q DP problem: 162.72/105.84 The TRS P consists of the following rules: 162.72/105.84 162.72/105.84 new_pr2F0G1(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), Main.Zero) 162.72/105.84 162.72/105.84 The TRS R consists of the following rules: 162.72/105.84 162.72/105.84 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.84 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.84 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.84 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.72/105.84 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.84 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.84 new_error0 -> Prelude.error([]) 162.72/105.84 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.84 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.84 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.84 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.84 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.72/105.84 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.72/105.84 new_error -> Prelude.error([]) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.84 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.72/105.84 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.84 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.84 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.84 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.84 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.84 new_primMinusNatS2 -> Main.Zero 162.72/105.84 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.72/105.84 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.72/105.84 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.72/105.84 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.84 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.84 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.84 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.84 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.84 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.72/105.84 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.84 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.84 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.84 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.84 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.84 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.84 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.72/105.85 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.85 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.72/105.85 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.85 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.72/105.85 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.85 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.72/105.85 162.72/105.85 Q is empty. 162.72/105.85 We have to consider all (P,Q,R)-chains. 162.72/105.85 ---------------------------------------- 162.72/105.85 162.72/105.85 (521) NonTerminationLoopProof (COMPLETE) 162.72/105.85 We used the non-termination processor [FROCOS05] to show that the DP problem is infinite. 162.72/105.85 Found a loop by semiunifying a rule from P directly. 162.72/105.85 162.72/105.85 s = new_pr2F0G1(vx68, vx44, Main.Zero) evaluates to t =new_pr2F0G1(vx68, new_srRatio(vx44), Main.Zero) 162.72/105.85 162.72/105.85 Thus s starts an infinite chain as s semiunifies with t with the following substitutions: 162.72/105.85 * Matcher: [vx44 / new_srRatio(vx44)] 162.72/105.85 * Semiunifier: [ ] 162.72/105.85 162.72/105.85 -------------------------------------------------------------------------------- 162.72/105.85 Rewriting sequence 162.72/105.85 162.72/105.85 The DP semiunifies directly so there is only one rewrite step from new_pr2F0G1(vx68, vx44, Main.Zero) to new_pr2F0G1(vx68, new_srRatio(vx44), Main.Zero). 162.72/105.85 162.72/105.85 162.72/105.85 162.72/105.85 162.72/105.85 ---------------------------------------- 162.72/105.85 162.72/105.85 (522) 162.72/105.85 NO 162.72/105.85 162.72/105.85 ---------------------------------------- 162.72/105.85 162.72/105.85 (523) 162.72/105.85 Obligation: 162.72/105.85 Q DP problem: 162.72/105.85 The TRS P consists of the following rules: 162.72/105.85 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Zero) -> new_pr2F0G(vx72, new_srRatio(vx73), vx74) 162.72/105.85 new_pr2F0G(vx72, vx81, vx74) -> new_pr2F0G1(vx72, vx81, new_primDivNatS2(vx74)) 162.72/105.85 new_pr2F0G1(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Succ(vx7500))) -> new_pr2F0G10(vx72, vx73, vx74, vx7500) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Zero)) -> new_pr2F(vx73, vx74, new_fromIntMyInt, vx72) 162.72/105.85 new_pr2F(vx73, Main.Succ(vx740), Main.Pos(Main.Succ(Main.Zero)), vx72) -> new_pr2F30(Main.Succ(vx740), vx73, Main.Succ(vx740), vx72) 162.72/105.85 new_pr2F30(Main.Succ(vx880), vx73, vx87, vx72) -> new_pr2F0G0(new_srRatio0(vx73, vx72), vx73, vx87) 162.72/105.85 new_pr2F0G0(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.85 new_pr2F0G0(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), new_primDivNatS1) 162.72/105.85 162.72/105.85 The TRS R consists of the following rules: 162.72/105.85 162.72/105.85 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.72/105.85 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.85 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_error -> Prelude.error([]) 162.72/105.85 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.85 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.85 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.85 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_absMyInt0(Main.Zero) -> new_absReal10 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.85 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.85 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.85 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.85 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.85 new_error0 -> Prelude.error([]) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.85 new_primMinusNatS2 -> Main.Zero 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.85 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.85 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.85 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.85 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.85 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.85 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.85 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.85 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primDivNatS2(Main.Zero) -> Main.Zero 162.72/105.85 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.85 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.85 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.85 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.72/105.85 new_primDivNatS1 -> Main.Zero 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.85 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.85 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.85 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.85 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.72/105.85 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.72/105.85 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.72/105.85 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.72/105.85 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.72/105.85 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.72/105.85 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.85 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.85 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.85 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.85 new_fromIntMyInt -> Main.Pos(Main.Succ(Main.Zero)) 162.72/105.85 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.72/105.85 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.85 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.85 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.72/105.85 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.72/105.85 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.72/105.85 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.72/105.85 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.72/105.85 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 162.72/105.85 The set Q consists of the following terms: 162.72/105.85 162.72/105.85 new_reduce2D1(x0, x1) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.85 new_fromIntMyInt 162.72/105.85 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.85 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_primModNatS02(x0, x1) 162.72/105.85 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.85 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_gcd20(Main.Zero, x0, Main.Zero) 162.72/105.85 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.72/105.85 new_absReal1(x0) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.85 new_gcd22(Main.Zero, Main.Zero) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Zero) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.85 new_error0 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.72/105.85 new_gcd22(Main.Succ(x0), x1) 162.72/105.85 new_gcd20(Main.Succ(x0), x1, x2) 162.72/105.85 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primDivNatS02(x0, x1) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.85 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.85 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_error 162.72/105.85 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.85 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primModNatS1(Main.Zero, x0) 162.72/105.85 new_primRemInt(Main.Neg(x0), x1) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.85 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.85 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.72/105.85 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.72/105.85 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.72/105.85 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Zero, x0) 162.72/105.85 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.85 new_gcd21(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_absMyInt(Main.Zero) 162.72/105.85 new_primMulNat0(Main.Zero, Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.85 new_absMyInt(Main.Succ(x0)) 162.72/105.85 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_gcd2(Main.Succ(x0), x1) 162.72/105.85 new_absMyInt0(Main.Zero) 162.72/105.85 new_primMulNat1(Main.Zero) 162.72/105.85 new_absReal10 162.72/105.85 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.85 new_gcd0(x0, x1) 162.72/105.85 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.85 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_gcd2(Main.Zero, Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.85 new_reduce2D(x0, x1) 162.72/105.85 new_gcd22(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.72/105.85 new_reduce2D0(x0, x1) 162.72/105.85 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_primMinusNatS2 162.72/105.85 new_primDivNatS1 162.72/105.85 new_gcd2(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primDivNatS2(Main.Succ(x0)) 162.72/105.85 new_primMulNat1(Main.Succ(x0)) 162.72/105.85 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.85 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_primDivNatS2(Main.Zero) 162.72/105.85 new_gcd21(Main.Succ(x0), x1) 162.72/105.85 new_absMyInt0(Main.Succ(x0)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.72/105.85 new_reduce2D2(x0, x1) 162.72/105.85 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.85 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.85 new_primMinusNatS1(x0) 162.72/105.85 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.72/105.85 new_primRemInt(Main.Pos(x0), x1) 162.72/105.85 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_gcd21(Main.Zero, Main.Zero) 162.72/105.85 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.72/105.85 162.72/105.85 We have to consider all minimal (P,Q,R)-chains. 162.72/105.85 ---------------------------------------- 162.72/105.85 162.72/105.85 (524) TransformationProof (EQUIVALENT) 162.72/105.85 By rewriting [LPAR04] the rule new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Zero)) -> new_pr2F(vx73, vx74, new_fromIntMyInt, vx72) at position [2] we obtained the following new rules [LPAR04]: 162.72/105.85 162.72/105.85 (new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Zero)) -> new_pr2F(vx73, vx74, Main.Pos(Main.Succ(Main.Zero)), vx72),new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Zero)) -> new_pr2F(vx73, vx74, Main.Pos(Main.Succ(Main.Zero)), vx72)) 162.72/105.85 162.72/105.85 162.72/105.85 ---------------------------------------- 162.72/105.85 162.72/105.85 (525) 162.72/105.85 Obligation: 162.72/105.85 Q DP problem: 162.72/105.85 The TRS P consists of the following rules: 162.72/105.85 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Zero) -> new_pr2F0G(vx72, new_srRatio(vx73), vx74) 162.72/105.85 new_pr2F0G(vx72, vx81, vx74) -> new_pr2F0G1(vx72, vx81, new_primDivNatS2(vx74)) 162.72/105.85 new_pr2F0G1(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Succ(vx7500))) -> new_pr2F0G10(vx72, vx73, vx74, vx7500) 162.72/105.85 new_pr2F(vx73, Main.Succ(vx740), Main.Pos(Main.Succ(Main.Zero)), vx72) -> new_pr2F30(Main.Succ(vx740), vx73, Main.Succ(vx740), vx72) 162.72/105.85 new_pr2F30(Main.Succ(vx880), vx73, vx87, vx72) -> new_pr2F0G0(new_srRatio0(vx73, vx72), vx73, vx87) 162.72/105.85 new_pr2F0G0(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.85 new_pr2F0G0(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), new_primDivNatS1) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Zero)) -> new_pr2F(vx73, vx74, Main.Pos(Main.Succ(Main.Zero)), vx72) 162.72/105.85 162.72/105.85 The TRS R consists of the following rules: 162.72/105.85 162.72/105.85 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.72/105.85 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.85 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_error -> Prelude.error([]) 162.72/105.85 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.85 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.85 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.85 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_absMyInt0(Main.Zero) -> new_absReal10 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.85 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.85 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.85 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.85 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.85 new_error0 -> Prelude.error([]) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.85 new_primMinusNatS2 -> Main.Zero 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.85 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.85 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.85 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.85 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.85 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.85 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.85 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.85 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primDivNatS2(Main.Zero) -> Main.Zero 162.72/105.85 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.85 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.85 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.85 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.72/105.85 new_primDivNatS1 -> Main.Zero 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.85 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.85 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.85 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.85 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.72/105.85 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.72/105.85 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.72/105.85 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.72/105.85 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.72/105.85 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.72/105.85 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.85 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.85 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.85 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.85 new_fromIntMyInt -> Main.Pos(Main.Succ(Main.Zero)) 162.72/105.85 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.72/105.85 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.85 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.85 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.72/105.85 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.72/105.85 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.72/105.85 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.72/105.85 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.72/105.85 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 162.72/105.85 The set Q consists of the following terms: 162.72/105.85 162.72/105.85 new_reduce2D1(x0, x1) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.85 new_fromIntMyInt 162.72/105.85 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.85 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_primModNatS02(x0, x1) 162.72/105.85 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.85 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_gcd20(Main.Zero, x0, Main.Zero) 162.72/105.85 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.72/105.85 new_absReal1(x0) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.85 new_gcd22(Main.Zero, Main.Zero) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Zero) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.85 new_error0 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.72/105.85 new_gcd22(Main.Succ(x0), x1) 162.72/105.85 new_gcd20(Main.Succ(x0), x1, x2) 162.72/105.85 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primDivNatS02(x0, x1) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.85 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.85 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_error 162.72/105.85 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.85 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primModNatS1(Main.Zero, x0) 162.72/105.85 new_primRemInt(Main.Neg(x0), x1) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.85 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.85 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.72/105.85 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.72/105.85 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.72/105.85 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Zero, x0) 162.72/105.85 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.85 new_gcd21(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_absMyInt(Main.Zero) 162.72/105.85 new_primMulNat0(Main.Zero, Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.85 new_absMyInt(Main.Succ(x0)) 162.72/105.85 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_gcd2(Main.Succ(x0), x1) 162.72/105.85 new_absMyInt0(Main.Zero) 162.72/105.85 new_primMulNat1(Main.Zero) 162.72/105.85 new_absReal10 162.72/105.85 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.85 new_gcd0(x0, x1) 162.72/105.85 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.85 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_gcd2(Main.Zero, Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.85 new_reduce2D(x0, x1) 162.72/105.85 new_gcd22(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.72/105.85 new_reduce2D0(x0, x1) 162.72/105.85 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_primMinusNatS2 162.72/105.85 new_primDivNatS1 162.72/105.85 new_gcd2(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primDivNatS2(Main.Succ(x0)) 162.72/105.85 new_primMulNat1(Main.Succ(x0)) 162.72/105.85 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.85 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_primDivNatS2(Main.Zero) 162.72/105.85 new_gcd21(Main.Succ(x0), x1) 162.72/105.85 new_absMyInt0(Main.Succ(x0)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.72/105.85 new_reduce2D2(x0, x1) 162.72/105.85 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.85 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.85 new_primMinusNatS1(x0) 162.72/105.85 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.72/105.85 new_primRemInt(Main.Pos(x0), x1) 162.72/105.85 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_gcd21(Main.Zero, Main.Zero) 162.72/105.85 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.72/105.85 162.72/105.85 We have to consider all minimal (P,Q,R)-chains. 162.72/105.85 ---------------------------------------- 162.72/105.85 162.72/105.85 (526) UsableRulesProof (EQUIVALENT) 162.72/105.85 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.72/105.85 ---------------------------------------- 162.72/105.85 162.72/105.85 (527) 162.72/105.85 Obligation: 162.72/105.85 Q DP problem: 162.72/105.85 The TRS P consists of the following rules: 162.72/105.85 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Zero) -> new_pr2F0G(vx72, new_srRatio(vx73), vx74) 162.72/105.85 new_pr2F0G(vx72, vx81, vx74) -> new_pr2F0G1(vx72, vx81, new_primDivNatS2(vx74)) 162.72/105.85 new_pr2F0G1(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Succ(vx7500))) -> new_pr2F0G10(vx72, vx73, vx74, vx7500) 162.72/105.85 new_pr2F(vx73, Main.Succ(vx740), Main.Pos(Main.Succ(Main.Zero)), vx72) -> new_pr2F30(Main.Succ(vx740), vx73, Main.Succ(vx740), vx72) 162.72/105.85 new_pr2F30(Main.Succ(vx880), vx73, vx87, vx72) -> new_pr2F0G0(new_srRatio0(vx73, vx72), vx73, vx87) 162.72/105.85 new_pr2F0G0(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.85 new_pr2F0G0(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), new_primDivNatS1) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Zero)) -> new_pr2F(vx73, vx74, Main.Pos(Main.Succ(Main.Zero)), vx72) 162.72/105.85 162.72/105.85 The TRS R consists of the following rules: 162.72/105.85 162.72/105.85 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.85 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.85 new_primDivNatS1 -> Main.Zero 162.72/105.85 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.85 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.72/105.85 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.85 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.85 new_error0 -> Prelude.error([]) 162.72/105.85 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.85 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.85 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.72/105.85 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.72/105.85 new_error -> Prelude.error([]) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.85 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.85 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.85 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.85 new_primMinusNatS2 -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.72/105.85 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.85 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.85 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.85 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.85 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.85 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.85 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.72/105.85 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.85 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.72/105.85 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.85 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.72/105.85 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.85 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.72/105.85 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.72/105.85 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.72/105.85 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.72/105.85 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.72/105.85 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.72/105.85 new_absMyInt0(Main.Zero) -> new_absReal10 162.72/105.85 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.72/105.85 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.72/105.85 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.72/105.85 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.72/105.85 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.72/105.85 new_primDivNatS2(Main.Zero) -> Main.Zero 162.72/105.85 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.72/105.85 162.72/105.85 The set Q consists of the following terms: 162.72/105.85 162.72/105.85 new_reduce2D1(x0, x1) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.85 new_fromIntMyInt 162.72/105.85 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.85 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_primModNatS02(x0, x1) 162.72/105.85 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.85 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_gcd20(Main.Zero, x0, Main.Zero) 162.72/105.85 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.72/105.85 new_absReal1(x0) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.85 new_gcd22(Main.Zero, Main.Zero) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Zero) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.85 new_error0 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.72/105.85 new_gcd22(Main.Succ(x0), x1) 162.72/105.85 new_gcd20(Main.Succ(x0), x1, x2) 162.72/105.85 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primDivNatS02(x0, x1) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.85 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.85 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_error 162.72/105.85 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.85 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primModNatS1(Main.Zero, x0) 162.72/105.85 new_primRemInt(Main.Neg(x0), x1) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.85 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.85 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.72/105.85 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.72/105.85 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.72/105.85 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Zero, x0) 162.72/105.85 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.85 new_gcd21(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_absMyInt(Main.Zero) 162.72/105.85 new_primMulNat0(Main.Zero, Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.85 new_absMyInt(Main.Succ(x0)) 162.72/105.85 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_gcd2(Main.Succ(x0), x1) 162.72/105.85 new_absMyInt0(Main.Zero) 162.72/105.85 new_primMulNat1(Main.Zero) 162.72/105.85 new_absReal10 162.72/105.85 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.85 new_gcd0(x0, x1) 162.72/105.85 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.85 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_gcd2(Main.Zero, Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.85 new_reduce2D(x0, x1) 162.72/105.85 new_gcd22(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.72/105.85 new_reduce2D0(x0, x1) 162.72/105.85 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_primMinusNatS2 162.72/105.85 new_primDivNatS1 162.72/105.85 new_gcd2(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primDivNatS2(Main.Succ(x0)) 162.72/105.85 new_primMulNat1(Main.Succ(x0)) 162.72/105.85 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.85 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_primDivNatS2(Main.Zero) 162.72/105.85 new_gcd21(Main.Succ(x0), x1) 162.72/105.85 new_absMyInt0(Main.Succ(x0)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.72/105.85 new_reduce2D2(x0, x1) 162.72/105.85 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.85 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.85 new_primMinusNatS1(x0) 162.72/105.85 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.72/105.85 new_primRemInt(Main.Pos(x0), x1) 162.72/105.85 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_gcd21(Main.Zero, Main.Zero) 162.72/105.85 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.72/105.85 162.72/105.85 We have to consider all minimal (P,Q,R)-chains. 162.72/105.85 ---------------------------------------- 162.72/105.85 162.72/105.85 (528) QReductionProof (EQUIVALENT) 162.72/105.85 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 162.72/105.85 162.72/105.85 new_fromIntMyInt 162.72/105.85 162.72/105.85 162.72/105.85 ---------------------------------------- 162.72/105.85 162.72/105.85 (529) 162.72/105.85 Obligation: 162.72/105.85 Q DP problem: 162.72/105.85 The TRS P consists of the following rules: 162.72/105.85 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Zero) -> new_pr2F0G(vx72, new_srRatio(vx73), vx74) 162.72/105.85 new_pr2F0G(vx72, vx81, vx74) -> new_pr2F0G1(vx72, vx81, new_primDivNatS2(vx74)) 162.72/105.85 new_pr2F0G1(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Succ(vx7500))) -> new_pr2F0G10(vx72, vx73, vx74, vx7500) 162.72/105.85 new_pr2F(vx73, Main.Succ(vx740), Main.Pos(Main.Succ(Main.Zero)), vx72) -> new_pr2F30(Main.Succ(vx740), vx73, Main.Succ(vx740), vx72) 162.72/105.85 new_pr2F30(Main.Succ(vx880), vx73, vx87, vx72) -> new_pr2F0G0(new_srRatio0(vx73, vx72), vx73, vx87) 162.72/105.85 new_pr2F0G0(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.85 new_pr2F0G0(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), new_primDivNatS1) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Zero)) -> new_pr2F(vx73, vx74, Main.Pos(Main.Succ(Main.Zero)), vx72) 162.72/105.85 162.72/105.85 The TRS R consists of the following rules: 162.72/105.85 162.72/105.85 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.85 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.85 new_primDivNatS1 -> Main.Zero 162.72/105.85 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.85 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.72/105.85 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.85 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.85 new_error0 -> Prelude.error([]) 162.72/105.85 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.85 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.85 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.72/105.85 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.72/105.85 new_error -> Prelude.error([]) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.85 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.85 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.85 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.85 new_primMinusNatS2 -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.72/105.85 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.85 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.85 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.85 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.85 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.85 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.85 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.72/105.85 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.85 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.72/105.85 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.85 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.72/105.85 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.85 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.72/105.85 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.72/105.85 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.72/105.85 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.72/105.85 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.72/105.85 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.72/105.85 new_absMyInt0(Main.Zero) -> new_absReal10 162.72/105.85 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.72/105.85 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.72/105.85 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.72/105.85 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.72/105.85 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.72/105.85 new_primDivNatS2(Main.Zero) -> Main.Zero 162.72/105.85 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.72/105.85 162.72/105.85 The set Q consists of the following terms: 162.72/105.85 162.72/105.85 new_reduce2D1(x0, x1) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.85 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.85 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_primModNatS02(x0, x1) 162.72/105.85 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.85 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_gcd20(Main.Zero, x0, Main.Zero) 162.72/105.85 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.72/105.85 new_absReal1(x0) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.85 new_gcd22(Main.Zero, Main.Zero) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Zero) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.85 new_error0 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.72/105.85 new_gcd22(Main.Succ(x0), x1) 162.72/105.85 new_gcd20(Main.Succ(x0), x1, x2) 162.72/105.85 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primDivNatS02(x0, x1) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.85 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.85 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_error 162.72/105.85 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.85 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primModNatS1(Main.Zero, x0) 162.72/105.85 new_primRemInt(Main.Neg(x0), x1) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.85 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.85 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.72/105.85 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.72/105.85 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.72/105.85 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Zero, x0) 162.72/105.85 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.85 new_gcd21(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_absMyInt(Main.Zero) 162.72/105.85 new_primMulNat0(Main.Zero, Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.85 new_absMyInt(Main.Succ(x0)) 162.72/105.85 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_gcd2(Main.Succ(x0), x1) 162.72/105.85 new_absMyInt0(Main.Zero) 162.72/105.85 new_primMulNat1(Main.Zero) 162.72/105.85 new_absReal10 162.72/105.85 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.85 new_gcd0(x0, x1) 162.72/105.85 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.85 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_gcd2(Main.Zero, Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.85 new_reduce2D(x0, x1) 162.72/105.85 new_gcd22(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.72/105.85 new_reduce2D0(x0, x1) 162.72/105.85 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_primMinusNatS2 162.72/105.85 new_primDivNatS1 162.72/105.85 new_gcd2(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primDivNatS2(Main.Succ(x0)) 162.72/105.85 new_primMulNat1(Main.Succ(x0)) 162.72/105.85 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.85 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_primDivNatS2(Main.Zero) 162.72/105.85 new_gcd21(Main.Succ(x0), x1) 162.72/105.85 new_absMyInt0(Main.Succ(x0)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.72/105.85 new_reduce2D2(x0, x1) 162.72/105.85 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.85 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.85 new_primMinusNatS1(x0) 162.72/105.85 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.72/105.85 new_primRemInt(Main.Pos(x0), x1) 162.72/105.85 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_gcd21(Main.Zero, Main.Zero) 162.72/105.85 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.72/105.85 162.72/105.85 We have to consider all minimal (P,Q,R)-chains. 162.72/105.85 ---------------------------------------- 162.72/105.85 162.72/105.85 (530) TransformationProof (EQUIVALENT) 162.72/105.85 By rewriting [LPAR04] the rule new_pr2F0G0(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), new_primDivNatS1) at position [2] we obtained the following new rules [LPAR04]: 162.72/105.85 162.72/105.85 (new_pr2F0G0(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), Main.Zero),new_pr2F0G0(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), Main.Zero)) 162.72/105.85 162.72/105.85 162.72/105.85 ---------------------------------------- 162.72/105.85 162.72/105.85 (531) 162.72/105.85 Obligation: 162.72/105.85 Q DP problem: 162.72/105.85 The TRS P consists of the following rules: 162.72/105.85 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Zero) -> new_pr2F0G(vx72, new_srRatio(vx73), vx74) 162.72/105.85 new_pr2F0G(vx72, vx81, vx74) -> new_pr2F0G1(vx72, vx81, new_primDivNatS2(vx74)) 162.72/105.85 new_pr2F0G1(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Succ(vx7500))) -> new_pr2F0G10(vx72, vx73, vx74, vx7500) 162.72/105.85 new_pr2F(vx73, Main.Succ(vx740), Main.Pos(Main.Succ(Main.Zero)), vx72) -> new_pr2F30(Main.Succ(vx740), vx73, Main.Succ(vx740), vx72) 162.72/105.85 new_pr2F30(Main.Succ(vx880), vx73, vx87, vx72) -> new_pr2F0G0(new_srRatio0(vx73, vx72), vx73, vx87) 162.72/105.85 new_pr2F0G0(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Zero)) -> new_pr2F(vx73, vx74, Main.Pos(Main.Succ(Main.Zero)), vx72) 162.72/105.85 new_pr2F0G0(vx68, vx44, Main.Zero) -> new_pr2F0G1(vx68, new_srRatio(vx44), Main.Zero) 162.72/105.85 162.72/105.85 The TRS R consists of the following rules: 162.72/105.85 162.72/105.85 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.85 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.85 new_primDivNatS1 -> Main.Zero 162.72/105.85 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.85 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.72/105.85 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.85 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.85 new_error0 -> Prelude.error([]) 162.72/105.85 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.85 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.85 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.72/105.85 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.72/105.85 new_error -> Prelude.error([]) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.85 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.85 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.85 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.85 new_primMinusNatS2 -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.72/105.85 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.85 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.85 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.85 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.85 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.85 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.85 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.72/105.85 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.85 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.72/105.85 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.85 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.72/105.85 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.85 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.72/105.85 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.72/105.85 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.72/105.85 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.72/105.85 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.72/105.85 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.72/105.85 new_absMyInt0(Main.Zero) -> new_absReal10 162.72/105.85 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.72/105.85 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.72/105.85 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.72/105.85 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.72/105.85 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.72/105.85 new_primDivNatS2(Main.Zero) -> Main.Zero 162.72/105.85 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.72/105.85 162.72/105.85 The set Q consists of the following terms: 162.72/105.85 162.72/105.85 new_reduce2D1(x0, x1) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.85 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.85 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_primModNatS02(x0, x1) 162.72/105.85 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.85 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_gcd20(Main.Zero, x0, Main.Zero) 162.72/105.85 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.72/105.85 new_absReal1(x0) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.85 new_gcd22(Main.Zero, Main.Zero) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Zero) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.85 new_error0 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.72/105.85 new_gcd22(Main.Succ(x0), x1) 162.72/105.85 new_gcd20(Main.Succ(x0), x1, x2) 162.72/105.85 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primDivNatS02(x0, x1) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.85 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.85 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_error 162.72/105.85 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.85 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primModNatS1(Main.Zero, x0) 162.72/105.85 new_primRemInt(Main.Neg(x0), x1) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.85 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.85 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.72/105.85 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.72/105.85 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.72/105.85 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Zero, x0) 162.72/105.85 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.85 new_gcd21(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_absMyInt(Main.Zero) 162.72/105.85 new_primMulNat0(Main.Zero, Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.85 new_absMyInt(Main.Succ(x0)) 162.72/105.85 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_gcd2(Main.Succ(x0), x1) 162.72/105.85 new_absMyInt0(Main.Zero) 162.72/105.85 new_primMulNat1(Main.Zero) 162.72/105.85 new_absReal10 162.72/105.85 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.85 new_gcd0(x0, x1) 162.72/105.85 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.85 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_gcd2(Main.Zero, Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.85 new_reduce2D(x0, x1) 162.72/105.85 new_gcd22(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.72/105.85 new_reduce2D0(x0, x1) 162.72/105.85 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_primMinusNatS2 162.72/105.85 new_primDivNatS1 162.72/105.85 new_gcd2(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primDivNatS2(Main.Succ(x0)) 162.72/105.85 new_primMulNat1(Main.Succ(x0)) 162.72/105.85 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.85 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_primDivNatS2(Main.Zero) 162.72/105.85 new_gcd21(Main.Succ(x0), x1) 162.72/105.85 new_absMyInt0(Main.Succ(x0)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.72/105.85 new_reduce2D2(x0, x1) 162.72/105.85 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.85 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.85 new_primMinusNatS1(x0) 162.72/105.85 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.72/105.85 new_primRemInt(Main.Pos(x0), x1) 162.72/105.85 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_gcd21(Main.Zero, Main.Zero) 162.72/105.85 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.72/105.85 162.72/105.85 We have to consider all minimal (P,Q,R)-chains. 162.72/105.85 ---------------------------------------- 162.72/105.85 162.72/105.85 (532) DependencyGraphProof (EQUIVALENT) 162.72/105.85 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.72/105.85 ---------------------------------------- 162.72/105.85 162.72/105.85 (533) 162.72/105.85 Obligation: 162.72/105.85 Q DP problem: 162.72/105.85 The TRS P consists of the following rules: 162.72/105.85 162.72/105.85 new_pr2F0G(vx72, vx81, vx74) -> new_pr2F0G1(vx72, vx81, new_primDivNatS2(vx74)) 162.72/105.85 new_pr2F0G1(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Zero) -> new_pr2F0G(vx72, new_srRatio(vx73), vx74) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Succ(vx7500))) -> new_pr2F0G10(vx72, vx73, vx74, vx7500) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Zero)) -> new_pr2F(vx73, vx74, Main.Pos(Main.Succ(Main.Zero)), vx72) 162.72/105.85 new_pr2F(vx73, Main.Succ(vx740), Main.Pos(Main.Succ(Main.Zero)), vx72) -> new_pr2F30(Main.Succ(vx740), vx73, Main.Succ(vx740), vx72) 162.72/105.85 new_pr2F30(Main.Succ(vx880), vx73, vx87, vx72) -> new_pr2F0G0(new_srRatio0(vx73, vx72), vx73, vx87) 162.72/105.85 new_pr2F0G0(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.85 162.72/105.85 The TRS R consists of the following rules: 162.72/105.85 162.72/105.85 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.85 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.85 new_primDivNatS1 -> Main.Zero 162.72/105.85 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.85 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.72/105.85 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.85 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.85 new_error0 -> Prelude.error([]) 162.72/105.85 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.85 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.85 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.72/105.85 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.72/105.85 new_error -> Prelude.error([]) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.85 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.85 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.85 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.85 new_primMinusNatS2 -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.72/105.85 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.85 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.85 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.85 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.85 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.85 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.85 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.72/105.85 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.85 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.72/105.85 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.85 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.72/105.85 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.85 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.72/105.85 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.72/105.85 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.72/105.85 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.72/105.85 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.72/105.85 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.72/105.85 new_absMyInt0(Main.Zero) -> new_absReal10 162.72/105.85 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.72/105.85 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.72/105.85 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.72/105.85 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.72/105.85 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.72/105.85 new_primDivNatS2(Main.Zero) -> Main.Zero 162.72/105.85 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.72/105.85 162.72/105.85 The set Q consists of the following terms: 162.72/105.85 162.72/105.85 new_reduce2D1(x0, x1) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.85 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.85 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_primModNatS02(x0, x1) 162.72/105.85 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.85 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_gcd20(Main.Zero, x0, Main.Zero) 162.72/105.85 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.72/105.85 new_absReal1(x0) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.85 new_gcd22(Main.Zero, Main.Zero) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Zero) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.85 new_error0 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.72/105.85 new_gcd22(Main.Succ(x0), x1) 162.72/105.85 new_gcd20(Main.Succ(x0), x1, x2) 162.72/105.85 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primDivNatS02(x0, x1) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.85 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.85 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_error 162.72/105.85 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.85 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primModNatS1(Main.Zero, x0) 162.72/105.85 new_primRemInt(Main.Neg(x0), x1) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.85 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.85 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.72/105.85 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.72/105.85 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.72/105.85 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Zero, x0) 162.72/105.85 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.85 new_gcd21(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_absMyInt(Main.Zero) 162.72/105.85 new_primMulNat0(Main.Zero, Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.85 new_absMyInt(Main.Succ(x0)) 162.72/105.85 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_gcd2(Main.Succ(x0), x1) 162.72/105.85 new_absMyInt0(Main.Zero) 162.72/105.85 new_primMulNat1(Main.Zero) 162.72/105.85 new_absReal10 162.72/105.85 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.85 new_gcd0(x0, x1) 162.72/105.85 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.85 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_gcd2(Main.Zero, Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.85 new_reduce2D(x0, x1) 162.72/105.85 new_gcd22(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.72/105.85 new_reduce2D0(x0, x1) 162.72/105.85 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_primMinusNatS2 162.72/105.85 new_primDivNatS1 162.72/105.85 new_gcd2(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primDivNatS2(Main.Succ(x0)) 162.72/105.85 new_primMulNat1(Main.Succ(x0)) 162.72/105.85 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.85 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_primDivNatS2(Main.Zero) 162.72/105.85 new_gcd21(Main.Succ(x0), x1) 162.72/105.85 new_absMyInt0(Main.Succ(x0)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.72/105.85 new_reduce2D2(x0, x1) 162.72/105.85 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.85 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.85 new_primMinusNatS1(x0) 162.72/105.85 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.72/105.85 new_primRemInt(Main.Pos(x0), x1) 162.72/105.85 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_gcd21(Main.Zero, Main.Zero) 162.72/105.85 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.72/105.85 162.72/105.85 We have to consider all minimal (P,Q,R)-chains. 162.72/105.85 ---------------------------------------- 162.72/105.85 162.72/105.85 (534) UsableRulesProof (EQUIVALENT) 162.72/105.85 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.72/105.85 ---------------------------------------- 162.72/105.85 162.72/105.85 (535) 162.72/105.85 Obligation: 162.72/105.85 Q DP problem: 162.72/105.85 The TRS P consists of the following rules: 162.72/105.85 162.72/105.85 new_pr2F0G(vx72, vx81, vx74) -> new_pr2F0G1(vx72, vx81, new_primDivNatS2(vx74)) 162.72/105.85 new_pr2F0G1(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Zero) -> new_pr2F0G(vx72, new_srRatio(vx73), vx74) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Succ(vx7500))) -> new_pr2F0G10(vx72, vx73, vx74, vx7500) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Zero)) -> new_pr2F(vx73, vx74, Main.Pos(Main.Succ(Main.Zero)), vx72) 162.72/105.85 new_pr2F(vx73, Main.Succ(vx740), Main.Pos(Main.Succ(Main.Zero)), vx72) -> new_pr2F30(Main.Succ(vx740), vx73, Main.Succ(vx740), vx72) 162.72/105.85 new_pr2F30(Main.Succ(vx880), vx73, vx87, vx72) -> new_pr2F0G0(new_srRatio0(vx73, vx72), vx73, vx87) 162.72/105.85 new_pr2F0G0(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.85 162.72/105.85 The TRS R consists of the following rules: 162.72/105.85 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.72/105.85 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.85 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.85 new_error0 -> Prelude.error([]) 162.72/105.85 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.85 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.85 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.72/105.85 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.72/105.85 new_error -> Prelude.error([]) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.85 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.85 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.85 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.85 new_primMinusNatS2 -> Main.Zero 162.72/105.85 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.85 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.85 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.85 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.72/105.85 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.85 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.85 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.85 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.85 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.72/105.85 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.85 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.72/105.85 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.85 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.72/105.85 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.72/105.85 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.72/105.85 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.72/105.85 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.72/105.85 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.72/105.85 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.72/105.85 new_absMyInt0(Main.Zero) -> new_absReal10 162.72/105.85 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.72/105.85 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.72/105.85 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.72/105.85 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.72/105.85 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.72/105.85 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.85 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.85 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.85 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.72/105.85 new_primDivNatS2(Main.Zero) -> Main.Zero 162.72/105.85 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.72/105.85 162.72/105.85 The set Q consists of the following terms: 162.72/105.85 162.72/105.85 new_reduce2D1(x0, x1) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.85 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.85 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_primModNatS02(x0, x1) 162.72/105.85 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.85 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_gcd20(Main.Zero, x0, Main.Zero) 162.72/105.85 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.72/105.85 new_absReal1(x0) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.85 new_gcd22(Main.Zero, Main.Zero) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Zero) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.85 new_error0 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.72/105.85 new_gcd22(Main.Succ(x0), x1) 162.72/105.85 new_gcd20(Main.Succ(x0), x1, x2) 162.72/105.85 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primDivNatS02(x0, x1) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.85 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.85 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_error 162.72/105.85 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.85 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primModNatS1(Main.Zero, x0) 162.72/105.85 new_primRemInt(Main.Neg(x0), x1) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.85 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.85 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.72/105.85 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.72/105.85 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.72/105.85 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Zero, x0) 162.72/105.85 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.85 new_gcd21(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_absMyInt(Main.Zero) 162.72/105.85 new_primMulNat0(Main.Zero, Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.85 new_absMyInt(Main.Succ(x0)) 162.72/105.85 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_gcd2(Main.Succ(x0), x1) 162.72/105.85 new_absMyInt0(Main.Zero) 162.72/105.85 new_primMulNat1(Main.Zero) 162.72/105.85 new_absReal10 162.72/105.85 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.85 new_gcd0(x0, x1) 162.72/105.85 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.85 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_gcd2(Main.Zero, Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.85 new_reduce2D(x0, x1) 162.72/105.85 new_gcd22(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.72/105.85 new_reduce2D0(x0, x1) 162.72/105.85 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_primMinusNatS2 162.72/105.85 new_primDivNatS1 162.72/105.85 new_gcd2(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primDivNatS2(Main.Succ(x0)) 162.72/105.85 new_primMulNat1(Main.Succ(x0)) 162.72/105.85 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.85 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_primDivNatS2(Main.Zero) 162.72/105.85 new_gcd21(Main.Succ(x0), x1) 162.72/105.85 new_absMyInt0(Main.Succ(x0)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.72/105.85 new_reduce2D2(x0, x1) 162.72/105.85 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.85 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.85 new_primMinusNatS1(x0) 162.72/105.85 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.72/105.85 new_primRemInt(Main.Pos(x0), x1) 162.72/105.85 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_gcd21(Main.Zero, Main.Zero) 162.72/105.85 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.72/105.85 162.72/105.85 We have to consider all minimal (P,Q,R)-chains. 162.72/105.85 ---------------------------------------- 162.72/105.85 162.72/105.85 (536) QReductionProof (EQUIVALENT) 162.72/105.85 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 162.72/105.85 162.72/105.85 new_primDivNatS1 162.72/105.85 162.72/105.85 162.72/105.85 ---------------------------------------- 162.72/105.85 162.72/105.85 (537) 162.72/105.85 Obligation: 162.72/105.85 Q DP problem: 162.72/105.85 The TRS P consists of the following rules: 162.72/105.85 162.72/105.85 new_pr2F0G(vx72, vx81, vx74) -> new_pr2F0G1(vx72, vx81, new_primDivNatS2(vx74)) 162.72/105.85 new_pr2F0G1(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Zero) -> new_pr2F0G(vx72, new_srRatio(vx73), vx74) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Succ(vx7500))) -> new_pr2F0G10(vx72, vx73, vx74, vx7500) 162.72/105.85 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Zero)) -> new_pr2F(vx73, vx74, Main.Pos(Main.Succ(Main.Zero)), vx72) 162.72/105.85 new_pr2F(vx73, Main.Succ(vx740), Main.Pos(Main.Succ(Main.Zero)), vx72) -> new_pr2F30(Main.Succ(vx740), vx73, Main.Succ(vx740), vx72) 162.72/105.85 new_pr2F30(Main.Succ(vx880), vx73, vx87, vx72) -> new_pr2F0G0(new_srRatio0(vx73, vx72), vx73, vx87) 162.72/105.85 new_pr2F0G0(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.85 162.72/105.85 The TRS R consists of the following rules: 162.72/105.85 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.85 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.72/105.85 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.72/105.85 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.85 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.85 new_error0 -> Prelude.error([]) 162.72/105.85 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.85 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.85 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.85 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.85 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.72/105.85 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.72/105.85 new_error -> Prelude.error([]) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.85 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.85 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.85 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.85 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.85 new_primMinusNatS2 -> Main.Zero 162.72/105.85 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.85 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.85 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.85 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.85 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.72/105.85 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.85 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.85 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.85 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.85 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.85 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.72/105.85 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.85 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.72/105.85 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.85 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.85 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.72/105.85 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.85 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.72/105.85 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.72/105.85 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.72/105.85 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.85 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.85 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.72/105.85 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.72/105.85 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.72/105.85 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.72/105.85 new_absMyInt0(Main.Zero) -> new_absReal10 162.72/105.85 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.72/105.85 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.72/105.85 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.72/105.85 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.72/105.85 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.72/105.85 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.72/105.85 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.85 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.85 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.85 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.72/105.85 new_primDivNatS2(Main.Zero) -> Main.Zero 162.72/105.85 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.72/105.85 162.72/105.85 The set Q consists of the following terms: 162.72/105.85 162.72/105.85 new_reduce2D1(x0, x1) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.85 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.85 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_primModNatS02(x0, x1) 162.72/105.85 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.85 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_gcd20(Main.Zero, x0, Main.Zero) 162.72/105.85 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.72/105.85 new_absReal1(x0) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.85 new_gcd22(Main.Zero, Main.Zero) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Zero) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.85 new_error0 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.72/105.85 new_gcd22(Main.Succ(x0), x1) 162.72/105.85 new_gcd20(Main.Succ(x0), x1, x2) 162.72/105.85 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primDivNatS02(x0, x1) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.85 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.85 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.85 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_error 162.72/105.85 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.85 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primModNatS1(Main.Zero, x0) 162.72/105.85 new_primRemInt(Main.Neg(x0), x1) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.85 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.85 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.72/105.85 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.72/105.85 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.72/105.85 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_primDivNatS3(Main.Zero, x0) 162.72/105.85 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.85 new_gcd21(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_absMyInt(Main.Zero) 162.72/105.85 new_primMulNat0(Main.Zero, Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.85 new_absMyInt(Main.Succ(x0)) 162.72/105.85 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.72/105.85 new_gcd2(Main.Succ(x0), x1) 162.72/105.85 new_absMyInt0(Main.Zero) 162.72/105.85 new_primMulNat1(Main.Zero) 162.72/105.85 new_absReal10 162.72/105.85 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.85 new_gcd0(x0, x1) 162.72/105.85 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.72/105.85 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.85 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.72/105.85 new_gcd2(Main.Zero, Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.85 new_reduce2D(x0, x1) 162.72/105.85 new_gcd22(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.72/105.85 new_reduce2D0(x0, x1) 162.72/105.85 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.72/105.85 new_primMinusNatS2 162.72/105.85 new_gcd2(Main.Zero, Main.Succ(x0)) 162.72/105.85 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.85 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.85 new_primDivNatS2(Main.Succ(x0)) 162.72/105.85 new_primMulNat1(Main.Succ(x0)) 162.72/105.85 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.85 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.85 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.85 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.85 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.85 new_primDivNatS2(Main.Zero) 162.72/105.85 new_gcd21(Main.Succ(x0), x1) 162.72/105.86 new_absMyInt0(Main.Succ(x0)) 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.72/105.86 new_reduce2D2(x0, x1) 162.72/105.86 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.86 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.86 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.86 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.86 new_primMinusNatS1(x0) 162.72/105.86 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.72/105.86 new_primRemInt(Main.Pos(x0), x1) 162.72/105.86 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.72/105.86 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.86 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.86 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.86 new_gcd21(Main.Zero, Main.Zero) 162.72/105.86 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.86 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.72/105.86 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.72/105.86 162.72/105.86 We have to consider all minimal (P,Q,R)-chains. 162.72/105.86 ---------------------------------------- 162.72/105.86 162.72/105.86 (538) TransformationProof (EQUIVALENT) 162.72/105.86 By instantiating [LPAR04] the rule new_pr2F30(Main.Succ(vx880), vx73, vx87, vx72) -> new_pr2F0G0(new_srRatio0(vx73, vx72), vx73, vx87) we obtained the following new rules [LPAR04]: 162.72/105.86 162.72/105.86 (new_pr2F30(Main.Succ(z1), z0, Main.Succ(z1), z2) -> new_pr2F0G0(new_srRatio0(z0, z2), z0, Main.Succ(z1)),new_pr2F30(Main.Succ(z1), z0, Main.Succ(z1), z2) -> new_pr2F0G0(new_srRatio0(z0, z2), z0, Main.Succ(z1))) 162.72/105.86 162.72/105.86 162.72/105.86 ---------------------------------------- 162.72/105.86 162.72/105.86 (539) 162.72/105.86 Obligation: 162.72/105.86 Q DP problem: 162.72/105.86 The TRS P consists of the following rules: 162.72/105.86 162.72/105.86 new_pr2F0G(vx72, vx81, vx74) -> new_pr2F0G1(vx72, vx81, new_primDivNatS2(vx74)) 162.72/105.86 new_pr2F0G1(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.86 new_pr2F0G10(vx72, vx73, vx74, Main.Zero) -> new_pr2F0G(vx72, new_srRatio(vx73), vx74) 162.72/105.86 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Succ(vx7500))) -> new_pr2F0G10(vx72, vx73, vx74, vx7500) 162.72/105.86 new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Zero)) -> new_pr2F(vx73, vx74, Main.Pos(Main.Succ(Main.Zero)), vx72) 162.72/105.86 new_pr2F(vx73, Main.Succ(vx740), Main.Pos(Main.Succ(Main.Zero)), vx72) -> new_pr2F30(Main.Succ(vx740), vx73, Main.Succ(vx740), vx72) 162.72/105.86 new_pr2F0G0(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) 162.72/105.86 new_pr2F30(Main.Succ(z1), z0, Main.Succ(z1), z2) -> new_pr2F0G0(new_srRatio0(z0, z2), z0, Main.Succ(z1)) 162.72/105.86 162.72/105.86 The TRS R consists of the following rules: 162.72/105.86 162.72/105.86 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.86 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.86 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.86 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.86 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.72/105.86 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.72/105.86 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.72/105.86 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.86 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.86 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.86 new_error0 -> Prelude.error([]) 162.72/105.86 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.86 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.86 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.86 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.86 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.86 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.86 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.86 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.86 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.86 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.86 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.72/105.86 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.72/105.86 new_error -> Prelude.error([]) 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.72/105.86 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.86 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.72/105.86 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.86 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.86 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.86 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.86 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.86 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.86 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.86 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.86 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.86 new_primMinusNatS2 -> Main.Zero 162.72/105.86 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.86 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.86 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.86 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.86 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.86 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.86 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.86 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.86 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.72/105.86 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.86 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.86 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.86 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.86 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.86 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.86 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.86 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.86 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.86 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.86 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.86 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.86 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.86 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.72/105.86 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.86 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.72/105.86 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.86 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.86 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.86 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.86 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.72/105.86 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.72/105.86 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.86 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.72/105.86 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.86 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.72/105.86 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.72/105.86 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.72/105.86 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.86 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.86 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.86 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.86 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.86 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.86 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.86 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.86 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.72/105.86 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.72/105.86 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.72/105.86 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.72/105.86 new_absMyInt0(Main.Zero) -> new_absReal10 162.72/105.86 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.72/105.86 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.72/105.86 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.72/105.86 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.72/105.86 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.72/105.86 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.72/105.86 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.86 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.86 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.86 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.72/105.86 new_primDivNatS2(Main.Zero) -> Main.Zero 162.72/105.86 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.72/105.86 162.72/105.86 The set Q consists of the following terms: 162.72/105.86 162.72/105.86 new_reduce2D1(x0, x1) 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.86 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.86 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.86 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.72/105.86 new_primModNatS02(x0, x1) 162.72/105.86 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.86 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.86 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.86 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.72/105.86 new_gcd20(Main.Zero, x0, Main.Zero) 162.72/105.86 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.72/105.86 new_absReal1(x0) 162.72/105.86 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.86 new_gcd22(Main.Zero, Main.Zero) 162.72/105.86 new_primPlusNat0(Main.Zero, Main.Zero) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.86 new_error0 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.72/105.86 new_gcd22(Main.Succ(x0), x1) 162.72/105.86 new_gcd20(Main.Succ(x0), x1, x2) 162.72/105.86 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.72/105.86 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.86 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.86 new_primDivNatS02(x0, x1) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.86 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.86 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.72/105.86 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.86 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.86 new_error 162.72/105.86 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.86 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.86 new_primModNatS1(Main.Zero, x0) 162.72/105.86 new_primRemInt(Main.Neg(x0), x1) 162.72/105.86 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.72/105.86 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.72/105.86 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.86 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.72/105.86 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.86 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.72/105.86 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.72/105.86 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.72/105.86 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.86 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.86 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.72/105.86 new_primDivNatS3(Main.Zero, x0) 162.72/105.86 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.86 new_gcd21(Main.Zero, Main.Succ(x0)) 162.72/105.86 new_absMyInt(Main.Zero) 162.72/105.86 new_primMulNat0(Main.Zero, Main.Zero) 162.72/105.86 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.86 new_absMyInt(Main.Succ(x0)) 162.72/105.86 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.72/105.86 new_gcd2(Main.Succ(x0), x1) 162.72/105.86 new_absMyInt0(Main.Zero) 162.72/105.86 new_primMulNat1(Main.Zero) 162.72/105.86 new_absReal10 162.72/105.86 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.86 new_gcd0(x0, x1) 162.72/105.86 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.72/105.86 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.86 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.72/105.86 new_gcd2(Main.Zero, Main.Zero) 162.72/105.86 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.86 new_reduce2D(x0, x1) 162.72/105.86 new_gcd22(Main.Zero, Main.Succ(x0)) 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.72/105.86 new_reduce2D0(x0, x1) 162.72/105.86 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.72/105.86 new_primMinusNatS2 162.72/105.86 new_gcd2(Main.Zero, Main.Succ(x0)) 162.72/105.86 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.86 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.86 new_primDivNatS2(Main.Succ(x0)) 162.72/105.86 new_primMulNat1(Main.Succ(x0)) 162.72/105.86 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.86 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.86 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.86 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.86 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.86 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.86 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.86 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.86 new_primDivNatS2(Main.Zero) 162.72/105.86 new_gcd21(Main.Succ(x0), x1) 162.72/105.86 new_absMyInt0(Main.Succ(x0)) 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.72/105.86 new_reduce2D2(x0, x1) 162.72/105.86 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.86 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.86 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.86 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.86 new_primMinusNatS1(x0) 162.72/105.86 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.72/105.86 new_primRemInt(Main.Pos(x0), x1) 162.72/105.86 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.72/105.86 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.86 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.86 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.86 new_gcd21(Main.Zero, Main.Zero) 162.72/105.86 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.86 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.72/105.86 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.72/105.86 162.72/105.86 We have to consider all minimal (P,Q,R)-chains. 162.72/105.86 ---------------------------------------- 162.72/105.86 162.72/105.86 (540) QDPSizeChangeProof (EQUIVALENT) 162.72/105.86 We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. 162.72/105.86 162.72/105.86 Order:Polynomial interpretation [POLO]: 162.72/105.86 162.72/105.86 POL(Main.Pos(x_1)) = 1 162.72/105.86 POL(Main.Succ(x_1)) = 1 + x_1 162.72/105.86 POL(Main.Zero) = 1 162.72/105.86 POL(new_primDivNatS01(x_1, x_2, x_3, x_4)) = 1 + x_1 162.72/105.86 POL(new_primDivNatS02(x_1, x_2)) = 1 + x_1 162.72/105.86 POL(new_primDivNatS2(x_1)) = x_1 162.72/105.86 POL(new_primDivNatS3(x_1, x_2)) = x_1 162.72/105.86 POL(new_primMinusNatS0(x_1, x_2)) = x_1 162.72/105.86 162.72/105.86 162.72/105.86 162.72/105.86 162.72/105.86 From the DPs we obtained the following set of size-change graphs: 162.72/105.86 *new_pr2F0G1(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) (allowed arguments on rhs = {1, 2, 3, 4}) 162.72/105.86 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 3 > 4 162.72/105.86 162.72/105.86 162.72/105.86 *new_pr2F0G10(vx72, vx73, vx74, Main.Zero) -> new_pr2F0G(vx72, new_srRatio(vx73), vx74) (allowed arguments on rhs = {1, 3}) 162.72/105.86 The graph contains the following edges 1 >= 1, 3 >= 3 162.72/105.86 162.72/105.86 162.72/105.86 *new_pr2F0G(vx72, vx81, vx74) -> new_pr2F0G1(vx72, vx81, new_primDivNatS2(vx74)) (allowed arguments on rhs = {1, 2, 3}) 162.72/105.86 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3 162.72/105.86 162.72/105.86 162.72/105.86 *new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Succ(vx7500))) -> new_pr2F0G10(vx72, vx73, vx74, vx7500) (allowed arguments on rhs = {1, 2, 3, 4}) 162.72/105.86 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 > 4 162.72/105.86 162.72/105.86 162.72/105.86 *new_pr2F0G10(vx72, vx73, vx74, Main.Succ(Main.Zero)) -> new_pr2F(vx73, vx74, Main.Pos(Main.Succ(Main.Zero)), vx72) (allowed arguments on rhs = {1, 2, 3, 4}) 162.72/105.86 The graph contains the following edges 2 >= 1, 3 >= 2, 1 >= 4 162.72/105.86 162.72/105.86 162.72/105.86 *new_pr2F0G0(vx68, vx44, Main.Succ(Main.Succ(vx5900))) -> new_pr2F0G10(vx68, vx44, Main.Succ(vx5900), vx5900) (allowed arguments on rhs = {1, 2, 3, 4}) 162.72/105.86 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 3 > 4 162.72/105.86 162.72/105.86 162.72/105.86 *new_pr2F(vx73, Main.Succ(vx740), Main.Pos(Main.Succ(Main.Zero)), vx72) -> new_pr2F30(Main.Succ(vx740), vx73, Main.Succ(vx740), vx72) (allowed arguments on rhs = {1, 2, 3, 4}) 162.72/105.86 The graph contains the following edges 2 >= 1, 1 >= 2, 2 >= 3, 4 >= 4 162.72/105.86 162.72/105.86 162.72/105.86 *new_pr2F30(Main.Succ(z1), z0, Main.Succ(z1), z2) -> new_pr2F0G0(new_srRatio0(z0, z2), z0, Main.Succ(z1)) (allowed arguments on rhs = {2, 3}) 162.72/105.86 The graph contains the following edges 2 >= 2, 1 >= 3, 3 >= 3 162.72/105.86 162.72/105.86 162.72/105.86 162.72/105.86 We oriented the following set of usable rules [AAECC05,FROCOS05]. 162.72/105.86 162.72/105.86 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.86 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.86 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.86 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.86 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.86 new_primDivNatS2(Main.Zero) -> Main.Zero 162.72/105.86 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.72/105.86 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.86 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.86 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.86 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.86 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.86 162.72/105.86 ---------------------------------------- 162.72/105.86 162.72/105.86 (541) 162.72/105.86 YES 162.72/105.86 162.72/105.86 ---------------------------------------- 162.72/105.86 162.72/105.86 (542) 162.72/105.86 Obligation: 162.72/105.86 Q DP problem: 162.72/105.86 The TRS P consists of the following rules: 162.72/105.86 162.72/105.86 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, new_fromIntMyInt, vx77) 162.72/105.86 new_pr2F0(vx78, vx79, Main.Pos(vx860), vx77) -> new_pr2F31(new_primPlusNat0(Main.Succ(vx79), vx860), vx78, new_primPlusNat0(Main.Succ(vx79), vx860), vx77) 162.72/105.86 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.72/105.86 new_pr2F32(vx620, vx50, Main.Zero, vx67) -> new_pr2F0G12(vx67, new_srRatio(vx50), new_primDivNatS1) 162.72/105.86 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.72/105.86 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.72/105.86 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.72/105.86 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, new_fromIntMyInt, vx67) 162.72/105.86 new_pr2F0G12(vx67, vx50, Main.Zero) -> new_pr2F0G12(vx67, new_srRatio(vx50), new_primDivNatS1) 162.72/105.86 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.72/105.86 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.72/105.86 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, new_fromIntMyInt, vx67) 162.72/105.86 162.72/105.86 The TRS R consists of the following rules: 162.72/105.86 162.72/105.86 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.72/105.86 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.86 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.86 new_error -> Prelude.error([]) 162.72/105.86 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.86 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.86 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.86 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.86 new_absMyInt0(Main.Zero) -> new_absReal10 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.86 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.86 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.86 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.86 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.86 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.86 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.86 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.86 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.72/105.86 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.86 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.86 new_error0 -> Prelude.error([]) 162.72/105.86 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.86 new_primMinusNatS2 -> Main.Zero 162.72/105.86 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.86 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.86 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.86 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.86 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.86 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.86 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.86 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.86 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.86 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.86 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.86 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.86 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.72/105.86 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.86 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.86 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.86 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.86 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.86 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.86 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.86 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.86 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.86 new_primDivNatS2(Main.Zero) -> Main.Zero 162.72/105.86 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.86 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.86 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.72/105.86 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.86 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.86 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.86 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.72/105.86 new_primDivNatS1 -> Main.Zero 162.72/105.86 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.86 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.72/105.86 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.86 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.72/105.86 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.86 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.86 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.86 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.72/105.86 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.86 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.86 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.72/105.86 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.72/105.86 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.72/105.86 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.72/105.86 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.72/105.86 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.86 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.86 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.72/105.86 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.72/105.86 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.72/105.86 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.86 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.72/105.86 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.72/105.86 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.86 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.72/105.86 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.86 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.72/105.86 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.86 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.86 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.86 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.72/105.86 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.72/105.86 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.72/105.86 new_fromIntMyInt -> Main.Pos(Main.Succ(Main.Zero)) 162.72/105.86 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.72/105.86 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.72/105.86 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.72/105.86 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.72/105.86 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.86 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.72/105.86 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.72/105.86 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.72/105.86 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.72/105.86 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.86 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.72/105.86 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.72/105.86 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.86 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.72/105.86 162.72/105.86 The set Q consists of the following terms: 162.72/105.86 162.72/105.86 new_reduce2D1(x0, x1) 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.86 new_fromIntMyInt 162.72/105.86 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.86 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.72/105.86 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.72/105.86 new_primModNatS02(x0, x1) 162.72/105.86 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.86 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.86 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.86 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.72/105.86 new_gcd20(Main.Zero, x0, Main.Zero) 162.72/105.86 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.72/105.86 new_absReal1(x0) 162.72/105.86 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.72/105.86 new_gcd22(Main.Zero, Main.Zero) 162.72/105.86 new_primPlusNat0(Main.Zero, Main.Zero) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.72/105.86 new_error0 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.72/105.86 new_gcd22(Main.Succ(x0), x1) 162.72/105.86 new_gcd20(Main.Succ(x0), x1, x2) 162.72/105.86 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.72/105.86 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.86 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.86 new_primDivNatS02(x0, x1) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.72/105.86 new_primRemInt0(Main.Neg(x0), x1) 162.72/105.86 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.72/105.86 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.86 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.86 new_error 162.72/105.86 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.72/105.86 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.86 new_primModNatS1(Main.Zero, x0) 162.72/105.86 new_primRemInt(Main.Neg(x0), x1) 162.72/105.86 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.72/105.86 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.72/105.86 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.86 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.72/105.86 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.72/105.86 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.72/105.86 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.72/105.86 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.72/105.86 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.86 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.86 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.72/105.86 new_primDivNatS3(Main.Zero, x0) 162.72/105.86 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.86 new_gcd21(Main.Zero, Main.Succ(x0)) 162.72/105.86 new_absMyInt(Main.Zero) 162.72/105.86 new_primMulNat0(Main.Zero, Main.Zero) 162.72/105.86 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.72/105.86 new_absMyInt(Main.Succ(x0)) 162.72/105.86 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.72/105.86 new_gcd2(Main.Succ(x0), x1) 162.72/105.86 new_absMyInt0(Main.Zero) 162.72/105.86 new_primMulNat1(Main.Zero) 162.72/105.86 new_absReal10 162.72/105.86 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.86 new_gcd0(x0, x1) 162.72/105.86 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.72/105.86 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.86 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.72/105.86 new_gcd2(Main.Zero, Main.Zero) 162.72/105.86 new_primMinusNatS0(Main.Zero, Main.Zero) 162.72/105.86 new_reduce2D(x0, x1) 162.72/105.86 new_gcd22(Main.Zero, Main.Succ(x0)) 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.72/105.86 new_reduce2D0(x0, x1) 162.72/105.86 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.72/105.86 new_primMinusNatS2 162.72/105.86 new_primDivNatS1 162.72/105.86 new_gcd2(Main.Zero, Main.Succ(x0)) 162.72/105.86 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.86 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.86 new_primDivNatS2(Main.Succ(x0)) 162.72/105.86 new_primMulNat1(Main.Succ(x0)) 162.72/105.86 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.86 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.86 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.72/105.86 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.86 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.72/105.86 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.72/105.86 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.72/105.86 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.86 new_primDivNatS2(Main.Zero) 162.72/105.86 new_gcd21(Main.Succ(x0), x1) 162.72/105.86 new_absMyInt0(Main.Succ(x0)) 162.72/105.86 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.72/105.86 new_reduce2D2(x0, x1) 162.72/105.86 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.72/105.86 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.72/105.86 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.72/105.86 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.72/105.86 new_primMinusNatS1(x0) 162.72/105.86 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.72/105.86 new_primRemInt(Main.Pos(x0), x1) 162.72/105.86 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.72/105.86 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.72/105.86 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.72/105.86 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.72/105.86 new_gcd21(Main.Zero, Main.Zero) 162.72/105.86 new_primRemInt0(Main.Pos(x0), x1) 162.72/105.86 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.72/105.86 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.72/105.86 162.72/105.86 We have to consider all minimal (P,Q,R)-chains. 162.72/105.86 ---------------------------------------- 162.72/105.86 162.72/105.86 (543) TransformationProof (EQUIVALENT) 162.72/105.86 By rewriting [LPAR04] the rule new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, new_fromIntMyInt, vx77) at position [2] we obtained the following new rules [LPAR04]: 162.72/105.86 162.72/105.86 (new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77),new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77)) 162.72/105.86 162.72/105.86 162.72/105.86 ---------------------------------------- 162.72/105.86 162.72/105.86 (544) 162.72/105.86 Obligation: 162.72/105.86 Q DP problem: 162.72/105.86 The TRS P consists of the following rules: 162.72/105.86 162.72/105.86 new_pr2F0(vx78, vx79, Main.Pos(vx860), vx77) -> new_pr2F31(new_primPlusNat0(Main.Succ(vx79), vx860), vx78, new_primPlusNat0(Main.Succ(vx79), vx860), vx77) 162.72/105.86 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.72/105.86 new_pr2F32(vx620, vx50, Main.Zero, vx67) -> new_pr2F0G12(vx67, new_srRatio(vx50), new_primDivNatS1) 162.72/105.86 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.72/105.86 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.72/105.86 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.72/105.86 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, new_fromIntMyInt, vx67) 162.72/105.86 new_pr2F0G12(vx67, vx50, Main.Zero) -> new_pr2F0G12(vx67, new_srRatio(vx50), new_primDivNatS1) 162.72/105.86 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.72/105.86 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.72/105.86 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, new_fromIntMyInt, vx67) 162.72/105.86 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.72/105.86 162.72/105.86 The TRS R consists of the following rules: 162.72/105.86 162.72/105.86 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.72/105.86 new_absReal10 -> Main.Neg(Main.Zero) 162.72/105.86 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.72/105.86 new_error -> Prelude.error([]) 162.72/105.86 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.72/105.86 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.72/105.86 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.72/105.86 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.72/105.86 new_absMyInt0(Main.Zero) -> new_absReal10 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.86 new_primMulNat1(Main.Zero) -> Main.Zero 162.72/105.86 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.72/105.86 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.86 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.72/105.86 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.72/105.86 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.86 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.86 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.72/105.86 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.72/105.86 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.72/105.86 new_error0 -> Prelude.error([]) 162.72/105.86 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.72/105.86 new_primMinusNatS2 -> Main.Zero 162.72/105.86 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.72/105.86 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.86 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.72/105.86 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.86 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.72/105.86 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.72/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.72/105.86 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.72/105.86 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.72/105.86 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.72/105.86 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.72/105.86 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.72/105.86 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.86 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.72/105.86 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.86 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.72/105.86 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.72/105.86 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.72/105.86 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.72/105.86 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.72/105.86 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.72/105.86 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.86 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.72/105.86 new_primDivNatS2(Main.Zero) -> Main.Zero 162.72/105.86 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.72/105.86 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.72/105.86 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.72/105.86 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.72/105.86 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.72/105.86 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.72/105.86 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.72/105.86 new_primDivNatS1 -> Main.Zero 162.72/105.86 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.72/105.86 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.72/105.86 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.72/105.86 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.72/105.86 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.72/105.86 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.72/105.86 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.72/105.86 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.72/105.86 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.86 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.72/105.86 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.86 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.86 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.86 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.86 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.86 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.86 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.86 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.86 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.86 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.86 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.86 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.86 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.86 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.86 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.86 new_fromIntMyInt -> Main.Pos(Main.Succ(Main.Zero)) 162.74/105.86 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.86 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.86 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.86 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.86 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.86 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.86 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.86 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.86 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.86 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.86 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 162.74/105.86 The set Q consists of the following terms: 162.74/105.86 162.74/105.86 new_reduce2D1(x0, x1) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.86 new_fromIntMyInt 162.74/105.86 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.86 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.86 new_primModNatS02(x0, x1) 162.74/105.86 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.86 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.86 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.86 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.86 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.86 new_absReal1(x0) 162.74/105.86 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.86 new_gcd22(Main.Zero, Main.Zero) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.86 new_error0 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.86 new_gcd22(Main.Succ(x0), x1) 162.74/105.86 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.86 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.86 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_primDivNatS02(x0, x1) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.86 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.86 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_error 162.74/105.86 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.86 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_primModNatS1(Main.Zero, x0) 162.74/105.86 new_primRemInt(Main.Neg(x0), x1) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.86 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.86 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.86 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.86 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.86 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.86 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.86 new_primDivNatS3(Main.Zero, x0) 162.74/105.86 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.86 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_absMyInt(Main.Zero) 162.74/105.86 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.86 new_absMyInt(Main.Succ(x0)) 162.74/105.86 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.86 new_gcd2(Main.Succ(x0), x1) 162.74/105.86 new_absMyInt0(Main.Zero) 162.74/105.86 new_primMulNat1(Main.Zero) 162.74/105.86 new_absReal10 162.74/105.86 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.86 new_gcd0(x0, x1) 162.74/105.86 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.86 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.86 new_gcd2(Main.Zero, Main.Zero) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.86 new_reduce2D(x0, x1) 162.74/105.86 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.86 new_reduce2D0(x0, x1) 162.74/105.86 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.86 new_primMinusNatS2 162.74/105.86 new_primDivNatS1 162.74/105.86 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_primDivNatS2(Main.Succ(x0)) 162.74/105.86 new_primMulNat1(Main.Succ(x0)) 162.74/105.86 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.86 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.86 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.86 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.86 new_primDivNatS2(Main.Zero) 162.74/105.86 new_gcd21(Main.Succ(x0), x1) 162.74/105.86 new_absMyInt0(Main.Succ(x0)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.86 new_reduce2D2(x0, x1) 162.74/105.86 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.86 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.86 new_primMinusNatS1(x0) 162.74/105.86 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.86 new_primRemInt(Main.Pos(x0), x1) 162.74/105.86 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.86 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.86 new_gcd21(Main.Zero, Main.Zero) 162.74/105.86 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.86 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.86 162.74/105.86 We have to consider all minimal (P,Q,R)-chains. 162.74/105.86 ---------------------------------------- 162.74/105.86 162.74/105.86 (545) TransformationProof (EQUIVALENT) 162.74/105.86 By rewriting [LPAR04] the rule new_pr2F32(vx620, vx50, Main.Zero, vx67) -> new_pr2F0G12(vx67, new_srRatio(vx50), new_primDivNatS1) at position [2] we obtained the following new rules [LPAR04]: 162.74/105.86 162.74/105.86 (new_pr2F32(vx620, vx50, Main.Zero, vx67) -> new_pr2F0G12(vx67, new_srRatio(vx50), Main.Zero),new_pr2F32(vx620, vx50, Main.Zero, vx67) -> new_pr2F0G12(vx67, new_srRatio(vx50), Main.Zero)) 162.74/105.86 162.74/105.86 162.74/105.86 ---------------------------------------- 162.74/105.86 162.74/105.86 (546) 162.74/105.86 Obligation: 162.74/105.86 Q DP problem: 162.74/105.86 The TRS P consists of the following rules: 162.74/105.86 162.74/105.86 new_pr2F0(vx78, vx79, Main.Pos(vx860), vx77) -> new_pr2F31(new_primPlusNat0(Main.Succ(vx79), vx860), vx78, new_primPlusNat0(Main.Succ(vx79), vx860), vx77) 162.74/105.86 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.74/105.86 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.86 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.86 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.86 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, new_fromIntMyInt, vx67) 162.74/105.86 new_pr2F0G12(vx67, vx50, Main.Zero) -> new_pr2F0G12(vx67, new_srRatio(vx50), new_primDivNatS1) 162.74/105.86 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.86 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.86 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, new_fromIntMyInt, vx67) 162.74/105.86 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.86 new_pr2F32(vx620, vx50, Main.Zero, vx67) -> new_pr2F0G12(vx67, new_srRatio(vx50), Main.Zero) 162.74/105.86 162.74/105.86 The TRS R consists of the following rules: 162.74/105.86 162.74/105.86 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.86 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.86 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.86 new_error -> Prelude.error([]) 162.74/105.86 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.86 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.86 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.86 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.86 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.86 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.86 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.86 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.86 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.86 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.86 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.86 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.86 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.86 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.86 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.86 new_error0 -> Prelude.error([]) 162.74/105.86 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.86 new_primMinusNatS2 -> Main.Zero 162.74/105.86 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.86 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.86 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.86 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.86 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.86 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.86 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.86 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.86 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.86 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.86 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.86 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.86 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.86 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.86 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.86 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.86 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.86 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.86 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.86 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.86 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.86 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.86 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.86 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.86 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.86 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.86 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.86 new_primDivNatS1 -> Main.Zero 162.74/105.86 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.86 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.86 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.86 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.86 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.86 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.86 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.86 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.86 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.86 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.86 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.86 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.86 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.86 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.86 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.86 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.86 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.86 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.86 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.86 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.86 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.86 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.86 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.86 new_fromIntMyInt -> Main.Pos(Main.Succ(Main.Zero)) 162.74/105.86 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.86 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.86 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.86 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.86 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.86 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.86 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.86 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.86 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.86 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.86 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 162.74/105.86 The set Q consists of the following terms: 162.74/105.86 162.74/105.86 new_reduce2D1(x0, x1) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.86 new_fromIntMyInt 162.74/105.86 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.86 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.86 new_primModNatS02(x0, x1) 162.74/105.86 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.86 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.86 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.86 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.86 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.86 new_absReal1(x0) 162.74/105.86 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.86 new_gcd22(Main.Zero, Main.Zero) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.86 new_error0 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.86 new_gcd22(Main.Succ(x0), x1) 162.74/105.86 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.86 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.86 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_primDivNatS02(x0, x1) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.86 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.86 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_error 162.74/105.86 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.86 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_primModNatS1(Main.Zero, x0) 162.74/105.86 new_primRemInt(Main.Neg(x0), x1) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.86 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.86 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.86 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.86 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.86 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.86 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.86 new_primDivNatS3(Main.Zero, x0) 162.74/105.86 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.86 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_absMyInt(Main.Zero) 162.74/105.86 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.86 new_absMyInt(Main.Succ(x0)) 162.74/105.86 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.86 new_gcd2(Main.Succ(x0), x1) 162.74/105.86 new_absMyInt0(Main.Zero) 162.74/105.86 new_primMulNat1(Main.Zero) 162.74/105.86 new_absReal10 162.74/105.86 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.86 new_gcd0(x0, x1) 162.74/105.86 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.86 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.86 new_gcd2(Main.Zero, Main.Zero) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.86 new_reduce2D(x0, x1) 162.74/105.86 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.86 new_reduce2D0(x0, x1) 162.74/105.86 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.86 new_primMinusNatS2 162.74/105.86 new_primDivNatS1 162.74/105.86 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_primDivNatS2(Main.Succ(x0)) 162.74/105.86 new_primMulNat1(Main.Succ(x0)) 162.74/105.86 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.86 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.86 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.86 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.86 new_primDivNatS2(Main.Zero) 162.74/105.86 new_gcd21(Main.Succ(x0), x1) 162.74/105.86 new_absMyInt0(Main.Succ(x0)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.86 new_reduce2D2(x0, x1) 162.74/105.86 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.86 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.86 new_primMinusNatS1(x0) 162.74/105.86 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.86 new_primRemInt(Main.Pos(x0), x1) 162.74/105.86 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.86 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.86 new_gcd21(Main.Zero, Main.Zero) 162.74/105.86 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.86 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.86 162.74/105.86 We have to consider all minimal (P,Q,R)-chains. 162.74/105.86 ---------------------------------------- 162.74/105.86 162.74/105.86 (547) TransformationProof (EQUIVALENT) 162.74/105.86 By rewriting [LPAR04] the rule new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, new_fromIntMyInt, vx67) at position [2] we obtained the following new rules [LPAR04]: 162.74/105.86 162.74/105.86 (new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67),new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67)) 162.74/105.86 162.74/105.86 162.74/105.86 ---------------------------------------- 162.74/105.86 162.74/105.86 (548) 162.74/105.86 Obligation: 162.74/105.86 Q DP problem: 162.74/105.86 The TRS P consists of the following rules: 162.74/105.86 162.74/105.86 new_pr2F0(vx78, vx79, Main.Pos(vx860), vx77) -> new_pr2F31(new_primPlusNat0(Main.Succ(vx79), vx860), vx78, new_primPlusNat0(Main.Succ(vx79), vx860), vx77) 162.74/105.86 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.74/105.86 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.86 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.86 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.86 new_pr2F0G12(vx67, vx50, Main.Zero) -> new_pr2F0G12(vx67, new_srRatio(vx50), new_primDivNatS1) 162.74/105.86 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.86 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.86 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, new_fromIntMyInt, vx67) 162.74/105.86 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.86 new_pr2F32(vx620, vx50, Main.Zero, vx67) -> new_pr2F0G12(vx67, new_srRatio(vx50), Main.Zero) 162.74/105.86 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.86 162.74/105.86 The TRS R consists of the following rules: 162.74/105.86 162.74/105.86 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.86 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.86 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.86 new_error -> Prelude.error([]) 162.74/105.86 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.86 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.86 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.86 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.86 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.86 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.86 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.86 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.86 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.86 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.86 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.86 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.86 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.86 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.86 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.86 new_error0 -> Prelude.error([]) 162.74/105.86 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.86 new_primMinusNatS2 -> Main.Zero 162.74/105.86 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.86 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.86 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.86 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.86 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.86 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.86 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.86 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.86 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.86 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.86 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.86 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.86 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.86 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.86 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.86 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.86 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.86 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.86 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.86 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.86 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.86 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.86 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.86 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.86 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.86 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.86 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.86 new_primDivNatS1 -> Main.Zero 162.74/105.86 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.86 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.86 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.86 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.86 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.86 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.86 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.86 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.86 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.86 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.86 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.86 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.86 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.86 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.86 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.86 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.86 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.86 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.86 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.86 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.86 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.86 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.86 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.86 new_fromIntMyInt -> Main.Pos(Main.Succ(Main.Zero)) 162.74/105.86 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.86 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.86 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.86 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.86 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.86 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.86 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.86 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.86 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.86 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.86 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 162.74/105.86 The set Q consists of the following terms: 162.74/105.86 162.74/105.86 new_reduce2D1(x0, x1) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.86 new_fromIntMyInt 162.74/105.86 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.86 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.86 new_primModNatS02(x0, x1) 162.74/105.86 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.86 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.86 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.86 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.86 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.86 new_absReal1(x0) 162.74/105.86 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.86 new_gcd22(Main.Zero, Main.Zero) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.86 new_error0 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.86 new_gcd22(Main.Succ(x0), x1) 162.74/105.86 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.86 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.86 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_primDivNatS02(x0, x1) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.86 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.86 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_error 162.74/105.86 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.86 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_primModNatS1(Main.Zero, x0) 162.74/105.86 new_primRemInt(Main.Neg(x0), x1) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.86 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.86 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.86 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.86 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.86 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.86 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.86 new_primDivNatS3(Main.Zero, x0) 162.74/105.86 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.86 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_absMyInt(Main.Zero) 162.74/105.86 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.86 new_absMyInt(Main.Succ(x0)) 162.74/105.86 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.86 new_gcd2(Main.Succ(x0), x1) 162.74/105.86 new_absMyInt0(Main.Zero) 162.74/105.86 new_primMulNat1(Main.Zero) 162.74/105.86 new_absReal10 162.74/105.86 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.86 new_gcd0(x0, x1) 162.74/105.86 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.86 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.86 new_gcd2(Main.Zero, Main.Zero) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.86 new_reduce2D(x0, x1) 162.74/105.86 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.86 new_reduce2D0(x0, x1) 162.74/105.86 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.86 new_primMinusNatS2 162.74/105.86 new_primDivNatS1 162.74/105.86 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_primDivNatS2(Main.Succ(x0)) 162.74/105.86 new_primMulNat1(Main.Succ(x0)) 162.74/105.86 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.86 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.86 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.86 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.86 new_primDivNatS2(Main.Zero) 162.74/105.86 new_gcd21(Main.Succ(x0), x1) 162.74/105.86 new_absMyInt0(Main.Succ(x0)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.86 new_reduce2D2(x0, x1) 162.74/105.86 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.86 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.86 new_primMinusNatS1(x0) 162.74/105.86 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.86 new_primRemInt(Main.Pos(x0), x1) 162.74/105.86 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.86 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.86 new_gcd21(Main.Zero, Main.Zero) 162.74/105.86 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.86 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.86 162.74/105.86 We have to consider all minimal (P,Q,R)-chains. 162.74/105.86 ---------------------------------------- 162.74/105.86 162.74/105.86 (549) TransformationProof (EQUIVALENT) 162.74/105.86 By rewriting [LPAR04] the rule new_pr2F0G12(vx67, vx50, Main.Zero) -> new_pr2F0G12(vx67, new_srRatio(vx50), new_primDivNatS1) at position [2] we obtained the following new rules [LPAR04]: 162.74/105.86 162.74/105.86 (new_pr2F0G12(vx67, vx50, Main.Zero) -> new_pr2F0G12(vx67, new_srRatio(vx50), Main.Zero),new_pr2F0G12(vx67, vx50, Main.Zero) -> new_pr2F0G12(vx67, new_srRatio(vx50), Main.Zero)) 162.74/105.86 162.74/105.86 162.74/105.86 ---------------------------------------- 162.74/105.86 162.74/105.86 (550) 162.74/105.86 Obligation: 162.74/105.86 Q DP problem: 162.74/105.86 The TRS P consists of the following rules: 162.74/105.86 162.74/105.86 new_pr2F0(vx78, vx79, Main.Pos(vx860), vx77) -> new_pr2F31(new_primPlusNat0(Main.Succ(vx79), vx860), vx78, new_primPlusNat0(Main.Succ(vx79), vx860), vx77) 162.74/105.86 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.74/105.86 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.86 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.86 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.86 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.86 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.86 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, new_fromIntMyInt, vx67) 162.74/105.86 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.86 new_pr2F32(vx620, vx50, Main.Zero, vx67) -> new_pr2F0G12(vx67, new_srRatio(vx50), Main.Zero) 162.74/105.86 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.86 new_pr2F0G12(vx67, vx50, Main.Zero) -> new_pr2F0G12(vx67, new_srRatio(vx50), Main.Zero) 162.74/105.86 162.74/105.86 The TRS R consists of the following rules: 162.74/105.86 162.74/105.86 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.86 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.86 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.86 new_error -> Prelude.error([]) 162.74/105.86 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.86 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.86 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.86 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.86 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.86 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.86 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.86 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.86 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.86 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.86 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.86 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.86 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.86 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.86 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.86 new_error0 -> Prelude.error([]) 162.74/105.86 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.86 new_primMinusNatS2 -> Main.Zero 162.74/105.86 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.86 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.86 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.86 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.86 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.86 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.86 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.86 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.86 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.86 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.86 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.86 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.86 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.86 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.86 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.86 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.86 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.86 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.86 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.86 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.86 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.86 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.86 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.86 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.86 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.86 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.86 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.86 new_primDivNatS1 -> Main.Zero 162.74/105.86 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.86 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.86 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.86 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.86 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.86 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.86 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.86 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.86 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.86 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.86 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.86 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.86 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.86 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.86 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.86 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.86 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.86 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.86 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.86 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.86 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.86 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.86 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.86 new_fromIntMyInt -> Main.Pos(Main.Succ(Main.Zero)) 162.74/105.86 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.86 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.86 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.86 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.86 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.86 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.86 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.86 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.86 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.86 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.86 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 162.74/105.86 The set Q consists of the following terms: 162.74/105.86 162.74/105.86 new_reduce2D1(x0, x1) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.86 new_fromIntMyInt 162.74/105.86 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.86 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.86 new_primModNatS02(x0, x1) 162.74/105.86 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.86 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.86 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.86 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.86 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.86 new_absReal1(x0) 162.74/105.86 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.86 new_gcd22(Main.Zero, Main.Zero) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.86 new_error0 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.86 new_gcd22(Main.Succ(x0), x1) 162.74/105.86 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.86 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.86 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_primDivNatS02(x0, x1) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.86 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.86 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_error 162.74/105.86 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.86 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_primModNatS1(Main.Zero, x0) 162.74/105.86 new_primRemInt(Main.Neg(x0), x1) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.86 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.86 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.86 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.86 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.86 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.86 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.86 new_primDivNatS3(Main.Zero, x0) 162.74/105.86 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.86 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_absMyInt(Main.Zero) 162.74/105.86 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.86 new_absMyInt(Main.Succ(x0)) 162.74/105.86 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.86 new_gcd2(Main.Succ(x0), x1) 162.74/105.86 new_absMyInt0(Main.Zero) 162.74/105.86 new_primMulNat1(Main.Zero) 162.74/105.86 new_absReal10 162.74/105.86 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.86 new_gcd0(x0, x1) 162.74/105.86 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.86 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.86 new_gcd2(Main.Zero, Main.Zero) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.86 new_reduce2D(x0, x1) 162.74/105.86 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.86 new_reduce2D0(x0, x1) 162.74/105.86 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.86 new_primMinusNatS2 162.74/105.86 new_primDivNatS1 162.74/105.86 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_primDivNatS2(Main.Succ(x0)) 162.74/105.86 new_primMulNat1(Main.Succ(x0)) 162.74/105.86 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.86 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.86 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.86 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.86 new_primDivNatS2(Main.Zero) 162.74/105.86 new_gcd21(Main.Succ(x0), x1) 162.74/105.86 new_absMyInt0(Main.Succ(x0)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.86 new_reduce2D2(x0, x1) 162.74/105.86 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.86 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.86 new_primMinusNatS1(x0) 162.74/105.86 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.86 new_primRemInt(Main.Pos(x0), x1) 162.74/105.86 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.86 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.86 new_gcd21(Main.Zero, Main.Zero) 162.74/105.86 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.86 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.86 162.74/105.86 We have to consider all minimal (P,Q,R)-chains. 162.74/105.86 ---------------------------------------- 162.74/105.86 162.74/105.86 (551) DependencyGraphProof (EQUIVALENT) 162.74/105.86 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 1 less node. 162.74/105.86 ---------------------------------------- 162.74/105.86 162.74/105.86 (552) 162.74/105.86 Complex Obligation (AND) 162.74/105.86 162.74/105.86 ---------------------------------------- 162.74/105.86 162.74/105.86 (553) 162.74/105.86 Obligation: 162.74/105.86 Q DP problem: 162.74/105.86 The TRS P consists of the following rules: 162.74/105.86 162.74/105.86 new_pr2F0G12(vx67, vx50, Main.Zero) -> new_pr2F0G12(vx67, new_srRatio(vx50), Main.Zero) 162.74/105.86 162.74/105.86 The TRS R consists of the following rules: 162.74/105.86 162.74/105.86 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.86 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.86 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.86 new_error -> Prelude.error([]) 162.74/105.86 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.86 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.86 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.86 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.86 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.86 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.86 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.86 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.86 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.86 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.86 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.86 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.86 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.86 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.86 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.86 new_error0 -> Prelude.error([]) 162.74/105.86 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.86 new_primMinusNatS2 -> Main.Zero 162.74/105.86 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.86 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.86 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.86 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.86 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.86 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.86 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.86 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.86 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.86 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.86 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.86 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.86 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.86 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.86 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.86 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.86 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.86 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.86 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.86 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.86 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.86 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.86 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.86 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.86 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.86 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.86 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.86 new_primDivNatS1 -> Main.Zero 162.74/105.86 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.86 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.86 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.86 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.86 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.86 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.86 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.86 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.86 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.86 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.86 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.86 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.86 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.86 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.86 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.86 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.86 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.86 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.86 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.86 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.86 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.86 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.86 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.86 new_fromIntMyInt -> Main.Pos(Main.Succ(Main.Zero)) 162.74/105.86 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.86 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.86 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.86 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.86 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.86 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.86 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.86 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.86 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.86 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.86 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.86 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.86 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.86 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.86 162.74/105.86 The set Q consists of the following terms: 162.74/105.86 162.74/105.86 new_reduce2D1(x0, x1) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.86 new_fromIntMyInt 162.74/105.86 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.86 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.86 new_primModNatS02(x0, x1) 162.74/105.86 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.86 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.86 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.86 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.86 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.86 new_absReal1(x0) 162.74/105.86 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.86 new_gcd22(Main.Zero, Main.Zero) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.86 new_error0 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.86 new_gcd22(Main.Succ(x0), x1) 162.74/105.86 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.86 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.86 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_primDivNatS02(x0, x1) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.86 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.86 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.86 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_error 162.74/105.86 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.86 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_primModNatS1(Main.Zero, x0) 162.74/105.86 new_primRemInt(Main.Neg(x0), x1) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.86 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.86 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.86 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.86 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.86 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.86 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.86 new_primDivNatS3(Main.Zero, x0) 162.74/105.86 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.86 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_absMyInt(Main.Zero) 162.74/105.86 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.86 new_absMyInt(Main.Succ(x0)) 162.74/105.86 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.86 new_gcd2(Main.Succ(x0), x1) 162.74/105.86 new_absMyInt0(Main.Zero) 162.74/105.86 new_primMulNat1(Main.Zero) 162.74/105.86 new_absReal10 162.74/105.86 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.86 new_gcd0(x0, x1) 162.74/105.86 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.86 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.86 new_gcd2(Main.Zero, Main.Zero) 162.74/105.86 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.86 new_reduce2D(x0, x1) 162.74/105.86 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.86 new_reduce2D0(x0, x1) 162.74/105.86 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.86 new_primMinusNatS2 162.74/105.86 new_primDivNatS1 162.74/105.86 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.86 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_primDivNatS2(Main.Succ(x0)) 162.74/105.86 new_primMulNat1(Main.Succ(x0)) 162.74/105.86 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.86 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.86 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.86 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.86 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.86 new_primDivNatS2(Main.Zero) 162.74/105.86 new_gcd21(Main.Succ(x0), x1) 162.74/105.86 new_absMyInt0(Main.Succ(x0)) 162.74/105.86 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.86 new_reduce2D2(x0, x1) 162.74/105.86 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.86 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.86 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.86 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.86 new_primMinusNatS1(x0) 162.74/105.86 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.86 new_primRemInt(Main.Pos(x0), x1) 162.74/105.86 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.86 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.86 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.86 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.86 new_gcd21(Main.Zero, Main.Zero) 162.74/105.86 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.86 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.87 162.74/105.87 We have to consider all minimal (P,Q,R)-chains. 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (554) UsableRulesProof (EQUIVALENT) 162.74/105.87 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (555) 162.74/105.87 Obligation: 162.74/105.87 Q DP problem: 162.74/105.87 The TRS P consists of the following rules: 162.74/105.87 162.74/105.87 new_pr2F0G12(vx67, vx50, Main.Zero) -> new_pr2F0G12(vx67, new_srRatio(vx50), Main.Zero) 162.74/105.87 162.74/105.87 The TRS R consists of the following rules: 162.74/105.87 162.74/105.87 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.87 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.87 new_error0 -> Prelude.error([]) 162.74/105.87 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.87 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.87 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.87 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.87 new_error -> Prelude.error([]) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.87 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.87 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.87 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.87 new_primMinusNatS2 -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.87 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.87 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.87 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.87 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.87 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.87 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.87 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.87 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.87 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.87 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.87 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.87 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.87 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.87 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.87 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.87 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.87 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.87 162.74/105.87 The set Q consists of the following terms: 162.74/105.87 162.74/105.87 new_reduce2D1(x0, x1) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.87 new_fromIntMyInt 162.74/105.87 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.87 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_primModNatS02(x0, x1) 162.74/105.87 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.87 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.87 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.87 new_absReal1(x0) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.87 new_gcd22(Main.Zero, Main.Zero) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.87 new_error0 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.87 new_gcd22(Main.Succ(x0), x1) 162.74/105.87 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.87 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primDivNatS02(x0, x1) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.87 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.87 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_error 162.74/105.87 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.87 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primModNatS1(Main.Zero, x0) 162.74/105.87 new_primRemInt(Main.Neg(x0), x1) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.87 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.87 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.87 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.87 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.87 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_primDivNatS3(Main.Zero, x0) 162.74/105.87 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.87 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_absMyInt(Main.Zero) 162.74/105.87 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.87 new_absMyInt(Main.Succ(x0)) 162.74/105.87 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_gcd2(Main.Succ(x0), x1) 162.74/105.87 new_absMyInt0(Main.Zero) 162.74/105.87 new_primMulNat1(Main.Zero) 162.74/105.87 new_absReal10 162.74/105.87 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.87 new_gcd0(x0, x1) 162.74/105.87 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.87 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_gcd2(Main.Zero, Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.87 new_reduce2D(x0, x1) 162.74/105.87 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.87 new_reduce2D0(x0, x1) 162.74/105.87 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_primMinusNatS2 162.74/105.87 new_primDivNatS1 162.74/105.87 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primDivNatS2(Main.Succ(x0)) 162.74/105.87 new_primMulNat1(Main.Succ(x0)) 162.74/105.87 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.87 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_primDivNatS2(Main.Zero) 162.74/105.87 new_gcd21(Main.Succ(x0), x1) 162.74/105.87 new_absMyInt0(Main.Succ(x0)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.87 new_reduce2D2(x0, x1) 162.74/105.87 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.87 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.87 new_primMinusNatS1(x0) 162.74/105.87 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.87 new_primRemInt(Main.Pos(x0), x1) 162.74/105.87 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_gcd21(Main.Zero, Main.Zero) 162.74/105.87 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.87 162.74/105.87 We have to consider all minimal (P,Q,R)-chains. 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (556) QReductionProof (EQUIVALENT) 162.74/105.87 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 162.74/105.87 162.74/105.87 new_reduce2D1(x0, x1) 162.74/105.87 new_fromIntMyInt 162.74/105.87 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.87 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.87 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.87 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.87 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.87 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_absMyInt0(Main.Zero) 162.74/105.87 new_gcd0(x0, x1) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.87 new_reduce2D0(x0, x1) 162.74/105.87 new_primDivNatS1 162.74/105.87 new_primDivNatS2(Main.Succ(x0)) 162.74/105.87 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_primDivNatS2(Main.Zero) 162.74/105.87 new_gcd21(Main.Succ(x0), x1) 162.74/105.87 new_absMyInt0(Main.Succ(x0)) 162.74/105.87 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.87 new_gcd21(Main.Zero, Main.Zero) 162.74/105.87 162.74/105.87 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (557) 162.74/105.87 Obligation: 162.74/105.87 Q DP problem: 162.74/105.87 The TRS P consists of the following rules: 162.74/105.87 162.74/105.87 new_pr2F0G12(vx67, vx50, Main.Zero) -> new_pr2F0G12(vx67, new_srRatio(vx50), Main.Zero) 162.74/105.87 162.74/105.87 The TRS R consists of the following rules: 162.74/105.87 162.74/105.87 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.87 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.87 new_error0 -> Prelude.error([]) 162.74/105.87 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.87 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.87 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.87 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.87 new_error -> Prelude.error([]) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.87 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.87 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.87 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.87 new_primMinusNatS2 -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.87 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.87 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.87 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.87 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.87 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.87 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.87 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.87 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.87 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.87 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.87 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.87 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.87 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.87 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.87 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.87 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.87 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.87 162.74/105.87 The set Q consists of the following terms: 162.74/105.87 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.87 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.87 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_primModNatS02(x0, x1) 162.74/105.87 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.87 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_absReal1(x0) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.87 new_gcd22(Main.Zero, Main.Zero) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.87 new_error0 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.87 new_gcd22(Main.Succ(x0), x1) 162.74/105.87 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_primDivNatS02(x0, x1) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.87 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_error 162.74/105.87 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.87 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primModNatS1(Main.Zero, x0) 162.74/105.87 new_primRemInt(Main.Neg(x0), x1) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.87 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.87 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_primDivNatS3(Main.Zero, x0) 162.74/105.87 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.87 new_absMyInt(Main.Zero) 162.74/105.87 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.87 new_absMyInt(Main.Succ(x0)) 162.74/105.87 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_gcd2(Main.Succ(x0), x1) 162.74/105.87 new_primMulNat1(Main.Zero) 162.74/105.87 new_absReal10 162.74/105.87 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.87 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_gcd2(Main.Zero, Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.87 new_reduce2D(x0, x1) 162.74/105.87 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.87 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_primMinusNatS2 162.74/105.87 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primMulNat1(Main.Succ(x0)) 162.74/105.87 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.87 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.87 new_reduce2D2(x0, x1) 162.74/105.87 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.87 new_primMinusNatS1(x0) 162.74/105.87 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.87 new_primRemInt(Main.Pos(x0), x1) 162.74/105.87 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.87 162.74/105.87 We have to consider all minimal (P,Q,R)-chains. 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (558) MNOCProof (EQUIVALENT) 162.74/105.87 We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set. 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (559) 162.74/105.87 Obligation: 162.74/105.87 Q DP problem: 162.74/105.87 The TRS P consists of the following rules: 162.74/105.87 162.74/105.87 new_pr2F0G12(vx67, vx50, Main.Zero) -> new_pr2F0G12(vx67, new_srRatio(vx50), Main.Zero) 162.74/105.87 162.74/105.87 The TRS R consists of the following rules: 162.74/105.87 162.74/105.87 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.87 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.87 new_error0 -> Prelude.error([]) 162.74/105.87 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.87 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.87 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.87 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.87 new_error -> Prelude.error([]) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.87 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.87 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.87 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.87 new_primMinusNatS2 -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.87 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.87 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.87 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.87 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.87 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.87 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.87 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.87 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.87 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.87 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.87 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.87 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.87 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.87 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.87 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.87 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.87 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.87 162.74/105.87 Q is empty. 162.74/105.87 We have to consider all (P,Q,R)-chains. 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (560) NonTerminationLoopProof (COMPLETE) 162.74/105.87 We used the non-termination processor [FROCOS05] to show that the DP problem is infinite. 162.74/105.87 Found a loop by semiunifying a rule from P directly. 162.74/105.87 162.74/105.87 s = new_pr2F0G12(vx67, vx50, Main.Zero) evaluates to t =new_pr2F0G12(vx67, new_srRatio(vx50), Main.Zero) 162.74/105.87 162.74/105.87 Thus s starts an infinite chain as s semiunifies with t with the following substitutions: 162.74/105.87 * Matcher: [vx50 / new_srRatio(vx50)] 162.74/105.87 * Semiunifier: [ ] 162.74/105.87 162.74/105.87 -------------------------------------------------------------------------------- 162.74/105.87 Rewriting sequence 162.74/105.87 162.74/105.87 The DP semiunifies directly so there is only one rewrite step from new_pr2F0G12(vx67, vx50, Main.Zero) to new_pr2F0G12(vx67, new_srRatio(vx50), Main.Zero). 162.74/105.87 162.74/105.87 162.74/105.87 162.74/105.87 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (561) 162.74/105.87 NO 162.74/105.87 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (562) 162.74/105.87 Obligation: 162.74/105.87 Q DP problem: 162.74/105.87 The TRS P consists of the following rules: 162.74/105.87 162.74/105.87 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.74/105.87 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.87 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.87 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.87 new_pr2F0(vx78, vx79, Main.Pos(vx860), vx77) -> new_pr2F31(new_primPlusNat0(Main.Succ(vx79), vx860), vx78, new_primPlusNat0(Main.Succ(vx79), vx860), vx77) 162.74/105.87 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.87 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, new_fromIntMyInt, vx67) 162.74/105.87 162.74/105.87 The TRS R consists of the following rules: 162.74/105.87 162.74/105.87 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.87 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.87 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_error -> Prelude.error([]) 162.74/105.87 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.87 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.87 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.87 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.87 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.87 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.87 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.87 new_error0 -> Prelude.error([]) 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.87 new_primMinusNatS2 -> Main.Zero 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.87 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.87 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.87 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.87 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.87 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.87 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.87 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.87 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.87 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.87 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.87 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.87 new_primDivNatS1 -> Main.Zero 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.87 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.87 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.87 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.87 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.87 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.87 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.87 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.87 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.87 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.87 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.87 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.87 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.87 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.87 new_fromIntMyInt -> Main.Pos(Main.Succ(Main.Zero)) 162.74/105.87 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.87 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.87 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.87 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.87 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.87 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.87 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.87 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.87 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 162.74/105.87 The set Q consists of the following terms: 162.74/105.87 162.74/105.87 new_reduce2D1(x0, x1) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.87 new_fromIntMyInt 162.74/105.87 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.87 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_primModNatS02(x0, x1) 162.74/105.87 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.87 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.87 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.87 new_absReal1(x0) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.87 new_gcd22(Main.Zero, Main.Zero) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.87 new_error0 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.87 new_gcd22(Main.Succ(x0), x1) 162.74/105.87 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.87 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primDivNatS02(x0, x1) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.87 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.87 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_error 162.74/105.87 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.87 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primModNatS1(Main.Zero, x0) 162.74/105.87 new_primRemInt(Main.Neg(x0), x1) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.87 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.87 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.87 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.87 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.87 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_primDivNatS3(Main.Zero, x0) 162.74/105.87 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.87 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_absMyInt(Main.Zero) 162.74/105.87 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.87 new_absMyInt(Main.Succ(x0)) 162.74/105.87 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_gcd2(Main.Succ(x0), x1) 162.74/105.87 new_absMyInt0(Main.Zero) 162.74/105.87 new_primMulNat1(Main.Zero) 162.74/105.87 new_absReal10 162.74/105.87 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.87 new_gcd0(x0, x1) 162.74/105.87 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.87 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_gcd2(Main.Zero, Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.87 new_reduce2D(x0, x1) 162.74/105.87 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.87 new_reduce2D0(x0, x1) 162.74/105.87 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_primMinusNatS2 162.74/105.87 new_primDivNatS1 162.74/105.87 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primDivNatS2(Main.Succ(x0)) 162.74/105.87 new_primMulNat1(Main.Succ(x0)) 162.74/105.87 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.87 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_primDivNatS2(Main.Zero) 162.74/105.87 new_gcd21(Main.Succ(x0), x1) 162.74/105.87 new_absMyInt0(Main.Succ(x0)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.87 new_reduce2D2(x0, x1) 162.74/105.87 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.87 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.87 new_primMinusNatS1(x0) 162.74/105.87 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.87 new_primRemInt(Main.Pos(x0), x1) 162.74/105.87 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_gcd21(Main.Zero, Main.Zero) 162.74/105.87 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.87 162.74/105.87 We have to consider all minimal (P,Q,R)-chains. 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (563) UsableRulesProof (EQUIVALENT) 162.74/105.87 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (564) 162.74/105.87 Obligation: 162.74/105.87 Q DP problem: 162.74/105.87 The TRS P consists of the following rules: 162.74/105.87 162.74/105.87 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.74/105.87 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.87 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.87 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.87 new_pr2F0(vx78, vx79, Main.Pos(vx860), vx77) -> new_pr2F31(new_primPlusNat0(Main.Succ(vx79), vx860), vx78, new_primPlusNat0(Main.Succ(vx79), vx860), vx77) 162.74/105.87 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.87 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, new_fromIntMyInt, vx67) 162.74/105.87 162.74/105.87 The TRS R consists of the following rules: 162.74/105.87 162.74/105.87 new_fromIntMyInt -> Main.Pos(Main.Succ(Main.Zero)) 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.87 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.87 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.87 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.87 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.87 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.87 new_error0 -> Prelude.error([]) 162.74/105.87 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.87 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.87 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.87 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.87 new_error -> Prelude.error([]) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.87 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.87 new_primMinusNatS2 -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.87 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.87 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.87 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.87 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.87 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.87 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.87 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.87 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.87 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.87 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.87 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.87 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.87 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.87 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.87 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.87 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.87 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.87 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.87 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.87 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.87 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.87 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.87 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.87 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.87 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.87 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.87 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.87 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.87 162.74/105.87 The set Q consists of the following terms: 162.74/105.87 162.74/105.87 new_reduce2D1(x0, x1) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.87 new_fromIntMyInt 162.74/105.87 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.87 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_primModNatS02(x0, x1) 162.74/105.87 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.87 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.87 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.87 new_absReal1(x0) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.87 new_gcd22(Main.Zero, Main.Zero) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.87 new_error0 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.87 new_gcd22(Main.Succ(x0), x1) 162.74/105.87 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.87 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primDivNatS02(x0, x1) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.87 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.87 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_error 162.74/105.87 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.87 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primModNatS1(Main.Zero, x0) 162.74/105.87 new_primRemInt(Main.Neg(x0), x1) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.87 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.87 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.87 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.87 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.87 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_primDivNatS3(Main.Zero, x0) 162.74/105.87 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.87 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_absMyInt(Main.Zero) 162.74/105.87 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.87 new_absMyInt(Main.Succ(x0)) 162.74/105.87 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_gcd2(Main.Succ(x0), x1) 162.74/105.87 new_absMyInt0(Main.Zero) 162.74/105.87 new_primMulNat1(Main.Zero) 162.74/105.87 new_absReal10 162.74/105.87 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.87 new_gcd0(x0, x1) 162.74/105.87 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.87 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_gcd2(Main.Zero, Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.87 new_reduce2D(x0, x1) 162.74/105.87 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.87 new_reduce2D0(x0, x1) 162.74/105.87 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_primMinusNatS2 162.74/105.87 new_primDivNatS1 162.74/105.87 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primDivNatS2(Main.Succ(x0)) 162.74/105.87 new_primMulNat1(Main.Succ(x0)) 162.74/105.87 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.87 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_primDivNatS2(Main.Zero) 162.74/105.87 new_gcd21(Main.Succ(x0), x1) 162.74/105.87 new_absMyInt0(Main.Succ(x0)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.87 new_reduce2D2(x0, x1) 162.74/105.87 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.87 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.87 new_primMinusNatS1(x0) 162.74/105.87 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.87 new_primRemInt(Main.Pos(x0), x1) 162.74/105.87 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_gcd21(Main.Zero, Main.Zero) 162.74/105.87 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.87 162.74/105.87 We have to consider all minimal (P,Q,R)-chains. 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (565) QReductionProof (EQUIVALENT) 162.74/105.87 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 162.74/105.87 162.74/105.87 new_primDivNatS1 162.74/105.87 162.74/105.87 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (566) 162.74/105.87 Obligation: 162.74/105.87 Q DP problem: 162.74/105.87 The TRS P consists of the following rules: 162.74/105.87 162.74/105.87 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.74/105.87 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.87 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.87 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.87 new_pr2F0(vx78, vx79, Main.Pos(vx860), vx77) -> new_pr2F31(new_primPlusNat0(Main.Succ(vx79), vx860), vx78, new_primPlusNat0(Main.Succ(vx79), vx860), vx77) 162.74/105.87 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.87 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, new_fromIntMyInt, vx67) 162.74/105.87 162.74/105.87 The TRS R consists of the following rules: 162.74/105.87 162.74/105.87 new_fromIntMyInt -> Main.Pos(Main.Succ(Main.Zero)) 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.87 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.87 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.87 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.87 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.87 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.87 new_error0 -> Prelude.error([]) 162.74/105.87 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.87 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.87 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.87 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.87 new_error -> Prelude.error([]) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.87 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.87 new_primMinusNatS2 -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.87 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.87 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.87 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.87 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.87 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.87 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.87 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.87 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.87 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.87 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.87 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.87 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.87 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.87 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.87 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.87 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.87 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.87 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.87 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.87 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.87 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.87 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.87 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.87 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.87 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.87 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.87 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.87 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.87 162.74/105.87 The set Q consists of the following terms: 162.74/105.87 162.74/105.87 new_reduce2D1(x0, x1) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.87 new_fromIntMyInt 162.74/105.87 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.87 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_primModNatS02(x0, x1) 162.74/105.87 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.87 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.87 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.87 new_absReal1(x0) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.87 new_gcd22(Main.Zero, Main.Zero) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.87 new_error0 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.87 new_gcd22(Main.Succ(x0), x1) 162.74/105.87 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.87 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primDivNatS02(x0, x1) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.87 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.87 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_error 162.74/105.87 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.87 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primModNatS1(Main.Zero, x0) 162.74/105.87 new_primRemInt(Main.Neg(x0), x1) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.87 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.87 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.87 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.87 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.87 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_primDivNatS3(Main.Zero, x0) 162.74/105.87 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.87 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_absMyInt(Main.Zero) 162.74/105.87 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.87 new_absMyInt(Main.Succ(x0)) 162.74/105.87 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_gcd2(Main.Succ(x0), x1) 162.74/105.87 new_absMyInt0(Main.Zero) 162.74/105.87 new_primMulNat1(Main.Zero) 162.74/105.87 new_absReal10 162.74/105.87 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.87 new_gcd0(x0, x1) 162.74/105.87 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.87 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_gcd2(Main.Zero, Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.87 new_reduce2D(x0, x1) 162.74/105.87 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.87 new_reduce2D0(x0, x1) 162.74/105.87 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_primMinusNatS2 162.74/105.87 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primDivNatS2(Main.Succ(x0)) 162.74/105.87 new_primMulNat1(Main.Succ(x0)) 162.74/105.87 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.87 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_primDivNatS2(Main.Zero) 162.74/105.87 new_gcd21(Main.Succ(x0), x1) 162.74/105.87 new_absMyInt0(Main.Succ(x0)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.87 new_reduce2D2(x0, x1) 162.74/105.87 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.87 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.87 new_primMinusNatS1(x0) 162.74/105.87 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.87 new_primRemInt(Main.Pos(x0), x1) 162.74/105.87 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_gcd21(Main.Zero, Main.Zero) 162.74/105.87 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.87 162.74/105.87 We have to consider all minimal (P,Q,R)-chains. 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (567) TransformationProof (EQUIVALENT) 162.74/105.87 By rewriting [LPAR04] the rule new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, new_fromIntMyInt, vx67) at position [2] we obtained the following new rules [LPAR04]: 162.74/105.87 162.74/105.87 (new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67),new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67)) 162.74/105.87 162.74/105.87 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (568) 162.74/105.87 Obligation: 162.74/105.87 Q DP problem: 162.74/105.87 The TRS P consists of the following rules: 162.74/105.87 162.74/105.87 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.74/105.87 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.87 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.87 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.87 new_pr2F0(vx78, vx79, Main.Pos(vx860), vx77) -> new_pr2F31(new_primPlusNat0(Main.Succ(vx79), vx860), vx78, new_primPlusNat0(Main.Succ(vx79), vx860), vx77) 162.74/105.87 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.87 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.87 162.74/105.87 The TRS R consists of the following rules: 162.74/105.87 162.74/105.87 new_fromIntMyInt -> Main.Pos(Main.Succ(Main.Zero)) 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.87 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.87 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.87 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.87 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.87 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.87 new_error0 -> Prelude.error([]) 162.74/105.87 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.87 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.87 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.87 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.87 new_error -> Prelude.error([]) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.87 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.87 new_primMinusNatS2 -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.87 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.87 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.87 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.87 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.87 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.87 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.87 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.87 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.87 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.87 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.87 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.87 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.87 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.87 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.87 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.87 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.87 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.87 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.87 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.87 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.87 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.87 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.87 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.87 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.87 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.87 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.87 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.87 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.87 162.74/105.87 The set Q consists of the following terms: 162.74/105.87 162.74/105.87 new_reduce2D1(x0, x1) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.87 new_fromIntMyInt 162.74/105.87 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.87 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_primModNatS02(x0, x1) 162.74/105.87 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.87 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.87 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.87 new_absReal1(x0) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.87 new_gcd22(Main.Zero, Main.Zero) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.87 new_error0 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.87 new_gcd22(Main.Succ(x0), x1) 162.74/105.87 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.87 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primDivNatS02(x0, x1) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.87 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.87 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_error 162.74/105.87 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.87 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primModNatS1(Main.Zero, x0) 162.74/105.87 new_primRemInt(Main.Neg(x0), x1) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.87 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.87 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.87 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.87 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.87 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_primDivNatS3(Main.Zero, x0) 162.74/105.87 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.87 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_absMyInt(Main.Zero) 162.74/105.87 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.87 new_absMyInt(Main.Succ(x0)) 162.74/105.87 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_gcd2(Main.Succ(x0), x1) 162.74/105.87 new_absMyInt0(Main.Zero) 162.74/105.87 new_primMulNat1(Main.Zero) 162.74/105.87 new_absReal10 162.74/105.87 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.87 new_gcd0(x0, x1) 162.74/105.87 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.87 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_gcd2(Main.Zero, Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.87 new_reduce2D(x0, x1) 162.74/105.87 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.87 new_reduce2D0(x0, x1) 162.74/105.87 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_primMinusNatS2 162.74/105.87 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primDivNatS2(Main.Succ(x0)) 162.74/105.87 new_primMulNat1(Main.Succ(x0)) 162.74/105.87 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.87 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_primDivNatS2(Main.Zero) 162.74/105.87 new_gcd21(Main.Succ(x0), x1) 162.74/105.87 new_absMyInt0(Main.Succ(x0)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.87 new_reduce2D2(x0, x1) 162.74/105.87 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.87 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.87 new_primMinusNatS1(x0) 162.74/105.87 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.87 new_primRemInt(Main.Pos(x0), x1) 162.74/105.87 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_gcd21(Main.Zero, Main.Zero) 162.74/105.87 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.87 162.74/105.87 We have to consider all minimal (P,Q,R)-chains. 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (569) UsableRulesProof (EQUIVALENT) 162.74/105.87 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (570) 162.74/105.87 Obligation: 162.74/105.87 Q DP problem: 162.74/105.87 The TRS P consists of the following rules: 162.74/105.87 162.74/105.87 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.74/105.87 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.87 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.87 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.87 new_pr2F0(vx78, vx79, Main.Pos(vx860), vx77) -> new_pr2F31(new_primPlusNat0(Main.Succ(vx79), vx860), vx78, new_primPlusNat0(Main.Succ(vx79), vx860), vx77) 162.74/105.87 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.87 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.87 162.74/105.87 The TRS R consists of the following rules: 162.74/105.87 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.87 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.87 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.87 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.87 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.87 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.87 new_error0 -> Prelude.error([]) 162.74/105.87 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.87 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.87 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.87 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.87 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.87 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.87 new_error -> Prelude.error([]) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.87 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.87 new_primMinusNatS2 -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.87 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.87 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.87 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.87 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.87 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.87 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.87 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.87 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.87 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.87 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.87 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.87 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.87 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.87 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.87 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.87 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.87 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.87 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.87 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.87 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.87 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.87 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.87 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.87 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.87 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.87 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.87 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.87 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.87 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.87 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.87 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.87 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.87 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.87 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.87 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.87 162.74/105.87 The set Q consists of the following terms: 162.74/105.87 162.74/105.87 new_reduce2D1(x0, x1) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.87 new_fromIntMyInt 162.74/105.87 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.87 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_primModNatS02(x0, x1) 162.74/105.87 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.87 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.87 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.87 new_absReal1(x0) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.87 new_gcd22(Main.Zero, Main.Zero) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.87 new_error0 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.87 new_gcd22(Main.Succ(x0), x1) 162.74/105.87 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.87 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primDivNatS02(x0, x1) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.87 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.87 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_error 162.74/105.87 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.87 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primModNatS1(Main.Zero, x0) 162.74/105.87 new_primRemInt(Main.Neg(x0), x1) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.87 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.87 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.87 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.87 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.87 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_primDivNatS3(Main.Zero, x0) 162.74/105.87 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.87 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_absMyInt(Main.Zero) 162.74/105.87 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.87 new_absMyInt(Main.Succ(x0)) 162.74/105.87 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.87 new_gcd2(Main.Succ(x0), x1) 162.74/105.87 new_absMyInt0(Main.Zero) 162.74/105.87 new_primMulNat1(Main.Zero) 162.74/105.87 new_absReal10 162.74/105.87 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.87 new_gcd0(x0, x1) 162.74/105.87 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.87 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_gcd2(Main.Zero, Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.87 new_reduce2D(x0, x1) 162.74/105.87 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.87 new_reduce2D0(x0, x1) 162.74/105.87 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_primMinusNatS2 162.74/105.87 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.87 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primDivNatS2(Main.Succ(x0)) 162.74/105.87 new_primMulNat1(Main.Succ(x0)) 162.74/105.87 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.87 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.87 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.87 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.87 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_primDivNatS2(Main.Zero) 162.74/105.87 new_gcd21(Main.Succ(x0), x1) 162.74/105.87 new_absMyInt0(Main.Succ(x0)) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.87 new_reduce2D2(x0, x1) 162.74/105.87 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.87 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.87 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.87 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.87 new_primMinusNatS1(x0) 162.74/105.87 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.87 new_primRemInt(Main.Pos(x0), x1) 162.74/105.87 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.87 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.87 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.87 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.87 new_gcd21(Main.Zero, Main.Zero) 162.74/105.87 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.87 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.87 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.87 162.74/105.87 We have to consider all minimal (P,Q,R)-chains. 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (571) QReductionProof (EQUIVALENT) 162.74/105.87 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 162.74/105.87 162.74/105.87 new_fromIntMyInt 162.74/105.87 162.74/105.87 162.74/105.87 ---------------------------------------- 162.74/105.87 162.74/105.87 (572) 162.74/105.87 Obligation: 162.74/105.87 Q DP problem: 162.74/105.87 The TRS P consists of the following rules: 162.74/105.87 162.74/105.87 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.74/105.87 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.87 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.87 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.87 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.87 new_pr2F0(vx78, vx79, Main.Pos(vx860), vx77) -> new_pr2F31(new_primPlusNat0(Main.Succ(vx79), vx860), vx78, new_primPlusNat0(Main.Succ(vx79), vx860), vx77) 162.74/105.87 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.87 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.87 162.74/105.87 The TRS R consists of the following rules: 162.74/105.87 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.87 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.87 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.87 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.87 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.87 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.87 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.87 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.87 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.87 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.87 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.87 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.87 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.87 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.87 new_error0 -> Prelude.error([]) 162.74/105.87 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.88 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.88 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.88 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.88 new_error -> Prelude.error([]) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.88 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.88 new_primMinusNatS2 -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.88 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.88 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.88 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.88 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.88 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.88 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.88 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.88 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.88 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.88 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.88 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.88 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.88 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.88 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.88 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.88 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.88 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.88 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.88 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.88 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.88 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.88 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.88 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.88 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.88 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.88 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.88 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.88 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.88 162.74/105.88 The set Q consists of the following terms: 162.74/105.88 162.74/105.88 new_reduce2D1(x0, x1) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.88 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.88 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_primModNatS02(x0, x1) 162.74/105.88 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.88 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.88 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.88 new_absReal1(x0) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.88 new_gcd22(Main.Zero, Main.Zero) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.88 new_error0 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.88 new_gcd22(Main.Succ(x0), x1) 162.74/105.88 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.88 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primDivNatS02(x0, x1) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.88 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.88 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_error 162.74/105.88 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.88 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primModNatS1(Main.Zero, x0) 162.74/105.88 new_primRemInt(Main.Neg(x0), x1) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.88 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.88 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.88 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.88 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.88 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_primDivNatS3(Main.Zero, x0) 162.74/105.88 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.88 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_absMyInt(Main.Zero) 162.74/105.88 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.88 new_absMyInt(Main.Succ(x0)) 162.74/105.88 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_gcd2(Main.Succ(x0), x1) 162.74/105.88 new_absMyInt0(Main.Zero) 162.74/105.88 new_primMulNat1(Main.Zero) 162.74/105.88 new_absReal10 162.74/105.88 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.88 new_gcd0(x0, x1) 162.74/105.88 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.88 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_gcd2(Main.Zero, Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.88 new_reduce2D(x0, x1) 162.74/105.88 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.88 new_reduce2D0(x0, x1) 162.74/105.88 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_primMinusNatS2 162.74/105.88 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primDivNatS2(Main.Succ(x0)) 162.74/105.88 new_primMulNat1(Main.Succ(x0)) 162.74/105.88 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.88 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_primDivNatS2(Main.Zero) 162.74/105.88 new_gcd21(Main.Succ(x0), x1) 162.74/105.88 new_absMyInt0(Main.Succ(x0)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.88 new_reduce2D2(x0, x1) 162.74/105.88 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.88 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.88 new_primMinusNatS1(x0) 162.74/105.88 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.88 new_primRemInt(Main.Pos(x0), x1) 162.74/105.88 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_gcd21(Main.Zero, Main.Zero) 162.74/105.88 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.88 162.74/105.88 We have to consider all minimal (P,Q,R)-chains. 162.74/105.88 ---------------------------------------- 162.74/105.88 162.74/105.88 (573) TransformationProof (EQUIVALENT) 162.74/105.88 By instantiating [LPAR04] the rule new_pr2F0(vx78, vx79, Main.Pos(vx860), vx77) -> new_pr2F31(new_primPlusNat0(Main.Succ(vx79), vx860), vx78, new_primPlusNat0(Main.Succ(vx79), vx860), vx77) we obtained the following new rules [LPAR04]: 162.74/105.88 162.74/105.88 (new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(new_primPlusNat0(Main.Succ(z2), Main.Succ(Main.Zero)), z1, new_primPlusNat0(Main.Succ(z2), Main.Succ(Main.Zero)), z0),new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(new_primPlusNat0(Main.Succ(z2), Main.Succ(Main.Zero)), z1, new_primPlusNat0(Main.Succ(z2), Main.Succ(Main.Zero)), z0)) 162.74/105.88 (new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z1, new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z0),new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z1, new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z0)) 162.74/105.88 162.74/105.88 162.74/105.88 ---------------------------------------- 162.74/105.88 162.74/105.88 (574) 162.74/105.88 Obligation: 162.74/105.88 Q DP problem: 162.74/105.88 The TRS P consists of the following rules: 162.74/105.88 162.74/105.88 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.74/105.88 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.88 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.88 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.88 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.88 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.88 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(new_primPlusNat0(Main.Succ(z2), Main.Succ(Main.Zero)), z1, new_primPlusNat0(Main.Succ(z2), Main.Succ(Main.Zero)), z0) 162.74/105.88 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z1, new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z0) 162.74/105.88 162.74/105.88 The TRS R consists of the following rules: 162.74/105.88 162.74/105.88 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.88 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.88 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.88 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.88 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.88 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.88 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.88 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.88 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.88 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.88 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.88 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.88 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.88 new_error0 -> Prelude.error([]) 162.74/105.88 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.88 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.88 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.88 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.88 new_error -> Prelude.error([]) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.88 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.88 new_primMinusNatS2 -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.88 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.88 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.88 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.88 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.88 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.88 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.88 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.88 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.88 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.88 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.88 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.88 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.88 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.88 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.88 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.88 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.88 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.88 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.88 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.88 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.88 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.88 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.88 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.88 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.88 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.88 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.88 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.88 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.88 162.74/105.88 The set Q consists of the following terms: 162.74/105.88 162.74/105.88 new_reduce2D1(x0, x1) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.88 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.88 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_primModNatS02(x0, x1) 162.74/105.88 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.88 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.88 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.88 new_absReal1(x0) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.88 new_gcd22(Main.Zero, Main.Zero) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.88 new_error0 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.88 new_gcd22(Main.Succ(x0), x1) 162.74/105.88 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.88 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primDivNatS02(x0, x1) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.88 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.88 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_error 162.74/105.88 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.88 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primModNatS1(Main.Zero, x0) 162.74/105.88 new_primRemInt(Main.Neg(x0), x1) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.88 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.88 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.88 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.88 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.88 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_primDivNatS3(Main.Zero, x0) 162.74/105.88 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.88 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_absMyInt(Main.Zero) 162.74/105.88 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.88 new_absMyInt(Main.Succ(x0)) 162.74/105.88 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_gcd2(Main.Succ(x0), x1) 162.74/105.88 new_absMyInt0(Main.Zero) 162.74/105.88 new_primMulNat1(Main.Zero) 162.74/105.88 new_absReal10 162.74/105.88 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.88 new_gcd0(x0, x1) 162.74/105.88 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.88 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_gcd2(Main.Zero, Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.88 new_reduce2D(x0, x1) 162.74/105.88 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.88 new_reduce2D0(x0, x1) 162.74/105.88 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_primMinusNatS2 162.74/105.88 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primDivNatS2(Main.Succ(x0)) 162.74/105.88 new_primMulNat1(Main.Succ(x0)) 162.74/105.88 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.88 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_primDivNatS2(Main.Zero) 162.74/105.88 new_gcd21(Main.Succ(x0), x1) 162.74/105.88 new_absMyInt0(Main.Succ(x0)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.88 new_reduce2D2(x0, x1) 162.74/105.88 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.88 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.88 new_primMinusNatS1(x0) 162.74/105.88 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.88 new_primRemInt(Main.Pos(x0), x1) 162.74/105.88 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_gcd21(Main.Zero, Main.Zero) 162.74/105.88 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.88 162.74/105.88 We have to consider all minimal (P,Q,R)-chains. 162.74/105.88 ---------------------------------------- 162.74/105.88 162.74/105.88 (575) TransformationProof (EQUIVALENT) 162.74/105.88 By rewriting [LPAR04] the rule new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(new_primPlusNat0(Main.Succ(z2), Main.Succ(Main.Zero)), z1, new_primPlusNat0(Main.Succ(z2), Main.Succ(Main.Zero)), z0) at position [0] we obtained the following new rules [LPAR04]: 162.74/105.88 162.74/105.88 (new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, new_primPlusNat0(Main.Succ(z2), Main.Succ(Main.Zero)), z0),new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, new_primPlusNat0(Main.Succ(z2), Main.Succ(Main.Zero)), z0)) 162.74/105.88 162.74/105.88 162.74/105.88 ---------------------------------------- 162.74/105.88 162.74/105.88 (576) 162.74/105.88 Obligation: 162.74/105.88 Q DP problem: 162.74/105.88 The TRS P consists of the following rules: 162.74/105.88 162.74/105.88 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.74/105.88 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.88 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.88 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.88 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.88 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.88 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z1, new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z0) 162.74/105.88 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, new_primPlusNat0(Main.Succ(z2), Main.Succ(Main.Zero)), z0) 162.74/105.88 162.74/105.88 The TRS R consists of the following rules: 162.74/105.88 162.74/105.88 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.88 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.88 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.88 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.88 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.88 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.88 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.88 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.88 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.88 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.88 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.88 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.88 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.88 new_error0 -> Prelude.error([]) 162.74/105.88 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.88 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.88 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.88 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.88 new_error -> Prelude.error([]) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.88 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.88 new_primMinusNatS2 -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.88 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.88 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.88 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.88 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.88 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.88 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.88 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.88 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.88 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.88 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.88 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.88 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.88 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.88 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.88 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.88 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.88 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.88 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.88 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.88 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.88 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.88 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.88 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.88 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.88 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.88 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.88 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.88 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.88 162.74/105.88 The set Q consists of the following terms: 162.74/105.88 162.74/105.88 new_reduce2D1(x0, x1) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.88 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.88 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_primModNatS02(x0, x1) 162.74/105.88 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.88 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.88 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.88 new_absReal1(x0) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.88 new_gcd22(Main.Zero, Main.Zero) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.88 new_error0 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.88 new_gcd22(Main.Succ(x0), x1) 162.74/105.88 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.88 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primDivNatS02(x0, x1) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.88 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.88 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_error 162.74/105.88 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.88 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primModNatS1(Main.Zero, x0) 162.74/105.88 new_primRemInt(Main.Neg(x0), x1) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.88 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.88 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.88 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.88 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.88 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_primDivNatS3(Main.Zero, x0) 162.74/105.88 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.88 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_absMyInt(Main.Zero) 162.74/105.88 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.88 new_absMyInt(Main.Succ(x0)) 162.74/105.88 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_gcd2(Main.Succ(x0), x1) 162.74/105.88 new_absMyInt0(Main.Zero) 162.74/105.88 new_primMulNat1(Main.Zero) 162.74/105.88 new_absReal10 162.74/105.88 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.88 new_gcd0(x0, x1) 162.74/105.88 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.88 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_gcd2(Main.Zero, Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.88 new_reduce2D(x0, x1) 162.74/105.88 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.88 new_reduce2D0(x0, x1) 162.74/105.88 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_primMinusNatS2 162.74/105.88 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primDivNatS2(Main.Succ(x0)) 162.74/105.88 new_primMulNat1(Main.Succ(x0)) 162.74/105.88 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.88 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_primDivNatS2(Main.Zero) 162.74/105.88 new_gcd21(Main.Succ(x0), x1) 162.74/105.88 new_absMyInt0(Main.Succ(x0)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.88 new_reduce2D2(x0, x1) 162.74/105.88 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.88 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.88 new_primMinusNatS1(x0) 162.74/105.88 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.88 new_primRemInt(Main.Pos(x0), x1) 162.74/105.88 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_gcd21(Main.Zero, Main.Zero) 162.74/105.88 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.88 162.74/105.88 We have to consider all minimal (P,Q,R)-chains. 162.74/105.88 ---------------------------------------- 162.74/105.88 162.74/105.88 (577) TransformationProof (EQUIVALENT) 162.74/105.88 By rewriting [LPAR04] the rule new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z1, new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z0) at position [0] we obtained the following new rules [LPAR04]: 162.74/105.88 162.74/105.88 (new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), z1, new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z0),new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), z1, new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z0)) 162.74/105.88 162.74/105.88 162.74/105.88 ---------------------------------------- 162.74/105.88 162.74/105.88 (578) 162.74/105.88 Obligation: 162.74/105.88 Q DP problem: 162.74/105.88 The TRS P consists of the following rules: 162.74/105.88 162.74/105.88 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.74/105.88 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.88 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.88 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.88 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.88 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.88 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, new_primPlusNat0(Main.Succ(z2), Main.Succ(Main.Zero)), z0) 162.74/105.88 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), z1, new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z0) 162.74/105.88 162.74/105.88 The TRS R consists of the following rules: 162.74/105.88 162.74/105.88 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.88 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.88 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.88 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.88 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.88 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.88 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.88 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.88 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.88 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.88 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.88 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.88 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.88 new_error0 -> Prelude.error([]) 162.74/105.88 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.88 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.88 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.88 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.88 new_error -> Prelude.error([]) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.88 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.88 new_primMinusNatS2 -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.88 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.88 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.88 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.88 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.88 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.88 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.88 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.88 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.88 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.88 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.88 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.88 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.88 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.88 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.88 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.88 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.88 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.88 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.88 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.88 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.88 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.88 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.88 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.88 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.88 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.88 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.88 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.88 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.88 162.74/105.88 The set Q consists of the following terms: 162.74/105.88 162.74/105.88 new_reduce2D1(x0, x1) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.88 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.88 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_primModNatS02(x0, x1) 162.74/105.88 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.88 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.88 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.88 new_absReal1(x0) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.88 new_gcd22(Main.Zero, Main.Zero) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.88 new_error0 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.88 new_gcd22(Main.Succ(x0), x1) 162.74/105.88 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.88 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primDivNatS02(x0, x1) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.88 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.88 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_error 162.74/105.88 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.88 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primModNatS1(Main.Zero, x0) 162.74/105.88 new_primRemInt(Main.Neg(x0), x1) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.88 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.88 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.88 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.88 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.88 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_primDivNatS3(Main.Zero, x0) 162.74/105.88 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.88 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_absMyInt(Main.Zero) 162.74/105.88 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.88 new_absMyInt(Main.Succ(x0)) 162.74/105.88 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_gcd2(Main.Succ(x0), x1) 162.74/105.88 new_absMyInt0(Main.Zero) 162.74/105.88 new_primMulNat1(Main.Zero) 162.74/105.88 new_absReal10 162.74/105.88 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.88 new_gcd0(x0, x1) 162.74/105.88 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.88 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_gcd2(Main.Zero, Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.88 new_reduce2D(x0, x1) 162.74/105.88 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.88 new_reduce2D0(x0, x1) 162.74/105.88 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_primMinusNatS2 162.74/105.88 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primDivNatS2(Main.Succ(x0)) 162.74/105.88 new_primMulNat1(Main.Succ(x0)) 162.74/105.88 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.88 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_primDivNatS2(Main.Zero) 162.74/105.88 new_gcd21(Main.Succ(x0), x1) 162.74/105.88 new_absMyInt0(Main.Succ(x0)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.88 new_reduce2D2(x0, x1) 162.74/105.88 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.88 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.88 new_primMinusNatS1(x0) 162.74/105.88 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.88 new_primRemInt(Main.Pos(x0), x1) 162.74/105.88 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_gcd21(Main.Zero, Main.Zero) 162.74/105.88 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.88 162.74/105.88 We have to consider all minimal (P,Q,R)-chains. 162.74/105.88 ---------------------------------------- 162.74/105.88 162.74/105.88 (579) TransformationProof (EQUIVALENT) 162.74/105.88 By rewriting [LPAR04] the rule new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, new_primPlusNat0(Main.Succ(z2), Main.Succ(Main.Zero)), z0) at position [2] we obtained the following new rules [LPAR04]: 162.74/105.88 162.74/105.88 (new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0),new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0)) 162.74/105.88 162.74/105.88 162.74/105.88 ---------------------------------------- 162.74/105.88 162.74/105.88 (580) 162.74/105.88 Obligation: 162.74/105.88 Q DP problem: 162.74/105.88 The TRS P consists of the following rules: 162.74/105.88 162.74/105.88 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.74/105.88 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.88 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.88 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.88 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.88 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.88 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), z1, new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z0) 162.74/105.88 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.88 162.74/105.88 The TRS R consists of the following rules: 162.74/105.88 162.74/105.88 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.88 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.88 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.88 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.88 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.88 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.88 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.88 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.88 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.88 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.88 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.88 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.88 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.88 new_error0 -> Prelude.error([]) 162.74/105.88 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.88 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.88 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.88 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.88 new_error -> Prelude.error([]) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.88 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.88 new_primMinusNatS2 -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.88 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.88 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.88 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.88 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.88 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.88 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.88 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.88 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.88 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.88 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.88 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.88 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.88 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.88 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.88 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.88 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.88 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.88 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.88 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.88 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.88 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.88 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.88 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.88 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.88 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.88 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.88 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.88 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.88 162.74/105.88 The set Q consists of the following terms: 162.74/105.88 162.74/105.88 new_reduce2D1(x0, x1) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.88 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.88 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_primModNatS02(x0, x1) 162.74/105.88 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.88 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.88 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.88 new_absReal1(x0) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.88 new_gcd22(Main.Zero, Main.Zero) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.88 new_error0 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.88 new_gcd22(Main.Succ(x0), x1) 162.74/105.88 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.88 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primDivNatS02(x0, x1) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.88 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.88 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_error 162.74/105.88 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.88 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primModNatS1(Main.Zero, x0) 162.74/105.88 new_primRemInt(Main.Neg(x0), x1) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.88 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.88 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.88 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.88 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.88 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_primDivNatS3(Main.Zero, x0) 162.74/105.88 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.88 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_absMyInt(Main.Zero) 162.74/105.88 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.88 new_absMyInt(Main.Succ(x0)) 162.74/105.88 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_gcd2(Main.Succ(x0), x1) 162.74/105.88 new_absMyInt0(Main.Zero) 162.74/105.88 new_primMulNat1(Main.Zero) 162.74/105.88 new_absReal10 162.74/105.88 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.88 new_gcd0(x0, x1) 162.74/105.88 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.88 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_gcd2(Main.Zero, Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.88 new_reduce2D(x0, x1) 162.74/105.88 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.88 new_reduce2D0(x0, x1) 162.74/105.88 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_primMinusNatS2 162.74/105.88 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primDivNatS2(Main.Succ(x0)) 162.74/105.88 new_primMulNat1(Main.Succ(x0)) 162.74/105.88 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.88 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_primDivNatS2(Main.Zero) 162.74/105.88 new_gcd21(Main.Succ(x0), x1) 162.74/105.88 new_absMyInt0(Main.Succ(x0)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.88 new_reduce2D2(x0, x1) 162.74/105.88 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.88 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.88 new_primMinusNatS1(x0) 162.74/105.88 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.88 new_primRemInt(Main.Pos(x0), x1) 162.74/105.88 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_gcd21(Main.Zero, Main.Zero) 162.74/105.88 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.88 162.74/105.88 We have to consider all minimal (P,Q,R)-chains. 162.74/105.88 ---------------------------------------- 162.74/105.88 162.74/105.88 (581) TransformationProof (EQUIVALENT) 162.74/105.88 By rewriting [LPAR04] the rule new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), z1, new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z0) at position [0,0,0] we obtained the following new rules [LPAR04]: 162.74/105.88 162.74/105.88 (new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z0),new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z0)) 162.74/105.88 162.74/105.88 162.74/105.88 ---------------------------------------- 162.74/105.88 162.74/105.88 (582) 162.74/105.88 Obligation: 162.74/105.88 Q DP problem: 162.74/105.88 The TRS P consists of the following rules: 162.74/105.88 162.74/105.88 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.74/105.88 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.88 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.88 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.88 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.88 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.88 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.88 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z0) 162.74/105.88 162.74/105.88 The TRS R consists of the following rules: 162.74/105.88 162.74/105.88 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.88 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.88 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.88 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.88 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.88 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.88 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.88 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.88 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.88 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.88 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.88 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.88 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.88 new_error0 -> Prelude.error([]) 162.74/105.88 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.88 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.88 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.88 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.88 new_error -> Prelude.error([]) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.88 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.88 new_primMinusNatS2 -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.88 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.88 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.88 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.88 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.88 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.88 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.88 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.88 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.88 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.88 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.88 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.88 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.88 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.88 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.88 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.88 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.88 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.88 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.88 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.88 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.88 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.88 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.88 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.88 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.88 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.88 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.88 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.88 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.88 162.74/105.88 The set Q consists of the following terms: 162.74/105.88 162.74/105.88 new_reduce2D1(x0, x1) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.88 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.88 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_primModNatS02(x0, x1) 162.74/105.88 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.88 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.88 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.88 new_absReal1(x0) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.88 new_gcd22(Main.Zero, Main.Zero) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.88 new_error0 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.88 new_gcd22(Main.Succ(x0), x1) 162.74/105.88 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.88 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primDivNatS02(x0, x1) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.88 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.88 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_error 162.74/105.88 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.88 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primModNatS1(Main.Zero, x0) 162.74/105.88 new_primRemInt(Main.Neg(x0), x1) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.88 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.88 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.88 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.88 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.88 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_primDivNatS3(Main.Zero, x0) 162.74/105.88 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.88 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_absMyInt(Main.Zero) 162.74/105.88 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.88 new_absMyInt(Main.Succ(x0)) 162.74/105.88 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_gcd2(Main.Succ(x0), x1) 162.74/105.88 new_absMyInt0(Main.Zero) 162.74/105.88 new_primMulNat1(Main.Zero) 162.74/105.88 new_absReal10 162.74/105.88 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.88 new_gcd0(x0, x1) 162.74/105.88 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.88 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_gcd2(Main.Zero, Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.88 new_reduce2D(x0, x1) 162.74/105.88 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.88 new_reduce2D0(x0, x1) 162.74/105.88 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_primMinusNatS2 162.74/105.88 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primDivNatS2(Main.Succ(x0)) 162.74/105.88 new_primMulNat1(Main.Succ(x0)) 162.74/105.88 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.88 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_primDivNatS2(Main.Zero) 162.74/105.88 new_gcd21(Main.Succ(x0), x1) 162.74/105.88 new_absMyInt0(Main.Succ(x0)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.88 new_reduce2D2(x0, x1) 162.74/105.88 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.88 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.88 new_primMinusNatS1(x0) 162.74/105.88 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.88 new_primRemInt(Main.Pos(x0), x1) 162.74/105.88 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_gcd21(Main.Zero, Main.Zero) 162.74/105.88 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.88 162.74/105.88 We have to consider all minimal (P,Q,R)-chains. 162.74/105.88 ---------------------------------------- 162.74/105.88 162.74/105.88 (583) TransformationProof (EQUIVALENT) 162.74/105.88 By rewriting [LPAR04] the rule new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, new_primPlusNat0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), z0) at position [2] we obtained the following new rules [LPAR04]: 162.74/105.88 162.74/105.88 (new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), z0),new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), z0)) 162.74/105.88 162.74/105.88 162.74/105.88 ---------------------------------------- 162.74/105.88 162.74/105.88 (584) 162.74/105.88 Obligation: 162.74/105.88 Q DP problem: 162.74/105.88 The TRS P consists of the following rules: 162.74/105.88 162.74/105.88 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.74/105.88 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.88 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.88 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.88 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.88 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.88 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.88 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), z0) 162.74/105.88 162.74/105.88 The TRS R consists of the following rules: 162.74/105.88 162.74/105.88 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.88 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.88 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.88 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.88 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.88 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.88 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.88 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.88 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.88 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.88 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.88 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.88 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.88 new_error0 -> Prelude.error([]) 162.74/105.88 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.88 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.88 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.88 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.88 new_error -> Prelude.error([]) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.88 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.88 new_primMinusNatS2 -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.88 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.88 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.88 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.88 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.88 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.88 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.88 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.88 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.88 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.88 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.88 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.88 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.88 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.88 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.88 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.88 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.88 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.88 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.88 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.88 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.88 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.88 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.88 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.88 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.88 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.88 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.88 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.88 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.88 162.74/105.88 The set Q consists of the following terms: 162.74/105.88 162.74/105.88 new_reduce2D1(x0, x1) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.88 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.88 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_primModNatS02(x0, x1) 162.74/105.88 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.88 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.88 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.88 new_absReal1(x0) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.88 new_gcd22(Main.Zero, Main.Zero) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.88 new_error0 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.88 new_gcd22(Main.Succ(x0), x1) 162.74/105.88 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.88 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primDivNatS02(x0, x1) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.88 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.88 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_error 162.74/105.88 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.88 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primModNatS1(Main.Zero, x0) 162.74/105.88 new_primRemInt(Main.Neg(x0), x1) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.88 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.88 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.88 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.88 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.88 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_primDivNatS3(Main.Zero, x0) 162.74/105.88 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.88 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_absMyInt(Main.Zero) 162.74/105.88 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.88 new_absMyInt(Main.Succ(x0)) 162.74/105.88 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_gcd2(Main.Succ(x0), x1) 162.74/105.88 new_absMyInt0(Main.Zero) 162.74/105.88 new_primMulNat1(Main.Zero) 162.74/105.88 new_absReal10 162.74/105.88 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.88 new_gcd0(x0, x1) 162.74/105.88 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.88 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_gcd2(Main.Zero, Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.88 new_reduce2D(x0, x1) 162.74/105.88 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.88 new_reduce2D0(x0, x1) 162.74/105.88 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_primMinusNatS2 162.74/105.88 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primDivNatS2(Main.Succ(x0)) 162.74/105.88 new_primMulNat1(Main.Succ(x0)) 162.74/105.88 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.88 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_primDivNatS2(Main.Zero) 162.74/105.88 new_gcd21(Main.Succ(x0), x1) 162.74/105.88 new_absMyInt0(Main.Succ(x0)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.88 new_reduce2D2(x0, x1) 162.74/105.88 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.88 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.88 new_primMinusNatS1(x0) 162.74/105.88 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.88 new_primRemInt(Main.Pos(x0), x1) 162.74/105.88 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_gcd21(Main.Zero, Main.Zero) 162.74/105.88 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.88 162.74/105.88 We have to consider all minimal (P,Q,R)-chains. 162.74/105.88 ---------------------------------------- 162.74/105.88 162.74/105.88 (585) TransformationProof (EQUIVALENT) 162.74/105.88 By rewriting [LPAR04] the rule new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), z0) at position [2,0,0] we obtained the following new rules [LPAR04]: 162.74/105.88 162.74/105.88 (new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0),new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0)) 162.74/105.88 162.74/105.88 162.74/105.88 ---------------------------------------- 162.74/105.88 162.74/105.88 (586) 162.74/105.88 Obligation: 162.74/105.88 Q DP problem: 162.74/105.88 The TRS P consists of the following rules: 162.74/105.88 162.74/105.88 new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) 162.74/105.88 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.88 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.88 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.88 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.88 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.88 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.88 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.88 162.74/105.88 The TRS R consists of the following rules: 162.74/105.88 162.74/105.88 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.88 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.88 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.88 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.88 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.88 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.88 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.88 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.88 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.88 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.88 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.88 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.88 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.88 new_error0 -> Prelude.error([]) 162.74/105.88 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.88 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.88 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.88 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.88 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.88 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.88 new_error -> Prelude.error([]) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.88 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.88 new_primMinusNatS2 -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.88 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.88 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.88 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.88 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.88 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.88 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.88 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.88 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.88 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.88 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.88 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.88 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.88 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.88 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.88 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.88 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.88 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.88 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.88 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.88 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.88 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.88 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.88 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.88 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.88 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.88 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.88 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.88 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.88 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.88 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.88 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.88 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.88 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.88 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.88 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.88 162.74/105.88 The set Q consists of the following terms: 162.74/105.88 162.74/105.88 new_reduce2D1(x0, x1) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.88 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.88 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_primModNatS02(x0, x1) 162.74/105.88 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.88 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.88 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.88 new_absReal1(x0) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.88 new_gcd22(Main.Zero, Main.Zero) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.88 new_error0 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.88 new_gcd22(Main.Succ(x0), x1) 162.74/105.88 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.88 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primDivNatS02(x0, x1) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.88 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.88 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_error 162.74/105.88 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.88 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primModNatS1(Main.Zero, x0) 162.74/105.88 new_primRemInt(Main.Neg(x0), x1) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.88 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.88 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.88 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.88 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.88 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_primDivNatS3(Main.Zero, x0) 162.74/105.88 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.88 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_absMyInt(Main.Zero) 162.74/105.88 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.88 new_absMyInt(Main.Succ(x0)) 162.74/105.88 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.88 new_gcd2(Main.Succ(x0), x1) 162.74/105.88 new_absMyInt0(Main.Zero) 162.74/105.88 new_primMulNat1(Main.Zero) 162.74/105.88 new_absReal10 162.74/105.88 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.88 new_gcd0(x0, x1) 162.74/105.88 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.88 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_gcd2(Main.Zero, Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.88 new_reduce2D(x0, x1) 162.74/105.88 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.88 new_reduce2D0(x0, x1) 162.74/105.88 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_primMinusNatS2 162.74/105.88 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.88 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primDivNatS2(Main.Succ(x0)) 162.74/105.88 new_primMulNat1(Main.Succ(x0)) 162.74/105.88 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.88 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.88 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.88 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.88 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_primDivNatS2(Main.Zero) 162.74/105.88 new_gcd21(Main.Succ(x0), x1) 162.74/105.88 new_absMyInt0(Main.Succ(x0)) 162.74/105.88 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.88 new_reduce2D2(x0, x1) 162.74/105.88 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.88 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.88 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.88 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.88 new_primMinusNatS1(x0) 162.74/105.88 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.88 new_primRemInt(Main.Pos(x0), x1) 162.74/105.88 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.88 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.88 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.88 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.88 new_gcd21(Main.Zero, Main.Zero) 162.74/105.88 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.88 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.88 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.88 162.74/105.88 We have to consider all minimal (P,Q,R)-chains. 162.74/105.88 ---------------------------------------- 162.74/105.88 162.74/105.88 (587) TransformationProof (EQUIVALENT) 162.74/105.88 By instantiating [LPAR04] the rule new_pr2F31(Main.Succ(vx900), vx78, vx89, vx77) -> new_pr2F32(vx900, vx78, vx89, new_srRatio0(vx78, vx77)) we obtained the following new rules [LPAR04]: 162.74/105.88 162.74/105.88 (new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)),new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2))) 162.74/105.88 (new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)),new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1))) 162.74/105.88 162.74/105.88 162.74/105.88 ---------------------------------------- 162.74/105.88 162.74/105.88 (588) 162.74/105.88 Obligation: 162.74/105.88 Q DP problem: 162.74/105.88 The TRS P consists of the following rules: 162.74/105.88 162.74/105.88 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.88 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.88 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.88 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.88 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.88 new_pr2F32(vx620, vx50, Main.Succ(Main.Zero), vx67) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.88 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.88 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.88 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.88 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.88 162.74/105.88 The TRS R consists of the following rules: 162.74/105.88 162.74/105.88 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.88 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.88 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.88 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.88 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.88 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.88 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.88 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.89 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.89 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.89 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.89 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.89 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.89 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.89 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.89 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.89 new_error0 -> Prelude.error([]) 162.74/105.89 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.89 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.89 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.89 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.89 new_error -> Prelude.error([]) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.89 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.89 new_primMinusNatS2 -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.89 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.89 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.89 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.89 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.89 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.89 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.89 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.89 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.89 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.89 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.89 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.89 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.89 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.89 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.89 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.89 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.89 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.89 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.89 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.89 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.89 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.89 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.89 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.89 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.89 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.89 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.89 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.89 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.89 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.89 162.74/105.89 The set Q consists of the following terms: 162.74/105.89 162.74/105.89 new_reduce2D1(x0, x1) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.89 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.89 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.89 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.89 new_primModNatS02(x0, x1) 162.74/105.89 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.89 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.89 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.89 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.89 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.89 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.89 new_absReal1(x0) 162.74/105.89 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.89 new_gcd22(Main.Zero, Main.Zero) 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.89 new_error0 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.89 new_gcd22(Main.Succ(x0), x1) 162.74/105.89 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.89 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.89 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.89 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.89 new_primDivNatS02(x0, x1) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.89 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.89 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.89 new_error 162.74/105.89 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.89 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.89 new_primModNatS1(Main.Zero, x0) 162.74/105.89 new_primRemInt(Main.Neg(x0), x1) 162.74/105.89 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.89 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.89 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.89 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.89 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.89 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.89 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.89 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.89 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.89 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.89 new_primDivNatS3(Main.Zero, x0) 162.74/105.89 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.89 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_absMyInt(Main.Zero) 162.74/105.89 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.89 new_absMyInt(Main.Succ(x0)) 162.74/105.89 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.89 new_gcd2(Main.Succ(x0), x1) 162.74/105.89 new_absMyInt0(Main.Zero) 162.74/105.89 new_primMulNat1(Main.Zero) 162.74/105.89 new_absReal10 162.74/105.89 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.89 new_gcd0(x0, x1) 162.74/105.89 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.89 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.89 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.89 new_gcd2(Main.Zero, Main.Zero) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.89 new_reduce2D(x0, x1) 162.74/105.89 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.89 new_reduce2D0(x0, x1) 162.74/105.89 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.89 new_primMinusNatS2 162.74/105.89 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.89 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.89 new_primDivNatS2(Main.Succ(x0)) 162.74/105.89 new_primMulNat1(Main.Succ(x0)) 162.74/105.89 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.89 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.89 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.89 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.89 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.89 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.89 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.89 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.89 new_primDivNatS2(Main.Zero) 162.74/105.89 new_gcd21(Main.Succ(x0), x1) 162.74/105.89 new_absMyInt0(Main.Succ(x0)) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.89 new_reduce2D2(x0, x1) 162.74/105.89 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.89 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.89 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.89 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.89 new_primMinusNatS1(x0) 162.74/105.89 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.89 new_primRemInt(Main.Pos(x0), x1) 162.74/105.89 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.89 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.89 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.89 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.89 new_gcd21(Main.Zero, Main.Zero) 162.74/105.89 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.89 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.89 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.89 162.74/105.89 We have to consider all minimal (P,Q,R)-chains. 162.74/105.89 ---------------------------------------- 162.74/105.89 162.74/105.89 (589) DependencyGraphProof (EQUIVALENT) 162.74/105.89 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.74/105.89 ---------------------------------------- 162.74/105.89 162.74/105.89 (590) 162.74/105.89 Obligation: 162.74/105.89 Q DP problem: 162.74/105.89 The TRS P consists of the following rules: 162.74/105.89 162.74/105.89 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.89 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.89 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.89 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.89 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.89 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.89 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.89 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.89 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.89 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.89 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.89 162.74/105.89 The TRS R consists of the following rules: 162.74/105.89 162.74/105.89 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.89 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.89 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.89 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.89 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.89 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.89 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.89 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.89 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.89 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.89 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.89 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.89 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.89 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.89 new_error0 -> Prelude.error([]) 162.74/105.89 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.89 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.89 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.89 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.89 new_error -> Prelude.error([]) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.89 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.89 new_primMinusNatS2 -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.89 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.89 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.89 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.89 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.89 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.89 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.89 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.89 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.89 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.89 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.89 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.89 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.89 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.89 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.89 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.89 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.89 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.89 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.89 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.89 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.89 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.89 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.89 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.89 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.89 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.89 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.89 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.89 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.89 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.89 162.74/105.89 The set Q consists of the following terms: 162.74/105.89 162.74/105.89 new_reduce2D1(x0, x1) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.89 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.89 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.89 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.89 new_primModNatS02(x0, x1) 162.74/105.89 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.89 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.89 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.89 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.89 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.89 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.89 new_absReal1(x0) 162.74/105.89 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.89 new_gcd22(Main.Zero, Main.Zero) 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.89 new_error0 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.89 new_gcd22(Main.Succ(x0), x1) 162.74/105.89 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.89 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.89 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.89 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.89 new_primDivNatS02(x0, x1) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.89 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.89 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.89 new_error 162.74/105.89 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.89 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.89 new_primModNatS1(Main.Zero, x0) 162.74/105.89 new_primRemInt(Main.Neg(x0), x1) 162.74/105.89 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.89 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.89 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.89 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.89 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.89 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.89 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.89 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.89 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.89 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.89 new_primDivNatS3(Main.Zero, x0) 162.74/105.89 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.89 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_absMyInt(Main.Zero) 162.74/105.89 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.89 new_absMyInt(Main.Succ(x0)) 162.74/105.89 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.89 new_gcd2(Main.Succ(x0), x1) 162.74/105.89 new_absMyInt0(Main.Zero) 162.74/105.89 new_primMulNat1(Main.Zero) 162.74/105.89 new_absReal10 162.74/105.89 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.89 new_gcd0(x0, x1) 162.74/105.89 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.89 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.89 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.89 new_gcd2(Main.Zero, Main.Zero) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.89 new_reduce2D(x0, x1) 162.74/105.89 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.89 new_reduce2D0(x0, x1) 162.74/105.89 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.89 new_primMinusNatS2 162.74/105.89 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.89 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.89 new_primDivNatS2(Main.Succ(x0)) 162.74/105.89 new_primMulNat1(Main.Succ(x0)) 162.74/105.89 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.89 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.89 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.89 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.89 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.89 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.89 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.89 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.89 new_primDivNatS2(Main.Zero) 162.74/105.89 new_gcd21(Main.Succ(x0), x1) 162.74/105.89 new_absMyInt0(Main.Succ(x0)) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.89 new_reduce2D2(x0, x1) 162.74/105.89 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.89 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.89 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.89 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.89 new_primMinusNatS1(x0) 162.74/105.89 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.89 new_primRemInt(Main.Pos(x0), x1) 162.74/105.89 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.89 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.89 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.89 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.89 new_gcd21(Main.Zero, Main.Zero) 162.74/105.89 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.89 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.89 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.89 162.74/105.89 We have to consider all minimal (P,Q,R)-chains. 162.74/105.89 ---------------------------------------- 162.74/105.89 162.74/105.89 (591) MNOCProof (EQUIVALENT) 162.74/105.89 We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set. 162.74/105.89 ---------------------------------------- 162.74/105.89 162.74/105.89 (592) 162.74/105.89 Obligation: 162.74/105.89 Q DP problem: 162.74/105.89 The TRS P consists of the following rules: 162.74/105.89 162.74/105.89 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.89 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.89 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.89 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.89 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.89 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.89 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.89 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.89 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.89 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.89 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.89 162.74/105.89 The TRS R consists of the following rules: 162.74/105.89 162.74/105.89 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.89 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.89 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.89 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.89 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.89 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.89 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.89 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.89 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.89 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.89 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.89 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.89 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.89 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.89 new_error0 -> Prelude.error([]) 162.74/105.89 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.89 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.89 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.89 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.89 new_error -> Prelude.error([]) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.89 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.89 new_primMinusNatS2 -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.89 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.89 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.89 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.89 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.89 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.89 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.89 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.89 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.89 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.89 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.89 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.89 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.89 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.89 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.89 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.89 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.89 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.89 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.89 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.89 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.89 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.89 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.89 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.89 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.89 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.89 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.89 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.89 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.89 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.89 162.74/105.89 Q is empty. 162.74/105.89 We have to consider all (P,Q,R)-chains. 162.74/105.89 ---------------------------------------- 162.74/105.89 162.74/105.89 (593) InductionCalculusProof (EQUIVALENT) 162.74/105.89 Note that final constraints are written in bold face. 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 For Pair new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) the following chains were created: 162.74/105.89 *We consider the chain new_pr2F0G11(x3, x4, x5, Main.Zero) -> new_pr2F0G2(x3, new_srRatio(x4), x5), new_pr2F0G2(x6, x7, x8) -> new_pr2F0G12(x6, x7, new_primDivNatS2(x8)) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G2(x3, new_srRatio(x4), x5)=new_pr2F0G2(x6, x7, x8) ==> new_pr2F0G11(x3, x4, x5, Main.Zero)_>=_new_pr2F0G2(x3, new_srRatio(x4), x5)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F0G11(x3, x4, x5, Main.Zero)_>=_new_pr2F0G2(x3, new_srRatio(x4), x5)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 For Pair new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) the following chains were created: 162.74/105.89 *We consider the chain new_pr2F0G2(x42, x43, x44) -> new_pr2F0G12(x42, x43, new_primDivNatS2(x44)), new_pr2F0G12(x45, x46, Main.Succ(Main.Succ(x47))) -> new_pr2F0G11(x45, x46, Main.Succ(x47), x47) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G12(x42, x43, new_primDivNatS2(x44))=new_pr2F0G12(x45, x46, Main.Succ(Main.Succ(x47))) ==> new_pr2F0G2(x42, x43, x44)_>=_new_pr2F0G12(x42, x43, new_primDivNatS2(x44))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_primDivNatS2(x44)=Main.Succ(Main.Succ(x47)) ==> new_pr2F0G2(x42, x43, x44)_>=_new_pr2F0G12(x42, x43, new_primDivNatS2(x44))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS2(x44)=Main.Succ(Main.Succ(x47)) which results in the following new constraint: 162.74/105.89 162.74/105.89 (3) (new_primDivNatS01(x431, Main.Zero, x431, Main.Zero)=Main.Succ(Main.Succ(x47)) ==> new_pr2F0G2(x42, x43, Main.Succ(x431))_>=_new_pr2F0G12(x42, x43, new_primDivNatS2(Main.Succ(x431)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (3) using rule (VII) which results in the following new constraint: 162.74/105.89 162.74/105.89 (4) (Main.Zero=x432 & x431=x433 & Main.Zero=x434 & new_primDivNatS01(x431, x432, x433, x434)=Main.Succ(Main.Succ(x47)) ==> new_pr2F0G2(x42, x43, Main.Succ(x431))_>=_new_pr2F0G12(x42, x43, new_primDivNatS2(Main.Succ(x431)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS01(x431, x432, x433, x434)=Main.Succ(Main.Succ(x47)) which results in the following new constraints: 162.74/105.89 162.74/105.89 (5) (new_primDivNatS02(x437, x436)=Main.Succ(Main.Succ(x47)) & Main.Zero=x436 & x437=Main.Succ(x435) & Main.Zero=Main.Zero ==> new_pr2F0G2(x42, x43, Main.Succ(x437))_>=_new_pr2F0G12(x42, x43, new_primDivNatS2(Main.Succ(x437)))) 162.74/105.89 162.74/105.89 (6) (new_primDivNatS02(x439, x438)=Main.Succ(Main.Succ(x47)) & Main.Zero=x438 & x439=Main.Zero & Main.Zero=Main.Zero ==> new_pr2F0G2(x42, x43, Main.Succ(x439))_>=_new_pr2F0G12(x42, x43, new_primDivNatS2(Main.Succ(x439)))) 162.74/105.89 162.74/105.89 (7) (new_primDivNatS01(x446, x445, x444, x443)=Main.Succ(Main.Succ(x47)) & Main.Zero=x445 & x446=Main.Succ(x444) & Main.Zero=Main.Succ(x443) & (\/x447,x448,x449:new_primDivNatS01(x446, x445, x444, x443)=Main.Succ(Main.Succ(x447)) & Main.Zero=x445 & x446=x444 & Main.Zero=x443 ==> new_pr2F0G2(x448, x449, Main.Succ(x446))_>=_new_pr2F0G12(x448, x449, new_primDivNatS2(Main.Succ(x446)))) ==> new_pr2F0G2(x42, x43, Main.Succ(x446))_>=_new_pr2F0G12(x42, x43, new_primDivNatS2(Main.Succ(x446)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (5) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.89 162.74/105.89 (8) (new_pr2F0G2(x42, x43, Main.Succ(Main.Succ(x435)))_>=_new_pr2F0G12(x42, x43, new_primDivNatS2(Main.Succ(Main.Succ(x435))))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (6) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.89 162.74/105.89 (9) (new_pr2F0G2(x42, x43, Main.Succ(Main.Zero))_>=_new_pr2F0G12(x42, x43, new_primDivNatS2(Main.Succ(Main.Zero)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We solved constraint (7) using rules (I), (II). 162.74/105.89 *We consider the chain new_pr2F0G2(x69, x70, x71) -> new_pr2F0G12(x69, x70, new_primDivNatS2(x71)), new_pr2F0G12(x72, x73, Main.Succ(Main.Zero)) -> new_pr2F0(x73, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x72) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G12(x69, x70, new_primDivNatS2(x71))=new_pr2F0G12(x72, x73, Main.Succ(Main.Zero)) ==> new_pr2F0G2(x69, x70, x71)_>=_new_pr2F0G12(x69, x70, new_primDivNatS2(x71))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_primDivNatS2(x71)=Main.Succ(Main.Zero) ==> new_pr2F0G2(x69, x70, x71)_>=_new_pr2F0G12(x69, x70, new_primDivNatS2(x71))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS2(x71)=Main.Succ(Main.Zero) which results in the following new constraint: 162.74/105.89 162.74/105.89 (3) (new_primDivNatS01(x452, Main.Zero, x452, Main.Zero)=Main.Succ(Main.Zero) ==> new_pr2F0G2(x69, x70, Main.Succ(x452))_>=_new_pr2F0G12(x69, x70, new_primDivNatS2(Main.Succ(x452)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (3) using rule (VII) which results in the following new constraint: 162.74/105.89 162.74/105.89 (4) (Main.Zero=x453 & x452=x454 & Main.Zero=x455 & new_primDivNatS01(x452, x453, x454, x455)=Main.Succ(Main.Zero) ==> new_pr2F0G2(x69, x70, Main.Succ(x452))_>=_new_pr2F0G12(x69, x70, new_primDivNatS2(Main.Succ(x452)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS01(x452, x453, x454, x455)=Main.Succ(Main.Zero) which results in the following new constraints: 162.74/105.89 162.74/105.89 (5) (new_primDivNatS02(x458, x457)=Main.Succ(Main.Zero) & Main.Zero=x457 & x458=Main.Succ(x456) & Main.Zero=Main.Zero ==> new_pr2F0G2(x69, x70, Main.Succ(x458))_>=_new_pr2F0G12(x69, x70, new_primDivNatS2(Main.Succ(x458)))) 162.74/105.89 162.74/105.89 (6) (new_primDivNatS02(x460, x459)=Main.Succ(Main.Zero) & Main.Zero=x459 & x460=Main.Zero & Main.Zero=Main.Zero ==> new_pr2F0G2(x69, x70, Main.Succ(x460))_>=_new_pr2F0G12(x69, x70, new_primDivNatS2(Main.Succ(x460)))) 162.74/105.89 162.74/105.89 (7) (new_primDivNatS01(x467, x466, x465, x464)=Main.Succ(Main.Zero) & Main.Zero=x466 & x467=Main.Succ(x465) & Main.Zero=Main.Succ(x464) & (\/x468,x469:new_primDivNatS01(x467, x466, x465, x464)=Main.Succ(Main.Zero) & Main.Zero=x466 & x467=x465 & Main.Zero=x464 ==> new_pr2F0G2(x468, x469, Main.Succ(x467))_>=_new_pr2F0G12(x468, x469, new_primDivNatS2(Main.Succ(x467)))) ==> new_pr2F0G2(x69, x70, Main.Succ(x467))_>=_new_pr2F0G12(x69, x70, new_primDivNatS2(Main.Succ(x467)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (5) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.89 162.74/105.89 (8) (new_pr2F0G2(x69, x70, Main.Succ(Main.Succ(x456)))_>=_new_pr2F0G12(x69, x70, new_primDivNatS2(Main.Succ(Main.Succ(x456))))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (6) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.89 162.74/105.89 (9) (new_pr2F0G2(x69, x70, Main.Succ(Main.Zero))_>=_new_pr2F0G12(x69, x70, new_primDivNatS2(Main.Succ(Main.Zero)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We solved constraint (7) using rules (I), (II). 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 For Pair new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) the following chains were created: 162.74/105.89 *We consider the chain new_pr2F0G12(x74, x75, Main.Succ(Main.Succ(x76))) -> new_pr2F0G11(x74, x75, Main.Succ(x76), x76), new_pr2F0G11(x77, x78, x79, Main.Zero) -> new_pr2F0G2(x77, new_srRatio(x78), x79) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G11(x74, x75, Main.Succ(x76), x76)=new_pr2F0G11(x77, x78, x79, Main.Zero) ==> new_pr2F0G12(x74, x75, Main.Succ(Main.Succ(x76)))_>=_new_pr2F0G11(x74, x75, Main.Succ(x76), x76)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F0G12(x74, x75, Main.Succ(Main.Succ(Main.Zero)))_>=_new_pr2F0G11(x74, x75, Main.Succ(Main.Zero), Main.Zero)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *We consider the chain new_pr2F0G12(x86, x87, Main.Succ(Main.Succ(x88))) -> new_pr2F0G11(x86, x87, Main.Succ(x88), x88), new_pr2F0G11(x89, x90, x91, Main.Succ(Main.Succ(x92))) -> new_pr2F0G11(x89, x90, x91, x92) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G11(x86, x87, Main.Succ(x88), x88)=new_pr2F0G11(x89, x90, x91, Main.Succ(Main.Succ(x92))) ==> new_pr2F0G12(x86, x87, Main.Succ(Main.Succ(x88)))_>=_new_pr2F0G11(x86, x87, Main.Succ(x88), x88)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F0G12(x86, x87, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x92)))))_>=_new_pr2F0G11(x86, x87, Main.Succ(Main.Succ(Main.Succ(x92))), Main.Succ(Main.Succ(x92)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *We consider the chain new_pr2F0G12(x93, x94, Main.Succ(Main.Succ(x95))) -> new_pr2F0G11(x93, x94, Main.Succ(x95), x95), new_pr2F0G11(x96, x97, x98, Main.Succ(Main.Zero)) -> new_pr2F0(x97, x98, Main.Pos(Main.Succ(Main.Zero)), x96) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G11(x93, x94, Main.Succ(x95), x95)=new_pr2F0G11(x96, x97, x98, Main.Succ(Main.Zero)) ==> new_pr2F0G12(x93, x94, Main.Succ(Main.Succ(x95)))_>=_new_pr2F0G11(x93, x94, Main.Succ(x95), x95)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F0G12(x93, x94, Main.Succ(Main.Succ(Main.Succ(Main.Zero))))_>=_new_pr2F0G11(x93, x94, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 For Pair new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) the following chains were created: 162.74/105.89 *We consider the chain new_pr2F0G11(x117, x118, x119, Main.Succ(Main.Succ(x120))) -> new_pr2F0G11(x117, x118, x119, x120), new_pr2F0G11(x121, x122, x123, Main.Zero) -> new_pr2F0G2(x121, new_srRatio(x122), x123) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G11(x117, x118, x119, x120)=new_pr2F0G11(x121, x122, x123, Main.Zero) ==> new_pr2F0G11(x117, x118, x119, Main.Succ(Main.Succ(x120)))_>=_new_pr2F0G11(x117, x118, x119, x120)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F0G11(x117, x118, x119, Main.Succ(Main.Succ(Main.Zero)))_>=_new_pr2F0G11(x117, x118, x119, Main.Zero)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *We consider the chain new_pr2F0G11(x132, x133, x134, Main.Succ(Main.Succ(x135))) -> new_pr2F0G11(x132, x133, x134, x135), new_pr2F0G11(x136, x137, x138, Main.Succ(Main.Succ(x139))) -> new_pr2F0G11(x136, x137, x138, x139) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G11(x132, x133, x134, x135)=new_pr2F0G11(x136, x137, x138, Main.Succ(Main.Succ(x139))) ==> new_pr2F0G11(x132, x133, x134, Main.Succ(Main.Succ(x135)))_>=_new_pr2F0G11(x132, x133, x134, x135)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F0G11(x132, x133, x134, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x139)))))_>=_new_pr2F0G11(x132, x133, x134, Main.Succ(Main.Succ(x139)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *We consider the chain new_pr2F0G11(x140, x141, x142, Main.Succ(Main.Succ(x143))) -> new_pr2F0G11(x140, x141, x142, x143), new_pr2F0G11(x144, x145, x146, Main.Succ(Main.Zero)) -> new_pr2F0(x145, x146, Main.Pos(Main.Succ(Main.Zero)), x144) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G11(x140, x141, x142, x143)=new_pr2F0G11(x144, x145, x146, Main.Succ(Main.Zero)) ==> new_pr2F0G11(x140, x141, x142, Main.Succ(Main.Succ(x143)))_>=_new_pr2F0G11(x140, x141, x142, x143)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F0G11(x140, x141, x142, Main.Succ(Main.Succ(Main.Succ(Main.Zero))))_>=_new_pr2F0G11(x140, x141, x142, Main.Succ(Main.Zero))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 For Pair new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) the following chains were created: 162.74/105.89 *We consider the chain new_pr2F0G11(x186, x187, x188, Main.Succ(Main.Zero)) -> new_pr2F0(x187, x188, Main.Pos(Main.Succ(Main.Zero)), x186), new_pr2F0(x189, x190, Main.Pos(Main.Succ(Main.Zero)), x191) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x190, Main.Zero))), x189, Main.Succ(Main.Succ(new_primPlusNat0(x190, Main.Zero))), x191) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0(x187, x188, Main.Pos(Main.Succ(Main.Zero)), x186)=new_pr2F0(x189, x190, Main.Pos(Main.Succ(Main.Zero)), x191) ==> new_pr2F0G11(x186, x187, x188, Main.Succ(Main.Zero))_>=_new_pr2F0(x187, x188, Main.Pos(Main.Succ(Main.Zero)), x186)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F0G11(x186, x187, x188, Main.Succ(Main.Zero))_>=_new_pr2F0(x187, x188, Main.Pos(Main.Succ(Main.Zero)), x186)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *We consider the chain new_pr2F0G11(x201, x202, x203, Main.Succ(Main.Zero)) -> new_pr2F0(x202, x203, Main.Pos(Main.Succ(Main.Zero)), x201), new_pr2F0(x204, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x205) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x204, Main.Succ(Main.Succ(Main.Zero)), x205) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0(x202, x203, Main.Pos(Main.Succ(Main.Zero)), x201)=new_pr2F0(x204, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x205) ==> new_pr2F0G11(x201, x202, x203, Main.Succ(Main.Zero))_>=_new_pr2F0(x202, x203, Main.Pos(Main.Succ(Main.Zero)), x201)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F0G11(x201, x202, Main.Zero, Main.Succ(Main.Zero))_>=_new_pr2F0(x202, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x201)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 For Pair new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) the following chains were created: 162.74/105.89 *We consider the chain new_pr2F0(x227, x228, Main.Pos(Main.Succ(Main.Zero)), x229) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x228, Main.Zero))), x227, Main.Succ(Main.Succ(new_primPlusNat0(x228, Main.Zero))), x229), new_pr2F31(Main.Succ(Main.Succ(x230)), x231, Main.Succ(Main.Succ(x232)), x233) -> new_pr2F32(Main.Succ(x230), x231, Main.Succ(Main.Succ(x232)), new_srRatio0(x231, x233)) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x228, Main.Zero))), x227, Main.Succ(Main.Succ(new_primPlusNat0(x228, Main.Zero))), x229)=new_pr2F31(Main.Succ(Main.Succ(x230)), x231, Main.Succ(Main.Succ(x232)), x233) ==> new_pr2F0(x227, x228, Main.Pos(Main.Succ(Main.Zero)), x229)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x228, Main.Zero))), x227, Main.Succ(Main.Succ(new_primPlusNat0(x228, Main.Zero))), x229)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F0(x227, x228, Main.Pos(Main.Succ(Main.Zero)), x229)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x228, Main.Zero))), x227, Main.Succ(Main.Succ(new_primPlusNat0(x228, Main.Zero))), x229)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *We consider the chain new_pr2F0(x237, x238, Main.Pos(Main.Succ(Main.Zero)), x239) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x238, Main.Zero))), x237, Main.Succ(Main.Succ(new_primPlusNat0(x238, Main.Zero))), x239), new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x240, Main.Succ(Main.Succ(Main.Zero)), x241) -> new_pr2F32(Main.Succ(Main.Zero), x240, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x240, x241)) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x238, Main.Zero))), x237, Main.Succ(Main.Succ(new_primPlusNat0(x238, Main.Zero))), x239)=new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x240, Main.Succ(Main.Succ(Main.Zero)), x241) ==> new_pr2F0(x237, x238, Main.Pos(Main.Succ(Main.Zero)), x239)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x238, Main.Zero))), x237, Main.Succ(Main.Succ(new_primPlusNat0(x238, Main.Zero))), x239)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (Main.Zero=x472 & new_primPlusNat0(x238, x472)=Main.Zero ==> new_pr2F0(x237, x238, Main.Pos(Main.Succ(Main.Zero)), x239)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x238, Main.Zero))), x237, Main.Succ(Main.Succ(new_primPlusNat0(x238, Main.Zero))), x239)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primPlusNat0(x238, x472)=Main.Zero which results in the following new constraint: 162.74/105.89 162.74/105.89 (3) (Main.Zero=Main.Zero ==> new_pr2F0(x237, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x239)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x237, Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x239)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (3) using rules (I), (II) which results in the following new constraint: 162.74/105.89 162.74/105.89 (4) (new_pr2F0(x237, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x239)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x237, Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x239)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 For Pair new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) the following chains were created: 162.74/105.89 *We consider the chain new_pr2F31(Main.Succ(Main.Succ(x276)), x277, Main.Succ(Main.Succ(x278)), x279) -> new_pr2F32(Main.Succ(x276), x277, Main.Succ(Main.Succ(x278)), new_srRatio0(x277, x279)), new_pr2F32(x280, x281, Main.Succ(Main.Succ(x282)), x283) -> new_pr2F0G11(x283, x281, Main.Succ(x282), x282) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F32(Main.Succ(x276), x277, Main.Succ(Main.Succ(x278)), new_srRatio0(x277, x279))=new_pr2F32(x280, x281, Main.Succ(Main.Succ(x282)), x283) ==> new_pr2F31(Main.Succ(Main.Succ(x276)), x277, Main.Succ(Main.Succ(x278)), x279)_>=_new_pr2F32(Main.Succ(x276), x277, Main.Succ(Main.Succ(x278)), new_srRatio0(x277, x279))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F31(Main.Succ(Main.Succ(x276)), x277, Main.Succ(Main.Succ(x278)), x279)_>=_new_pr2F32(Main.Succ(x276), x277, Main.Succ(Main.Succ(x278)), new_srRatio0(x277, x279))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 For Pair new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) the following chains were created: 162.74/105.89 *We consider the chain new_pr2F32(x296, x297, Main.Succ(Main.Succ(x298)), x299) -> new_pr2F0G11(x299, x297, Main.Succ(x298), x298), new_pr2F0G11(x300, x301, x302, Main.Zero) -> new_pr2F0G2(x300, new_srRatio(x301), x302) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G11(x299, x297, Main.Succ(x298), x298)=new_pr2F0G11(x300, x301, x302, Main.Zero) ==> new_pr2F32(x296, x297, Main.Succ(Main.Succ(x298)), x299)_>=_new_pr2F0G11(x299, x297, Main.Succ(x298), x298)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F32(x296, x297, Main.Succ(Main.Succ(Main.Zero)), x299)_>=_new_pr2F0G11(x299, x297, Main.Succ(Main.Zero), Main.Zero)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *We consider the chain new_pr2F32(x311, x312, Main.Succ(Main.Succ(x313)), x314) -> new_pr2F0G11(x314, x312, Main.Succ(x313), x313), new_pr2F0G11(x315, x316, x317, Main.Succ(Main.Succ(x318))) -> new_pr2F0G11(x315, x316, x317, x318) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G11(x314, x312, Main.Succ(x313), x313)=new_pr2F0G11(x315, x316, x317, Main.Succ(Main.Succ(x318))) ==> new_pr2F32(x311, x312, Main.Succ(Main.Succ(x313)), x314)_>=_new_pr2F0G11(x314, x312, Main.Succ(x313), x313)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F32(x311, x312, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x318)))), x314)_>=_new_pr2F0G11(x314, x312, Main.Succ(Main.Succ(Main.Succ(x318))), Main.Succ(Main.Succ(x318)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *We consider the chain new_pr2F32(x319, x320, Main.Succ(Main.Succ(x321)), x322) -> new_pr2F0G11(x322, x320, Main.Succ(x321), x321), new_pr2F0G11(x323, x324, x325, Main.Succ(Main.Zero)) -> new_pr2F0(x324, x325, Main.Pos(Main.Succ(Main.Zero)), x323) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G11(x322, x320, Main.Succ(x321), x321)=new_pr2F0G11(x323, x324, x325, Main.Succ(Main.Zero)) ==> new_pr2F32(x319, x320, Main.Succ(Main.Succ(x321)), x322)_>=_new_pr2F0G11(x322, x320, Main.Succ(x321), x321)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F32(x319, x320, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), x322)_>=_new_pr2F0G11(x322, x320, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 For Pair new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) the following chains were created: 162.74/105.89 *We consider the chain new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x364, Main.Succ(Main.Succ(Main.Zero)), x365) -> new_pr2F32(Main.Succ(Main.Zero), x364, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x364, x365)), new_pr2F32(x366, x367, Main.Succ(Main.Succ(x368)), x369) -> new_pr2F0G11(x369, x367, Main.Succ(x368), x368) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F32(Main.Succ(Main.Zero), x364, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x364, x365))=new_pr2F32(x366, x367, Main.Succ(Main.Succ(x368)), x369) ==> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x364, Main.Succ(Main.Succ(Main.Zero)), x365)_>=_new_pr2F32(Main.Succ(Main.Zero), x364, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x364, x365))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x364, Main.Succ(Main.Succ(Main.Zero)), x365)_>=_new_pr2F32(Main.Succ(Main.Zero), x364, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x364, x365))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 For Pair new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) the following chains were created: 162.74/105.89 *We consider the chain new_pr2F0(x388, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x389) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x388, Main.Succ(Main.Succ(Main.Zero)), x389), new_pr2F31(Main.Succ(Main.Succ(x390)), x391, Main.Succ(Main.Succ(x392)), x393) -> new_pr2F32(Main.Succ(x390), x391, Main.Succ(Main.Succ(x392)), new_srRatio0(x391, x393)) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x388, Main.Succ(Main.Succ(Main.Zero)), x389)=new_pr2F31(Main.Succ(Main.Succ(x390)), x391, Main.Succ(Main.Succ(x392)), x393) ==> new_pr2F0(x388, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x389)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x388, Main.Succ(Main.Succ(Main.Zero)), x389)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F0(x388, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x389)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x388, Main.Succ(Main.Succ(Main.Zero)), x389)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *We consider the chain new_pr2F0(x396, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x397) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x396, Main.Succ(Main.Succ(Main.Zero)), x397), new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x398, Main.Succ(Main.Succ(Main.Zero)), x399) -> new_pr2F32(Main.Succ(Main.Zero), x398, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x398, x399)) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x396, Main.Succ(Main.Succ(Main.Zero)), x397)=new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x398, Main.Succ(Main.Succ(Main.Zero)), x399) ==> new_pr2F0(x396, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x397)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x396, Main.Succ(Main.Succ(Main.Zero)), x397)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F0(x396, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x397)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x396, Main.Succ(Main.Succ(Main.Zero)), x397)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 For Pair new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) the following chains were created: 162.74/105.89 *We consider the chain new_pr2F0G12(x414, x415, Main.Succ(Main.Zero)) -> new_pr2F0(x415, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x414), new_pr2F0(x416, x417, Main.Pos(Main.Succ(Main.Zero)), x418) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x417, Main.Zero))), x416, Main.Succ(Main.Succ(new_primPlusNat0(x417, Main.Zero))), x418) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0(x415, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x414)=new_pr2F0(x416, x417, Main.Pos(Main.Succ(Main.Zero)), x418) ==> new_pr2F0G12(x414, x415, Main.Succ(Main.Zero))_>=_new_pr2F0(x415, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x414)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F0G12(x414, x415, Main.Succ(Main.Zero))_>=_new_pr2F0(x415, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x414)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *We consider the chain new_pr2F0G12(x425, x426, Main.Succ(Main.Zero)) -> new_pr2F0(x426, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x425), new_pr2F0(x427, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x428) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x427, Main.Succ(Main.Succ(Main.Zero)), x428) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0(x426, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x425)=new_pr2F0(x427, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x428) ==> new_pr2F0G12(x425, x426, Main.Succ(Main.Zero))_>=_new_pr2F0(x426, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x425)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F0G12(x425, x426, Main.Succ(Main.Zero))_>=_new_pr2F0(x426, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x425)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 To summarize, we get the following constraints P__>=_ for the following pairs. 162.74/105.89 162.74/105.89 *new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.89 162.74/105.89 *(new_pr2F0G11(x3, x4, x5, Main.Zero)_>=_new_pr2F0G2(x3, new_srRatio(x4), x5)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.89 162.74/105.89 *(new_pr2F0G2(x42, x43, Main.Succ(Main.Succ(x435)))_>=_new_pr2F0G12(x42, x43, new_primDivNatS2(Main.Succ(Main.Succ(x435))))) 162.74/105.89 162.74/105.89 162.74/105.89 *(new_pr2F0G2(x42, x43, Main.Succ(Main.Zero))_>=_new_pr2F0G12(x42, x43, new_primDivNatS2(Main.Succ(Main.Zero)))) 162.74/105.89 162.74/105.89 162.74/105.89 *(new_pr2F0G2(x69, x70, Main.Succ(Main.Succ(x456)))_>=_new_pr2F0G12(x69, x70, new_primDivNatS2(Main.Succ(Main.Succ(x456))))) 162.74/105.89 162.74/105.89 162.74/105.89 *(new_pr2F0G2(x69, x70, Main.Succ(Main.Zero))_>=_new_pr2F0G12(x69, x70, new_primDivNatS2(Main.Succ(Main.Zero)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.89 162.74/105.89 *(new_pr2F0G12(x74, x75, Main.Succ(Main.Succ(Main.Zero)))_>=_new_pr2F0G11(x74, x75, Main.Succ(Main.Zero), Main.Zero)) 162.74/105.89 162.74/105.89 162.74/105.89 *(new_pr2F0G12(x86, x87, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x92)))))_>=_new_pr2F0G11(x86, x87, Main.Succ(Main.Succ(Main.Succ(x92))), Main.Succ(Main.Succ(x92)))) 162.74/105.89 162.74/105.89 162.74/105.89 *(new_pr2F0G12(x93, x94, Main.Succ(Main.Succ(Main.Succ(Main.Zero))))_>=_new_pr2F0G11(x93, x94, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.89 162.74/105.89 *(new_pr2F0G11(x117, x118, x119, Main.Succ(Main.Succ(Main.Zero)))_>=_new_pr2F0G11(x117, x118, x119, Main.Zero)) 162.74/105.89 162.74/105.89 162.74/105.89 *(new_pr2F0G11(x132, x133, x134, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x139)))))_>=_new_pr2F0G11(x132, x133, x134, Main.Succ(Main.Succ(x139)))) 162.74/105.89 162.74/105.89 162.74/105.89 *(new_pr2F0G11(x140, x141, x142, Main.Succ(Main.Succ(Main.Succ(Main.Zero))))_>=_new_pr2F0G11(x140, x141, x142, Main.Succ(Main.Zero))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.89 162.74/105.89 *(new_pr2F0G11(x186, x187, x188, Main.Succ(Main.Zero))_>=_new_pr2F0(x187, x188, Main.Pos(Main.Succ(Main.Zero)), x186)) 162.74/105.89 162.74/105.89 162.74/105.89 *(new_pr2F0G11(x201, x202, Main.Zero, Main.Succ(Main.Zero))_>=_new_pr2F0(x202, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x201)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.89 162.74/105.89 *(new_pr2F0(x227, x228, Main.Pos(Main.Succ(Main.Zero)), x229)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x228, Main.Zero))), x227, Main.Succ(Main.Succ(new_primPlusNat0(x228, Main.Zero))), x229)) 162.74/105.89 162.74/105.89 162.74/105.89 *(new_pr2F0(x237, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x239)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x237, Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x239)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.89 162.74/105.89 *(new_pr2F31(Main.Succ(Main.Succ(x276)), x277, Main.Succ(Main.Succ(x278)), x279)_>=_new_pr2F32(Main.Succ(x276), x277, Main.Succ(Main.Succ(x278)), new_srRatio0(x277, x279))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.89 162.74/105.89 *(new_pr2F32(x296, x297, Main.Succ(Main.Succ(Main.Zero)), x299)_>=_new_pr2F0G11(x299, x297, Main.Succ(Main.Zero), Main.Zero)) 162.74/105.89 162.74/105.89 162.74/105.89 *(new_pr2F32(x311, x312, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x318)))), x314)_>=_new_pr2F0G11(x314, x312, Main.Succ(Main.Succ(Main.Succ(x318))), Main.Succ(Main.Succ(x318)))) 162.74/105.89 162.74/105.89 162.74/105.89 *(new_pr2F32(x319, x320, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), x322)_>=_new_pr2F0G11(x322, x320, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.89 162.74/105.89 *(new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x364, Main.Succ(Main.Succ(Main.Zero)), x365)_>=_new_pr2F32(Main.Succ(Main.Zero), x364, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x364, x365))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.89 162.74/105.89 *(new_pr2F0(x388, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x389)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x388, Main.Succ(Main.Succ(Main.Zero)), x389)) 162.74/105.89 162.74/105.89 162.74/105.89 *(new_pr2F0(x396, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x397)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x396, Main.Succ(Main.Succ(Main.Zero)), x397)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.89 162.74/105.89 *(new_pr2F0G12(x414, x415, Main.Succ(Main.Zero))_>=_new_pr2F0(x415, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x414)) 162.74/105.89 162.74/105.89 162.74/105.89 *(new_pr2F0G12(x425, x426, Main.Succ(Main.Zero))_>=_new_pr2F0(x426, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x425)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 The constraints for P_> respective P_bound are constructed from P__>=_ where we just replace every occurence of "t _>=_ s" in P__>=_ by "t > s" respective "t _>=_ c". Here c stands for the fresh constant used for P_bound. 162.74/105.89 ---------------------------------------- 162.74/105.89 162.74/105.89 (594) 162.74/105.89 Obligation: 162.74/105.89 Q DP problem: 162.74/105.89 The TRS P consists of the following rules: 162.74/105.89 162.74/105.89 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.89 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.89 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.89 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.74/105.89 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.89 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.89 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.89 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.89 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.89 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.89 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.89 162.74/105.89 The TRS R consists of the following rules: 162.74/105.89 162.74/105.89 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.89 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.89 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.89 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.89 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.89 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.89 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.89 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.89 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.89 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.89 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.89 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.89 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.89 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.89 new_error0 -> Prelude.error([]) 162.74/105.89 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.89 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.89 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.89 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.89 new_error -> Prelude.error([]) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.89 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.89 new_primMinusNatS2 -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.89 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.89 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.89 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.89 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.89 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.89 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.89 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.89 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.89 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.89 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.89 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.89 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.89 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.89 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.89 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.89 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.89 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.89 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.89 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.89 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.89 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.89 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.89 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.89 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.89 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.89 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.89 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.89 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.89 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.89 162.74/105.89 The set Q consists of the following terms: 162.74/105.89 162.74/105.89 new_reduce2D1(x0, x1) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.89 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.89 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.89 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.89 new_primModNatS02(x0, x1) 162.74/105.89 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.89 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.89 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.89 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.89 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.89 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.89 new_absReal1(x0) 162.74/105.89 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.89 new_gcd22(Main.Zero, Main.Zero) 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.89 new_error0 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.89 new_gcd22(Main.Succ(x0), x1) 162.74/105.89 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.89 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.89 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.89 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.89 new_primDivNatS02(x0, x1) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.89 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.89 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.89 new_error 162.74/105.89 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.89 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.89 new_primModNatS1(Main.Zero, x0) 162.74/105.89 new_primRemInt(Main.Neg(x0), x1) 162.74/105.89 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.89 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.89 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.89 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.89 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.89 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.89 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.89 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.89 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.89 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.89 new_primDivNatS3(Main.Zero, x0) 162.74/105.89 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.89 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_absMyInt(Main.Zero) 162.74/105.89 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.89 new_absMyInt(Main.Succ(x0)) 162.74/105.89 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.89 new_gcd2(Main.Succ(x0), x1) 162.74/105.89 new_absMyInt0(Main.Zero) 162.74/105.89 new_primMulNat1(Main.Zero) 162.74/105.89 new_absReal10 162.74/105.89 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.89 new_gcd0(x0, x1) 162.74/105.89 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.89 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.89 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.89 new_gcd2(Main.Zero, Main.Zero) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.89 new_reduce2D(x0, x1) 162.74/105.89 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.89 new_reduce2D0(x0, x1) 162.74/105.89 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.89 new_primMinusNatS2 162.74/105.89 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.89 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.89 new_primDivNatS2(Main.Succ(x0)) 162.74/105.89 new_primMulNat1(Main.Succ(x0)) 162.74/105.89 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.89 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.89 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.89 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.89 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.89 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.89 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.89 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.89 new_primDivNatS2(Main.Zero) 162.74/105.89 new_gcd21(Main.Succ(x0), x1) 162.74/105.89 new_absMyInt0(Main.Succ(x0)) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.89 new_reduce2D2(x0, x1) 162.74/105.89 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.89 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.89 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.89 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.89 new_primMinusNatS1(x0) 162.74/105.89 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.89 new_primRemInt(Main.Pos(x0), x1) 162.74/105.89 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.89 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.89 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.89 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.89 new_gcd21(Main.Zero, Main.Zero) 162.74/105.89 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.89 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.89 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.89 162.74/105.89 We have to consider all minimal (P,Q,R)-chains. 162.74/105.89 ---------------------------------------- 162.74/105.89 162.74/105.89 (595) QDPPairToRuleProof (EQUIVALENT) 162.74/105.89 The dependency pair new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) was transformed to the following new rules: 162.74/105.89 anew_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.89 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.89 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.89 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.89 162.74/105.89 the following new pairs maintain the fan-in: 162.74/105.89 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.89 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.89 162.74/105.89 the following new pairs maintain the fan-out: 162.74/105.89 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.89 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.89 162.74/105.89 ---------------------------------------- 162.74/105.89 162.74/105.89 (596) 162.74/105.89 Complex Obligation (AND) 162.74/105.89 162.74/105.89 ---------------------------------------- 162.74/105.89 162.74/105.89 (597) 162.74/105.89 Obligation: 162.74/105.89 Q DP problem: 162.74/105.89 The TRS P consists of the following rules: 162.74/105.89 162.74/105.89 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.89 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.89 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.89 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.89 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.89 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.89 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.89 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.89 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.89 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.89 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.89 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.89 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.89 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.89 162.74/105.89 The TRS R consists of the following rules: 162.74/105.89 162.74/105.89 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.89 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.89 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.89 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.89 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.89 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.89 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.89 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.89 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.89 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.89 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.89 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.89 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.89 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.89 new_error0 -> Prelude.error([]) 162.74/105.89 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.89 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.89 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.89 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.89 new_error -> Prelude.error([]) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.89 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.89 new_primMinusNatS2 -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.89 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.89 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.89 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.89 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.89 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.89 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.89 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.89 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.89 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.89 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.89 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.89 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.89 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.89 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.89 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.89 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.89 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.89 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.89 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.89 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.89 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.89 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.89 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.89 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.89 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.89 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.89 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.89 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.89 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.89 anew_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.89 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.89 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.89 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.89 162.74/105.89 The set Q consists of the following terms: 162.74/105.89 162.74/105.89 new_reduce2D1(x0, x1) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.89 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.89 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.89 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.89 new_primModNatS02(x0, x1) 162.74/105.89 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.89 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.89 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.89 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.89 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.89 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.89 new_absReal1(x0) 162.74/105.89 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.89 new_gcd22(Main.Zero, Main.Zero) 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.89 new_error0 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.89 new_gcd22(Main.Succ(x0), x1) 162.74/105.89 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.89 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.89 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.89 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.89 new_primDivNatS02(x0, x1) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.89 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.89 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.89 new_error 162.74/105.89 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.89 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.89 new_primModNatS1(Main.Zero, x0) 162.74/105.89 new_primRemInt(Main.Neg(x0), x1) 162.74/105.89 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.89 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.89 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.89 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.89 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.89 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.89 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.89 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.89 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.89 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.89 new_primDivNatS3(Main.Zero, x0) 162.74/105.89 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.89 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_absMyInt(Main.Zero) 162.74/105.89 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.89 new_absMyInt(Main.Succ(x0)) 162.74/105.89 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.89 new_gcd2(Main.Succ(x0), x1) 162.74/105.89 new_absMyInt0(Main.Zero) 162.74/105.89 new_primMulNat1(Main.Zero) 162.74/105.89 new_absReal10 162.74/105.89 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.89 new_gcd0(x0, x1) 162.74/105.89 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.89 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.89 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.89 new_gcd2(Main.Zero, Main.Zero) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.89 new_reduce2D(x0, x1) 162.74/105.89 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.89 new_reduce2D0(x0, x1) 162.74/105.89 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.89 new_primMinusNatS2 162.74/105.89 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.89 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.89 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.89 new_primDivNatS2(Main.Succ(x0)) 162.74/105.89 new_primMulNat1(Main.Succ(x0)) 162.74/105.89 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.89 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.89 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.89 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.89 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.89 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.89 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.89 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.89 new_primDivNatS2(Main.Zero) 162.74/105.89 new_gcd21(Main.Succ(x0), x1) 162.74/105.89 new_absMyInt0(Main.Succ(x0)) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.89 new_reduce2D2(x0, x1) 162.74/105.89 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.89 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.89 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.89 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.89 new_primMinusNatS1(x0) 162.74/105.89 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.89 new_primRemInt(Main.Pos(x0), x1) 162.74/105.89 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.89 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.89 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.89 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.89 new_gcd21(Main.Zero, Main.Zero) 162.74/105.89 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.89 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.89 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.89 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.89 anew_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.89 new_new_pr2F0G11(Main.Zero) 162.74/105.89 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.89 162.74/105.89 We have to consider all minimal (P,Q,R)-chains. 162.74/105.89 ---------------------------------------- 162.74/105.89 162.74/105.89 (598) MNOCProof (EQUIVALENT) 162.74/105.89 We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set. 162.74/105.89 ---------------------------------------- 162.74/105.89 162.74/105.89 (599) 162.74/105.89 Obligation: 162.74/105.89 Q DP problem: 162.74/105.89 The TRS P consists of the following rules: 162.74/105.89 162.74/105.89 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.89 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.89 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.89 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.89 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.89 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.89 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.89 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.89 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.89 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.89 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.89 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.89 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.89 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.89 162.74/105.89 The TRS R consists of the following rules: 162.74/105.89 162.74/105.89 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.89 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.89 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.89 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.89 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.89 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.89 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.89 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.89 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.89 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.89 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.89 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.89 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.89 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.89 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.89 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.89 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.89 new_error0 -> Prelude.error([]) 162.74/105.89 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.89 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.89 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.89 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.89 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.89 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.89 new_error -> Prelude.error([]) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.89 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.89 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.89 new_primMinusNatS2 -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.89 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.89 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.89 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.89 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.89 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.89 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.89 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.89 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.89 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.89 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.89 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.89 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.89 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.89 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.89 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.89 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.89 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.89 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.89 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.89 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.89 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.89 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.89 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.89 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.89 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.89 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.89 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.89 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.89 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.89 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.89 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.89 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.89 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.89 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.89 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.89 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.89 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.89 anew_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.89 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.89 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.89 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.89 162.74/105.89 Q is empty. 162.74/105.89 We have to consider all (P,Q,R)-chains. 162.74/105.89 ---------------------------------------- 162.74/105.89 162.74/105.89 (600) InductionCalculusProof (EQUIVALENT) 162.74/105.89 Note that final constraints are written in bold face. 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 For Pair new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) the following chains were created: 162.74/105.89 *We consider the chain new_pr2F0G11(x3, x4, x5, Main.Zero) -> new_pr2F0G2(x3, new_srRatio(x4), x5), new_pr2F0G2(x6, x7, x8) -> new_pr2F0G12(x6, x7, new_primDivNatS2(x8)) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G2(x3, new_srRatio(x4), x5)=new_pr2F0G2(x6, x7, x8) ==> new_pr2F0G11(x3, x4, x5, Main.Zero)_>=_new_pr2F0G2(x3, new_srRatio(x4), x5)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F0G11(x3, x4, x5, Main.Zero)_>=_new_pr2F0G2(x3, new_srRatio(x4), x5)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 For Pair new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) the following chains were created: 162.74/105.89 *We consider the chain new_pr2F0G2(x51, x52, x53) -> new_pr2F0G12(x51, x52, new_primDivNatS2(x53)), new_pr2F0G12(x54, x55, Main.Succ(Main.Succ(x56))) -> new_pr2F0G11(x54, x55, Main.Succ(x56), x56) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G12(x51, x52, new_primDivNatS2(x53))=new_pr2F0G12(x54, x55, Main.Succ(Main.Succ(x56))) ==> new_pr2F0G2(x51, x52, x53)_>=_new_pr2F0G12(x51, x52, new_primDivNatS2(x53))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_primDivNatS2(x53)=Main.Succ(Main.Succ(x56)) ==> new_pr2F0G2(x51, x52, x53)_>=_new_pr2F0G12(x51, x52, new_primDivNatS2(x53))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS2(x53)=Main.Succ(Main.Succ(x56)) which results in the following new constraint: 162.74/105.89 162.74/105.89 (3) (new_primDivNatS01(x667, Main.Zero, x667, Main.Zero)=Main.Succ(Main.Succ(x56)) ==> new_pr2F0G2(x51, x52, Main.Succ(x667))_>=_new_pr2F0G12(x51, x52, new_primDivNatS2(Main.Succ(x667)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (3) using rule (VII) which results in the following new constraint: 162.74/105.89 162.74/105.89 (4) (Main.Zero=x668 & x667=x669 & Main.Zero=x670 & new_primDivNatS01(x667, x668, x669, x670)=Main.Succ(Main.Succ(x56)) ==> new_pr2F0G2(x51, x52, Main.Succ(x667))_>=_new_pr2F0G12(x51, x52, new_primDivNatS2(Main.Succ(x667)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS01(x667, x668, x669, x670)=Main.Succ(Main.Succ(x56)) which results in the following new constraints: 162.74/105.89 162.74/105.89 (5) (new_primDivNatS02(x673, x672)=Main.Succ(Main.Succ(x56)) & Main.Zero=x672 & x673=Main.Succ(x671) & Main.Zero=Main.Zero ==> new_pr2F0G2(x51, x52, Main.Succ(x673))_>=_new_pr2F0G12(x51, x52, new_primDivNatS2(Main.Succ(x673)))) 162.74/105.89 162.74/105.89 (6) (new_primDivNatS02(x675, x674)=Main.Succ(Main.Succ(x56)) & Main.Zero=x674 & x675=Main.Zero & Main.Zero=Main.Zero ==> new_pr2F0G2(x51, x52, Main.Succ(x675))_>=_new_pr2F0G12(x51, x52, new_primDivNatS2(Main.Succ(x675)))) 162.74/105.89 162.74/105.89 (7) (new_primDivNatS01(x682, x681, x680, x679)=Main.Succ(Main.Succ(x56)) & Main.Zero=x681 & x682=Main.Succ(x680) & Main.Zero=Main.Succ(x679) & (\/x683,x684,x685:new_primDivNatS01(x682, x681, x680, x679)=Main.Succ(Main.Succ(x683)) & Main.Zero=x681 & x682=x680 & Main.Zero=x679 ==> new_pr2F0G2(x684, x685, Main.Succ(x682))_>=_new_pr2F0G12(x684, x685, new_primDivNatS2(Main.Succ(x682)))) ==> new_pr2F0G2(x51, x52, Main.Succ(x682))_>=_new_pr2F0G12(x51, x52, new_primDivNatS2(Main.Succ(x682)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (5) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.89 162.74/105.89 (8) (new_pr2F0G2(x51, x52, Main.Succ(Main.Succ(x671)))_>=_new_pr2F0G12(x51, x52, new_primDivNatS2(Main.Succ(Main.Succ(x671))))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (6) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.89 162.74/105.89 (9) (new_pr2F0G2(x51, x52, Main.Succ(Main.Zero))_>=_new_pr2F0G12(x51, x52, new_primDivNatS2(Main.Succ(Main.Zero)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We solved constraint (7) using rules (I), (II). 162.74/105.89 *We consider the chain new_pr2F0G2(x75, x76, x77) -> new_pr2F0G12(x75, x76, new_primDivNatS2(x77)), new_pr2F0G12(x78, x79, Main.Succ(Main.Zero)) -> new_pr2F0(x79, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x78) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G12(x75, x76, new_primDivNatS2(x77))=new_pr2F0G12(x78, x79, Main.Succ(Main.Zero)) ==> new_pr2F0G2(x75, x76, x77)_>=_new_pr2F0G12(x75, x76, new_primDivNatS2(x77))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_primDivNatS2(x77)=Main.Succ(Main.Zero) ==> new_pr2F0G2(x75, x76, x77)_>=_new_pr2F0G12(x75, x76, new_primDivNatS2(x77))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS2(x77)=Main.Succ(Main.Zero) which results in the following new constraint: 162.74/105.89 162.74/105.89 (3) (new_primDivNatS01(x688, Main.Zero, x688, Main.Zero)=Main.Succ(Main.Zero) ==> new_pr2F0G2(x75, x76, Main.Succ(x688))_>=_new_pr2F0G12(x75, x76, new_primDivNatS2(Main.Succ(x688)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (3) using rule (VII) which results in the following new constraint: 162.74/105.89 162.74/105.89 (4) (Main.Zero=x689 & x688=x690 & Main.Zero=x691 & new_primDivNatS01(x688, x689, x690, x691)=Main.Succ(Main.Zero) ==> new_pr2F0G2(x75, x76, Main.Succ(x688))_>=_new_pr2F0G12(x75, x76, new_primDivNatS2(Main.Succ(x688)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS01(x688, x689, x690, x691)=Main.Succ(Main.Zero) which results in the following new constraints: 162.74/105.89 162.74/105.89 (5) (new_primDivNatS02(x694, x693)=Main.Succ(Main.Zero) & Main.Zero=x693 & x694=Main.Succ(x692) & Main.Zero=Main.Zero ==> new_pr2F0G2(x75, x76, Main.Succ(x694))_>=_new_pr2F0G12(x75, x76, new_primDivNatS2(Main.Succ(x694)))) 162.74/105.89 162.74/105.89 (6) (new_primDivNatS02(x696, x695)=Main.Succ(Main.Zero) & Main.Zero=x695 & x696=Main.Zero & Main.Zero=Main.Zero ==> new_pr2F0G2(x75, x76, Main.Succ(x696))_>=_new_pr2F0G12(x75, x76, new_primDivNatS2(Main.Succ(x696)))) 162.74/105.89 162.74/105.89 (7) (new_primDivNatS01(x703, x702, x701, x700)=Main.Succ(Main.Zero) & Main.Zero=x702 & x703=Main.Succ(x701) & Main.Zero=Main.Succ(x700) & (\/x704,x705:new_primDivNatS01(x703, x702, x701, x700)=Main.Succ(Main.Zero) & Main.Zero=x702 & x703=x701 & Main.Zero=x700 ==> new_pr2F0G2(x704, x705, Main.Succ(x703))_>=_new_pr2F0G12(x704, x705, new_primDivNatS2(Main.Succ(x703)))) ==> new_pr2F0G2(x75, x76, Main.Succ(x703))_>=_new_pr2F0G12(x75, x76, new_primDivNatS2(Main.Succ(x703)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (5) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.89 162.74/105.89 (8) (new_pr2F0G2(x75, x76, Main.Succ(Main.Succ(x692)))_>=_new_pr2F0G12(x75, x76, new_primDivNatS2(Main.Succ(Main.Succ(x692))))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (6) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.89 162.74/105.89 (9) (new_pr2F0G2(x75, x76, Main.Succ(Main.Zero))_>=_new_pr2F0G12(x75, x76, new_primDivNatS2(Main.Succ(Main.Zero)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We solved constraint (7) using rules (I), (II). 162.74/105.89 *We consider the chain new_pr2F0G2(x80, x81, x82) -> new_pr2F0G12(x80, x81, new_primDivNatS2(x82)), new_pr2F0G12(x83, x84, Main.Succ(Main.Succ(x85))) -> H(x83, x84, Main.Succ(x85), anew_new_pr2F0G11(x85)) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G12(x80, x81, new_primDivNatS2(x82))=new_pr2F0G12(x83, x84, Main.Succ(Main.Succ(x85))) ==> new_pr2F0G2(x80, x81, x82)_>=_new_pr2F0G12(x80, x81, new_primDivNatS2(x82))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_primDivNatS2(x82)=Main.Succ(Main.Succ(x85)) ==> new_pr2F0G2(x80, x81, x82)_>=_new_pr2F0G12(x80, x81, new_primDivNatS2(x82))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS2(x82)=Main.Succ(Main.Succ(x85)) which results in the following new constraint: 162.74/105.89 162.74/105.89 (3) (new_primDivNatS01(x708, Main.Zero, x708, Main.Zero)=Main.Succ(Main.Succ(x85)) ==> new_pr2F0G2(x80, x81, Main.Succ(x708))_>=_new_pr2F0G12(x80, x81, new_primDivNatS2(Main.Succ(x708)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (3) using rule (VII) which results in the following new constraint: 162.74/105.89 162.74/105.89 (4) (Main.Zero=x709 & x708=x710 & Main.Zero=x711 & new_primDivNatS01(x708, x709, x710, x711)=Main.Succ(Main.Succ(x85)) ==> new_pr2F0G2(x80, x81, Main.Succ(x708))_>=_new_pr2F0G12(x80, x81, new_primDivNatS2(Main.Succ(x708)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS01(x708, x709, x710, x711)=Main.Succ(Main.Succ(x85)) which results in the following new constraints: 162.74/105.89 162.74/105.89 (5) (new_primDivNatS02(x714, x713)=Main.Succ(Main.Succ(x85)) & Main.Zero=x713 & x714=Main.Succ(x712) & Main.Zero=Main.Zero ==> new_pr2F0G2(x80, x81, Main.Succ(x714))_>=_new_pr2F0G12(x80, x81, new_primDivNatS2(Main.Succ(x714)))) 162.74/105.89 162.74/105.89 (6) (new_primDivNatS02(x716, x715)=Main.Succ(Main.Succ(x85)) & Main.Zero=x715 & x716=Main.Zero & Main.Zero=Main.Zero ==> new_pr2F0G2(x80, x81, Main.Succ(x716))_>=_new_pr2F0G12(x80, x81, new_primDivNatS2(Main.Succ(x716)))) 162.74/105.89 162.74/105.89 (7) (new_primDivNatS01(x723, x722, x721, x720)=Main.Succ(Main.Succ(x85)) & Main.Zero=x722 & x723=Main.Succ(x721) & Main.Zero=Main.Succ(x720) & (\/x724,x725,x726:new_primDivNatS01(x723, x722, x721, x720)=Main.Succ(Main.Succ(x724)) & Main.Zero=x722 & x723=x721 & Main.Zero=x720 ==> new_pr2F0G2(x725, x726, Main.Succ(x723))_>=_new_pr2F0G12(x725, x726, new_primDivNatS2(Main.Succ(x723)))) ==> new_pr2F0G2(x80, x81, Main.Succ(x723))_>=_new_pr2F0G12(x80, x81, new_primDivNatS2(Main.Succ(x723)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (5) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.89 162.74/105.89 (8) (new_pr2F0G2(x80, x81, Main.Succ(Main.Succ(x712)))_>=_new_pr2F0G12(x80, x81, new_primDivNatS2(Main.Succ(Main.Succ(x712))))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (6) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.89 162.74/105.89 (9) (new_pr2F0G2(x80, x81, Main.Succ(Main.Zero))_>=_new_pr2F0G12(x80, x81, new_primDivNatS2(Main.Succ(Main.Zero)))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We solved constraint (7) using rules (I), (II). 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 For Pair new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) the following chains were created: 162.74/105.89 *We consider the chain new_pr2F0G12(x95, x96, Main.Succ(Main.Succ(x97))) -> new_pr2F0G11(x95, x96, Main.Succ(x97), x97), new_pr2F0G11(x98, x99, x100, Main.Zero) -> new_pr2F0G2(x98, new_srRatio(x99), x100) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G11(x95, x96, Main.Succ(x97), x97)=new_pr2F0G11(x98, x99, x100, Main.Zero) ==> new_pr2F0G12(x95, x96, Main.Succ(Main.Succ(x97)))_>=_new_pr2F0G11(x95, x96, Main.Succ(x97), x97)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F0G12(x95, x96, Main.Succ(Main.Succ(Main.Zero)))_>=_new_pr2F0G11(x95, x96, Main.Succ(Main.Zero), Main.Zero)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 *We consider the chain new_pr2F0G12(x107, x108, Main.Succ(Main.Succ(x109))) -> new_pr2F0G11(x107, x108, Main.Succ(x109), x109), new_pr2F0G11(x110, x111, x112, Main.Succ(Main.Zero)) -> new_pr2F0(x111, x112, Main.Pos(Main.Succ(Main.Zero)), x110) which results in the following constraint: 162.74/105.89 162.74/105.89 (1) (new_pr2F0G11(x107, x108, Main.Succ(x109), x109)=new_pr2F0G11(x110, x111, x112, Main.Succ(Main.Zero)) ==> new_pr2F0G12(x107, x108, Main.Succ(Main.Succ(x109)))_>=_new_pr2F0G11(x107, x108, Main.Succ(x109), x109)) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.89 162.74/105.89 (2) (new_pr2F0G12(x107, x108, Main.Succ(Main.Succ(Main.Succ(Main.Zero))))_>=_new_pr2F0G11(x107, x108, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero))) 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 162.74/105.89 For Pair new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) the following chains were created: 162.74/105.89 *We consider the chain new_pr2F0G11(x155, x156, x157, Main.Succ(Main.Zero)) -> new_pr2F0(x156, x157, Main.Pos(Main.Succ(Main.Zero)), x155), new_pr2F0(x158, x159, Main.Pos(Main.Succ(Main.Zero)), x160) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x159, Main.Zero))), x158, Main.Succ(Main.Succ(new_primPlusNat0(x159, Main.Zero))), x160) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (new_pr2F0(x156, x157, Main.Pos(Main.Succ(Main.Zero)), x155)=new_pr2F0(x158, x159, Main.Pos(Main.Succ(Main.Zero)), x160) ==> new_pr2F0G11(x155, x156, x157, Main.Succ(Main.Zero))_>=_new_pr2F0(x156, x157, Main.Pos(Main.Succ(Main.Zero)), x155)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (new_pr2F0G11(x155, x156, x157, Main.Succ(Main.Zero))_>=_new_pr2F0(x156, x157, Main.Pos(Main.Succ(Main.Zero)), x155)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *We consider the chain new_pr2F0G11(x170, x171, x172, Main.Succ(Main.Zero)) -> new_pr2F0(x171, x172, Main.Pos(Main.Succ(Main.Zero)), x170), new_pr2F0(x173, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x174) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x173, Main.Succ(Main.Succ(Main.Zero)), x174) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (new_pr2F0(x171, x172, Main.Pos(Main.Succ(Main.Zero)), x170)=new_pr2F0(x173, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x174) ==> new_pr2F0G11(x170, x171, x172, Main.Succ(Main.Zero))_>=_new_pr2F0(x171, x172, Main.Pos(Main.Succ(Main.Zero)), x170)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (new_pr2F0G11(x170, x171, Main.Zero, Main.Succ(Main.Zero))_>=_new_pr2F0(x171, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x170)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 For Pair new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) the following chains were created: 162.74/105.90 *We consider the chain new_pr2F0(x205, x206, Main.Pos(Main.Succ(Main.Zero)), x207) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x206, Main.Zero))), x205, Main.Succ(Main.Succ(new_primPlusNat0(x206, Main.Zero))), x207), new_pr2F31(Main.Succ(Main.Succ(x208)), x209, Main.Succ(Main.Succ(x210)), x211) -> new_pr2F32(Main.Succ(x208), x209, Main.Succ(Main.Succ(x210)), new_srRatio0(x209, x211)) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x206, Main.Zero))), x205, Main.Succ(Main.Succ(new_primPlusNat0(x206, Main.Zero))), x207)=new_pr2F31(Main.Succ(Main.Succ(x208)), x209, Main.Succ(Main.Succ(x210)), x211) ==> new_pr2F0(x205, x206, Main.Pos(Main.Succ(Main.Zero)), x207)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x206, Main.Zero))), x205, Main.Succ(Main.Succ(new_primPlusNat0(x206, Main.Zero))), x207)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (new_pr2F0(x205, x206, Main.Pos(Main.Succ(Main.Zero)), x207)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x206, Main.Zero))), x205, Main.Succ(Main.Succ(new_primPlusNat0(x206, Main.Zero))), x207)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *We consider the chain new_pr2F0(x215, x216, Main.Pos(Main.Succ(Main.Zero)), x217) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x216, Main.Zero))), x215, Main.Succ(Main.Succ(new_primPlusNat0(x216, Main.Zero))), x217), new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x218, Main.Succ(Main.Succ(Main.Zero)), x219) -> new_pr2F32(Main.Succ(Main.Zero), x218, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x218, x219)) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x216, Main.Zero))), x215, Main.Succ(Main.Succ(new_primPlusNat0(x216, Main.Zero))), x217)=new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x218, Main.Succ(Main.Succ(Main.Zero)), x219) ==> new_pr2F0(x215, x216, Main.Pos(Main.Succ(Main.Zero)), x217)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x216, Main.Zero))), x215, Main.Succ(Main.Succ(new_primPlusNat0(x216, Main.Zero))), x217)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (Main.Zero=x729 & new_primPlusNat0(x216, x729)=Main.Zero ==> new_pr2F0(x215, x216, Main.Pos(Main.Succ(Main.Zero)), x217)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x216, Main.Zero))), x215, Main.Succ(Main.Succ(new_primPlusNat0(x216, Main.Zero))), x217)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primPlusNat0(x216, x729)=Main.Zero which results in the following new constraint: 162.74/105.90 162.74/105.90 (3) (Main.Zero=Main.Zero ==> new_pr2F0(x215, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x217)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x215, Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x217)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (3) using rules (I), (II) which results in the following new constraint: 162.74/105.90 162.74/105.90 (4) (new_pr2F0(x215, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x217)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x215, Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x217)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 For Pair new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) the following chains were created: 162.74/105.90 *We consider the chain new_pr2F31(Main.Succ(Main.Succ(x262)), x263, Main.Succ(Main.Succ(x264)), x265) -> new_pr2F32(Main.Succ(x262), x263, Main.Succ(Main.Succ(x264)), new_srRatio0(x263, x265)), new_pr2F32(x266, x267, Main.Succ(Main.Succ(x268)), x269) -> new_pr2F0G11(x269, x267, Main.Succ(x268), x268) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (new_pr2F32(Main.Succ(x262), x263, Main.Succ(Main.Succ(x264)), new_srRatio0(x263, x265))=new_pr2F32(x266, x267, Main.Succ(Main.Succ(x268)), x269) ==> new_pr2F31(Main.Succ(Main.Succ(x262)), x263, Main.Succ(Main.Succ(x264)), x265)_>=_new_pr2F32(Main.Succ(x262), x263, Main.Succ(Main.Succ(x264)), new_srRatio0(x263, x265))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (new_pr2F31(Main.Succ(Main.Succ(x262)), x263, Main.Succ(Main.Succ(x264)), x265)_>=_new_pr2F32(Main.Succ(x262), x263, Main.Succ(Main.Succ(x264)), new_srRatio0(x263, x265))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *We consider the chain new_pr2F31(Main.Succ(Main.Succ(x286)), x287, Main.Succ(Main.Succ(x288)), x289) -> new_pr2F32(Main.Succ(x286), x287, Main.Succ(Main.Succ(x288)), new_srRatio0(x287, x289)), new_pr2F32(x290, x291, Main.Succ(Main.Succ(x292)), x293) -> H(x293, x291, Main.Succ(x292), anew_new_pr2F0G11(x292)) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (new_pr2F32(Main.Succ(x286), x287, Main.Succ(Main.Succ(x288)), new_srRatio0(x287, x289))=new_pr2F32(x290, x291, Main.Succ(Main.Succ(x292)), x293) ==> new_pr2F31(Main.Succ(Main.Succ(x286)), x287, Main.Succ(Main.Succ(x288)), x289)_>=_new_pr2F32(Main.Succ(x286), x287, Main.Succ(Main.Succ(x288)), new_srRatio0(x287, x289))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (new_pr2F31(Main.Succ(Main.Succ(x286)), x287, Main.Succ(Main.Succ(x288)), x289)_>=_new_pr2F32(Main.Succ(x286), x287, Main.Succ(Main.Succ(x288)), new_srRatio0(x287, x289))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 For Pair new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) the following chains were created: 162.74/105.90 *We consider the chain new_pr2F32(x302, x303, Main.Succ(Main.Succ(x304)), x305) -> new_pr2F0G11(x305, x303, Main.Succ(x304), x304), new_pr2F0G11(x306, x307, x308, Main.Zero) -> new_pr2F0G2(x306, new_srRatio(x307), x308) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (new_pr2F0G11(x305, x303, Main.Succ(x304), x304)=new_pr2F0G11(x306, x307, x308, Main.Zero) ==> new_pr2F32(x302, x303, Main.Succ(Main.Succ(x304)), x305)_>=_new_pr2F0G11(x305, x303, Main.Succ(x304), x304)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (new_pr2F32(x302, x303, Main.Succ(Main.Succ(Main.Zero)), x305)_>=_new_pr2F0G11(x305, x303, Main.Succ(Main.Zero), Main.Zero)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *We consider the chain new_pr2F32(x317, x318, Main.Succ(Main.Succ(x319)), x320) -> new_pr2F0G11(x320, x318, Main.Succ(x319), x319), new_pr2F0G11(x321, x322, x323, Main.Succ(Main.Zero)) -> new_pr2F0(x322, x323, Main.Pos(Main.Succ(Main.Zero)), x321) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (new_pr2F0G11(x320, x318, Main.Succ(x319), x319)=new_pr2F0G11(x321, x322, x323, Main.Succ(Main.Zero)) ==> new_pr2F32(x317, x318, Main.Succ(Main.Succ(x319)), x320)_>=_new_pr2F0G11(x320, x318, Main.Succ(x319), x319)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (new_pr2F32(x317, x318, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), x320)_>=_new_pr2F0G11(x320, x318, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 For Pair new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) the following chains were created: 162.74/105.90 *We consider the chain new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x376, Main.Succ(Main.Succ(Main.Zero)), x377) -> new_pr2F32(Main.Succ(Main.Zero), x376, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x376, x377)), new_pr2F32(x378, x379, Main.Succ(Main.Succ(x380)), x381) -> new_pr2F0G11(x381, x379, Main.Succ(x380), x380) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (new_pr2F32(Main.Succ(Main.Zero), x376, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x376, x377))=new_pr2F32(x378, x379, Main.Succ(Main.Succ(x380)), x381) ==> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x376, Main.Succ(Main.Succ(Main.Zero)), x377)_>=_new_pr2F32(Main.Succ(Main.Zero), x376, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x376, x377))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x376, Main.Succ(Main.Succ(Main.Zero)), x377)_>=_new_pr2F32(Main.Succ(Main.Zero), x376, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x376, x377))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *We consider the chain new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x390, Main.Succ(Main.Succ(Main.Zero)), x391) -> new_pr2F32(Main.Succ(Main.Zero), x390, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x390, x391)), new_pr2F32(x392, x393, Main.Succ(Main.Succ(x394)), x395) -> H(x395, x393, Main.Succ(x394), anew_new_pr2F0G11(x394)) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (new_pr2F32(Main.Succ(Main.Zero), x390, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x390, x391))=new_pr2F32(x392, x393, Main.Succ(Main.Succ(x394)), x395) ==> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x390, Main.Succ(Main.Succ(Main.Zero)), x391)_>=_new_pr2F32(Main.Succ(Main.Zero), x390, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x390, x391))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x390, Main.Succ(Main.Succ(Main.Zero)), x391)_>=_new_pr2F32(Main.Succ(Main.Zero), x390, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x390, x391))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 For Pair new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) the following chains were created: 162.74/105.90 *We consider the chain new_pr2F0(x410, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x411) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x410, Main.Succ(Main.Succ(Main.Zero)), x411), new_pr2F31(Main.Succ(Main.Succ(x412)), x413, Main.Succ(Main.Succ(x414)), x415) -> new_pr2F32(Main.Succ(x412), x413, Main.Succ(Main.Succ(x414)), new_srRatio0(x413, x415)) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x410, Main.Succ(Main.Succ(Main.Zero)), x411)=new_pr2F31(Main.Succ(Main.Succ(x412)), x413, Main.Succ(Main.Succ(x414)), x415) ==> new_pr2F0(x410, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x411)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x410, Main.Succ(Main.Succ(Main.Zero)), x411)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (new_pr2F0(x410, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x411)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x410, Main.Succ(Main.Succ(Main.Zero)), x411)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *We consider the chain new_pr2F0(x418, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x419) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x418, Main.Succ(Main.Succ(Main.Zero)), x419), new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x420, Main.Succ(Main.Succ(Main.Zero)), x421) -> new_pr2F32(Main.Succ(Main.Zero), x420, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x420, x421)) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x418, Main.Succ(Main.Succ(Main.Zero)), x419)=new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x420, Main.Succ(Main.Succ(Main.Zero)), x421) ==> new_pr2F0(x418, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x419)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x418, Main.Succ(Main.Succ(Main.Zero)), x419)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (new_pr2F0(x418, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x419)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x418, Main.Succ(Main.Succ(Main.Zero)), x419)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 For Pair new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) the following chains were created: 162.74/105.90 *We consider the chain new_pr2F0G12(x442, x443, Main.Succ(Main.Zero)) -> new_pr2F0(x443, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x442), new_pr2F0(x444, x445, Main.Pos(Main.Succ(Main.Zero)), x446) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x445, Main.Zero))), x444, Main.Succ(Main.Succ(new_primPlusNat0(x445, Main.Zero))), x446) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (new_pr2F0(x443, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x442)=new_pr2F0(x444, x445, Main.Pos(Main.Succ(Main.Zero)), x446) ==> new_pr2F0G12(x442, x443, Main.Succ(Main.Zero))_>=_new_pr2F0(x443, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x442)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (new_pr2F0G12(x442, x443, Main.Succ(Main.Zero))_>=_new_pr2F0(x443, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x442)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *We consider the chain new_pr2F0G12(x453, x454, Main.Succ(Main.Zero)) -> new_pr2F0(x454, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x453), new_pr2F0(x455, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x456) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x455, Main.Succ(Main.Succ(Main.Zero)), x456) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (new_pr2F0(x454, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x453)=new_pr2F0(x455, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x456) ==> new_pr2F0G12(x453, x454, Main.Succ(Main.Zero))_>=_new_pr2F0(x454, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x453)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (new_pr2F0G12(x453, x454, Main.Succ(Main.Zero))_>=_new_pr2F0(x454, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x453)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 For Pair new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) the following chains were created: 162.74/105.90 *We consider the chain new_pr2F0G12(x503, x504, Main.Succ(Main.Succ(x505))) -> H(x503, x504, Main.Succ(x505), anew_new_pr2F0G11(x505)), H(x506, x507, x508, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(x506, x507, x508, Main.Zero) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (H(x503, x504, Main.Succ(x505), anew_new_pr2F0G11(x505))=H(x506, x507, x508, cons_new_pr2F0G11(Main.Zero)) ==> new_pr2F0G12(x503, x504, Main.Succ(Main.Succ(x505)))_>=_H(x503, x504, Main.Succ(x505), anew_new_pr2F0G11(x505))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (anew_new_pr2F0G11(x505)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F0G12(x503, x504, Main.Succ(Main.Succ(x505)))_>=_H(x503, x504, Main.Succ(x505), anew_new_pr2F0G11(x505))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on anew_new_pr2F0G11(x505)=cons_new_pr2F0G11(Main.Zero) which results in the following new constraint: 162.74/105.90 162.74/105.90 (3) (new_new_pr2F0G11(x734)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F0G12(x503, x504, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x734)))))_>=_H(x503, x504, Main.Succ(Main.Succ(Main.Succ(x734))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x734))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (3) using rule (V) (with possible (I) afterwards) using induction on new_new_pr2F0G11(x734)=cons_new_pr2F0G11(Main.Zero) which results in the following new constraints: 162.74/105.90 162.74/105.90 (4) (new_new_pr2F0G11(x735)=cons_new_pr2F0G11(Main.Zero) & (\/x736,x737:new_new_pr2F0G11(x735)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F0G12(x736, x737, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x735)))))_>=_H(x736, x737, Main.Succ(Main.Succ(Main.Succ(x735))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x735))))) ==> new_pr2F0G12(x503, x504, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x735)))))))_>=_H(x503, x504, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x735))))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x735))))))) 162.74/105.90 162.74/105.90 (5) (cons_new_pr2F0G11(Main.Zero)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F0G12(x503, x504, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))_>=_H(x503, x504, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Zero))))) 162.74/105.90 162.74/105.90 (6) (cons_new_pr2F0G11(Main.Succ(Main.Zero))=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F0G12(x503, x504, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_H(x503, x504, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (4) using rule (VI) where we applied the induction hypothesis (\/x736,x737:new_new_pr2F0G11(x735)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F0G12(x736, x737, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x735)))))_>=_H(x736, x737, Main.Succ(Main.Succ(Main.Succ(x735))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x735))))) with sigma = [x736 / x503, x737 / x504] which results in the following new constraint: 162.74/105.90 162.74/105.90 (7) (new_pr2F0G12(x503, x504, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x735)))))_>=_H(x503, x504, Main.Succ(Main.Succ(Main.Succ(x735))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x735)))) ==> new_pr2F0G12(x503, x504, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x735)))))))_>=_H(x503, x504, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x735))))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x735))))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (5) using rules (I), (II) which results in the following new constraint: 162.74/105.90 162.74/105.90 (8) (new_pr2F0G12(x503, x504, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))_>=_H(x503, x504, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Zero))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We solved constraint (6) using rules (I), (II). 162.74/105.90 *We consider the chain new_pr2F0G12(x509, x510, Main.Succ(Main.Succ(x511))) -> H(x509, x510, Main.Succ(x511), anew_new_pr2F0G11(x511)), H(x512, x513, x514, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(x512, x513, x514, Main.Succ(Main.Zero)) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (H(x509, x510, Main.Succ(x511), anew_new_pr2F0G11(x511))=H(x512, x513, x514, cons_new_pr2F0G11(Main.Succ(Main.Zero))) ==> new_pr2F0G12(x509, x510, Main.Succ(Main.Succ(x511)))_>=_H(x509, x510, Main.Succ(x511), anew_new_pr2F0G11(x511))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (anew_new_pr2F0G11(x511)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F0G12(x509, x510, Main.Succ(Main.Succ(x511)))_>=_H(x509, x510, Main.Succ(x511), anew_new_pr2F0G11(x511))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on anew_new_pr2F0G11(x511)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) which results in the following new constraint: 162.74/105.90 162.74/105.90 (3) (new_new_pr2F0G11(x738)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F0G12(x509, x510, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x738)))))_>=_H(x509, x510, Main.Succ(Main.Succ(Main.Succ(x738))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x738))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (3) using rule (V) (with possible (I) afterwards) using induction on new_new_pr2F0G11(x738)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) which results in the following new constraints: 162.74/105.90 162.74/105.90 (4) (new_new_pr2F0G11(x739)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) & (\/x740,x741:new_new_pr2F0G11(x739)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F0G12(x740, x741, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x739)))))_>=_H(x740, x741, Main.Succ(Main.Succ(Main.Succ(x739))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x739))))) ==> new_pr2F0G12(x509, x510, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x739)))))))_>=_H(x509, x510, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x739))))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x739))))))) 162.74/105.90 162.74/105.90 (5) (cons_new_pr2F0G11(Main.Zero)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F0G12(x509, x510, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))_>=_H(x509, x510, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Zero))))) 162.74/105.90 162.74/105.90 (6) (cons_new_pr2F0G11(Main.Succ(Main.Zero))=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F0G12(x509, x510, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_H(x509, x510, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (4) using rule (VI) where we applied the induction hypothesis (\/x740,x741:new_new_pr2F0G11(x739)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F0G12(x740, x741, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x739)))))_>=_H(x740, x741, Main.Succ(Main.Succ(Main.Succ(x739))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x739))))) with sigma = [x740 / x509, x741 / x510] which results in the following new constraint: 162.74/105.90 162.74/105.90 (7) (new_pr2F0G12(x509, x510, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x739)))))_>=_H(x509, x510, Main.Succ(Main.Succ(Main.Succ(x739))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x739)))) ==> new_pr2F0G12(x509, x510, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x739)))))))_>=_H(x509, x510, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x739))))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x739))))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rules (I), (II) which results in the following new constraint: 162.74/105.90 162.74/105.90 (8) (new_pr2F0G12(x509, x510, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_H(x509, x510, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 For Pair new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) the following chains were created: 162.74/105.90 *We consider the chain new_pr2F32(x563, x564, Main.Succ(Main.Succ(x565)), x566) -> H(x566, x564, Main.Succ(x565), anew_new_pr2F0G11(x565)), H(x567, x568, x569, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(x567, x568, x569, Main.Zero) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (H(x566, x564, Main.Succ(x565), anew_new_pr2F0G11(x565))=H(x567, x568, x569, cons_new_pr2F0G11(Main.Zero)) ==> new_pr2F32(x563, x564, Main.Succ(Main.Succ(x565)), x566)_>=_H(x566, x564, Main.Succ(x565), anew_new_pr2F0G11(x565))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (anew_new_pr2F0G11(x565)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F32(x563, x564, Main.Succ(Main.Succ(x565)), x566)_>=_H(x566, x564, Main.Succ(x565), anew_new_pr2F0G11(x565))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on anew_new_pr2F0G11(x565)=cons_new_pr2F0G11(Main.Zero) which results in the following new constraint: 162.74/105.90 162.74/105.90 (3) (new_new_pr2F0G11(x742)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F32(x563, x564, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x742)))), x566)_>=_H(x566, x564, Main.Succ(Main.Succ(Main.Succ(x742))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x742))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (3) using rule (V) (with possible (I) afterwards) using induction on new_new_pr2F0G11(x742)=cons_new_pr2F0G11(Main.Zero) which results in the following new constraints: 162.74/105.90 162.74/105.90 (4) (new_new_pr2F0G11(x743)=cons_new_pr2F0G11(Main.Zero) & (\/x744,x745,x746:new_new_pr2F0G11(x743)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F32(x744, x745, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x743)))), x746)_>=_H(x746, x745, Main.Succ(Main.Succ(Main.Succ(x743))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x743))))) ==> new_pr2F32(x563, x564, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x743)))))), x566)_>=_H(x566, x564, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x743))))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x743))))))) 162.74/105.90 162.74/105.90 (5) (cons_new_pr2F0G11(Main.Zero)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F32(x563, x564, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), x566)_>=_H(x566, x564, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Zero))))) 162.74/105.90 162.74/105.90 (6) (cons_new_pr2F0G11(Main.Succ(Main.Zero))=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F32(x563, x564, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), x566)_>=_H(x566, x564, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (4) using rule (VI) where we applied the induction hypothesis (\/x744,x745,x746:new_new_pr2F0G11(x743)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F32(x744, x745, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x743)))), x746)_>=_H(x746, x745, Main.Succ(Main.Succ(Main.Succ(x743))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x743))))) with sigma = [x744 / x563, x745 / x564, x746 / x566] which results in the following new constraint: 162.74/105.90 162.74/105.90 (7) (new_pr2F32(x563, x564, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x743)))), x566)_>=_H(x566, x564, Main.Succ(Main.Succ(Main.Succ(x743))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x743)))) ==> new_pr2F32(x563, x564, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x743)))))), x566)_>=_H(x566, x564, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x743))))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x743))))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (5) using rules (I), (II) which results in the following new constraint: 162.74/105.90 162.74/105.90 (8) (new_pr2F32(x563, x564, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), x566)_>=_H(x566, x564, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Zero))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We solved constraint (6) using rules (I), (II). 162.74/105.90 *We consider the chain new_pr2F32(x570, x571, Main.Succ(Main.Succ(x572)), x573) -> H(x573, x571, Main.Succ(x572), anew_new_pr2F0G11(x572)), H(x574, x575, x576, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(x574, x575, x576, Main.Succ(Main.Zero)) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (H(x573, x571, Main.Succ(x572), anew_new_pr2F0G11(x572))=H(x574, x575, x576, cons_new_pr2F0G11(Main.Succ(Main.Zero))) ==> new_pr2F32(x570, x571, Main.Succ(Main.Succ(x572)), x573)_>=_H(x573, x571, Main.Succ(x572), anew_new_pr2F0G11(x572))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (anew_new_pr2F0G11(x572)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F32(x570, x571, Main.Succ(Main.Succ(x572)), x573)_>=_H(x573, x571, Main.Succ(x572), anew_new_pr2F0G11(x572))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on anew_new_pr2F0G11(x572)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) which results in the following new constraint: 162.74/105.90 162.74/105.90 (3) (new_new_pr2F0G11(x747)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F32(x570, x571, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x747)))), x573)_>=_H(x573, x571, Main.Succ(Main.Succ(Main.Succ(x747))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x747))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (3) using rule (V) (with possible (I) afterwards) using induction on new_new_pr2F0G11(x747)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) which results in the following new constraints: 162.74/105.90 162.74/105.90 (4) (new_new_pr2F0G11(x748)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) & (\/x749,x750,x751:new_new_pr2F0G11(x748)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F32(x749, x750, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x748)))), x751)_>=_H(x751, x750, Main.Succ(Main.Succ(Main.Succ(x748))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x748))))) ==> new_pr2F32(x570, x571, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x748)))))), x573)_>=_H(x573, x571, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x748))))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x748))))))) 162.74/105.90 162.74/105.90 (5) (cons_new_pr2F0G11(Main.Zero)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F32(x570, x571, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), x573)_>=_H(x573, x571, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Zero))))) 162.74/105.90 162.74/105.90 (6) (cons_new_pr2F0G11(Main.Succ(Main.Zero))=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F32(x570, x571, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), x573)_>=_H(x573, x571, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (4) using rule (VI) where we applied the induction hypothesis (\/x749,x750,x751:new_new_pr2F0G11(x748)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F32(x749, x750, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x748)))), x751)_>=_H(x751, x750, Main.Succ(Main.Succ(Main.Succ(x748))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x748))))) with sigma = [x749 / x570, x750 / x571, x751 / x573] which results in the following new constraint: 162.74/105.90 162.74/105.90 (7) (new_pr2F32(x570, x571, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x748)))), x573)_>=_H(x573, x571, Main.Succ(Main.Succ(Main.Succ(x748))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x748)))) ==> new_pr2F32(x570, x571, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x748)))))), x573)_>=_H(x573, x571, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x748))))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x748))))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rules (I), (II) which results in the following new constraint: 162.74/105.90 162.74/105.90 (8) (new_pr2F32(x570, x571, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), x573)_>=_H(x573, x571, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 For Pair H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) the following chains were created: 162.74/105.90 *We consider the chain H(x577, x578, x579, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(x577, x578, x579, Main.Zero), new_pr2F0G11(x580, x581, x582, Main.Zero) -> new_pr2F0G2(x580, new_srRatio(x581), x582) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (new_pr2F0G11(x577, x578, x579, Main.Zero)=new_pr2F0G11(x580, x581, x582, Main.Zero) ==> H(x577, x578, x579, cons_new_pr2F0G11(Main.Zero))_>=_new_pr2F0G11(x577, x578, x579, Main.Zero)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (H(x577, x578, x579, cons_new_pr2F0G11(Main.Zero))_>=_new_pr2F0G11(x577, x578, x579, Main.Zero)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 For Pair H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) the following chains were created: 162.74/105.90 *We consider the chain H(x631, x632, x633, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(x631, x632, x633, Main.Succ(Main.Zero)), new_pr2F0G11(x634, x635, x636, Main.Succ(Main.Zero)) -> new_pr2F0(x635, x636, Main.Pos(Main.Succ(Main.Zero)), x634) which results in the following constraint: 162.74/105.90 162.74/105.90 (1) (new_pr2F0G11(x631, x632, x633, Main.Succ(Main.Zero))=new_pr2F0G11(x634, x635, x636, Main.Succ(Main.Zero)) ==> H(x631, x632, x633, cons_new_pr2F0G11(Main.Succ(Main.Zero)))_>=_new_pr2F0G11(x631, x632, x633, Main.Succ(Main.Zero))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.90 162.74/105.90 (2) (H(x631, x632, x633, cons_new_pr2F0G11(Main.Succ(Main.Zero)))_>=_new_pr2F0G11(x631, x632, x633, Main.Succ(Main.Zero))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 To summarize, we get the following constraints P__>=_ for the following pairs. 162.74/105.90 162.74/105.90 *new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.90 162.74/105.90 *(new_pr2F0G11(x3, x4, x5, Main.Zero)_>=_new_pr2F0G2(x3, new_srRatio(x4), x5)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.90 162.74/105.90 *(new_pr2F0G2(x51, x52, Main.Succ(Main.Succ(x671)))_>=_new_pr2F0G12(x51, x52, new_primDivNatS2(Main.Succ(Main.Succ(x671))))) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F0G2(x51, x52, Main.Succ(Main.Zero))_>=_new_pr2F0G12(x51, x52, new_primDivNatS2(Main.Succ(Main.Zero)))) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F0G2(x75, x76, Main.Succ(Main.Succ(x692)))_>=_new_pr2F0G12(x75, x76, new_primDivNatS2(Main.Succ(Main.Succ(x692))))) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F0G2(x75, x76, Main.Succ(Main.Zero))_>=_new_pr2F0G12(x75, x76, new_primDivNatS2(Main.Succ(Main.Zero)))) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F0G2(x80, x81, Main.Succ(Main.Succ(x712)))_>=_new_pr2F0G12(x80, x81, new_primDivNatS2(Main.Succ(Main.Succ(x712))))) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F0G2(x80, x81, Main.Succ(Main.Zero))_>=_new_pr2F0G12(x80, x81, new_primDivNatS2(Main.Succ(Main.Zero)))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.90 162.74/105.90 *(new_pr2F0G12(x95, x96, Main.Succ(Main.Succ(Main.Zero)))_>=_new_pr2F0G11(x95, x96, Main.Succ(Main.Zero), Main.Zero)) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F0G12(x107, x108, Main.Succ(Main.Succ(Main.Succ(Main.Zero))))_>=_new_pr2F0G11(x107, x108, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.90 162.74/105.90 *(new_pr2F0G11(x155, x156, x157, Main.Succ(Main.Zero))_>=_new_pr2F0(x156, x157, Main.Pos(Main.Succ(Main.Zero)), x155)) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F0G11(x170, x171, Main.Zero, Main.Succ(Main.Zero))_>=_new_pr2F0(x171, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x170)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.90 162.74/105.90 *(new_pr2F0(x205, x206, Main.Pos(Main.Succ(Main.Zero)), x207)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x206, Main.Zero))), x205, Main.Succ(Main.Succ(new_primPlusNat0(x206, Main.Zero))), x207)) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F0(x215, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x217)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x215, Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x217)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.90 162.74/105.90 *(new_pr2F31(Main.Succ(Main.Succ(x262)), x263, Main.Succ(Main.Succ(x264)), x265)_>=_new_pr2F32(Main.Succ(x262), x263, Main.Succ(Main.Succ(x264)), new_srRatio0(x263, x265))) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F31(Main.Succ(Main.Succ(x286)), x287, Main.Succ(Main.Succ(x288)), x289)_>=_new_pr2F32(Main.Succ(x286), x287, Main.Succ(Main.Succ(x288)), new_srRatio0(x287, x289))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.90 162.74/105.90 *(new_pr2F32(x302, x303, Main.Succ(Main.Succ(Main.Zero)), x305)_>=_new_pr2F0G11(x305, x303, Main.Succ(Main.Zero), Main.Zero)) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F32(x317, x318, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), x320)_>=_new_pr2F0G11(x320, x318, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.90 162.74/105.90 *(new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x376, Main.Succ(Main.Succ(Main.Zero)), x377)_>=_new_pr2F32(Main.Succ(Main.Zero), x376, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x376, x377))) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x390, Main.Succ(Main.Succ(Main.Zero)), x391)_>=_new_pr2F32(Main.Succ(Main.Zero), x390, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x390, x391))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.90 162.74/105.90 *(new_pr2F0(x410, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x411)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x410, Main.Succ(Main.Succ(Main.Zero)), x411)) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F0(x418, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x419)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x418, Main.Succ(Main.Succ(Main.Zero)), x419)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.90 162.74/105.90 *(new_pr2F0G12(x442, x443, Main.Succ(Main.Zero))_>=_new_pr2F0(x443, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x442)) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F0G12(x453, x454, Main.Succ(Main.Zero))_>=_new_pr2F0(x454, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x453)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.90 162.74/105.90 *(new_pr2F0G12(x503, x504, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x735)))))_>=_H(x503, x504, Main.Succ(Main.Succ(Main.Succ(x735))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x735)))) ==> new_pr2F0G12(x503, x504, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x735)))))))_>=_H(x503, x504, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x735))))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x735))))))) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F0G12(x503, x504, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))_>=_H(x503, x504, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Zero))))) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F0G12(x509, x510, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x739)))))_>=_H(x509, x510, Main.Succ(Main.Succ(Main.Succ(x739))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x739)))) ==> new_pr2F0G12(x509, x510, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x739)))))))_>=_H(x509, x510, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x739))))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x739))))))) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F0G12(x509, x510, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_H(x509, x510, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.90 162.74/105.90 *(new_pr2F32(x563, x564, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x743)))), x566)_>=_H(x566, x564, Main.Succ(Main.Succ(Main.Succ(x743))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x743)))) ==> new_pr2F32(x563, x564, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x743)))))), x566)_>=_H(x566, x564, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x743))))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x743))))))) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F32(x563, x564, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), x566)_>=_H(x566, x564, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Zero))))) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F32(x570, x571, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x748)))), x573)_>=_H(x573, x571, Main.Succ(Main.Succ(Main.Succ(x748))), anew_new_pr2F0G11(Main.Succ(Main.Succ(x748)))) ==> new_pr2F32(x570, x571, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x748)))))), x573)_>=_H(x573, x571, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x748))))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x748))))))) 162.74/105.90 162.74/105.90 162.74/105.90 *(new_pr2F32(x570, x571, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), x573)_>=_H(x573, x571, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), anew_new_pr2F0G11(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.90 162.74/105.90 *(H(x577, x578, x579, cons_new_pr2F0G11(Main.Zero))_>=_new_pr2F0G11(x577, x578, x579, Main.Zero)) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 *H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.90 162.74/105.90 *(H(x631, x632, x633, cons_new_pr2F0G11(Main.Succ(Main.Zero)))_>=_new_pr2F0G11(x631, x632, x633, Main.Succ(Main.Zero))) 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 162.74/105.90 The constraints for P_> respective P_bound are constructed from P__>=_ where we just replace every occurence of "t _>=_ s" in P__>=_ by "t > s" respective "t _>=_ c". Here c stands for the fresh constant used for P_bound. 162.74/105.90 ---------------------------------------- 162.74/105.90 162.74/105.90 (601) 162.74/105.90 Obligation: 162.74/105.90 Q DP problem: 162.74/105.90 The TRS P consists of the following rules: 162.74/105.90 162.74/105.90 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.90 new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.90 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.90 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.90 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.90 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.90 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.90 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.90 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.90 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.90 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.90 162.74/105.90 The TRS R consists of the following rules: 162.74/105.90 162.74/105.90 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.90 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.90 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.90 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.90 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.90 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.90 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.90 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.90 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.90 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.90 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.90 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.90 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.90 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.90 new_error0 -> Prelude.error([]) 162.74/105.90 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.90 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.90 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.90 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.90 new_error -> Prelude.error([]) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.90 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.90 new_primMinusNatS2 -> Main.Zero 162.74/105.90 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.90 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.90 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.90 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.90 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.90 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.90 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.90 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.90 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.90 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.90 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.90 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.90 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.90 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.90 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.90 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.90 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.90 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.90 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.90 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.90 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.90 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.90 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.90 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.90 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.90 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.90 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.90 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.90 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.90 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.90 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.90 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.90 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.90 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.90 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.90 anew_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.90 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.90 162.74/105.90 The set Q consists of the following terms: 162.74/105.90 162.74/105.90 new_reduce2D1(x0, x1) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.90 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.90 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.90 new_primModNatS02(x0, x1) 162.74/105.90 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.90 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.90 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.90 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.90 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.90 new_absReal1(x0) 162.74/105.90 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.90 new_gcd22(Main.Zero, Main.Zero) 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.90 new_error0 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.90 new_gcd22(Main.Succ(x0), x1) 162.74/105.90 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.90 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.90 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_primDivNatS02(x0, x1) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.90 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.90 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_error 162.74/105.90 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.90 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_primModNatS1(Main.Zero, x0) 162.74/105.90 new_primRemInt(Main.Neg(x0), x1) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.90 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.90 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.90 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.90 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.90 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.90 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.90 new_primDivNatS3(Main.Zero, x0) 162.74/105.90 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.90 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_absMyInt(Main.Zero) 162.74/105.90 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.90 new_absMyInt(Main.Succ(x0)) 162.74/105.90 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.90 new_gcd2(Main.Succ(x0), x1) 162.74/105.90 new_absMyInt0(Main.Zero) 162.74/105.90 new_primMulNat1(Main.Zero) 162.74/105.90 new_absReal10 162.74/105.90 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.90 new_gcd0(x0, x1) 162.74/105.90 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.90 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.90 new_gcd2(Main.Zero, Main.Zero) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.90 new_reduce2D(x0, x1) 162.74/105.90 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.90 new_reduce2D0(x0, x1) 162.74/105.90 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.90 new_primMinusNatS2 162.74/105.90 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_primDivNatS2(Main.Succ(x0)) 162.74/105.90 new_primMulNat1(Main.Succ(x0)) 162.74/105.90 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.90 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.90 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.90 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.90 new_primDivNatS2(Main.Zero) 162.74/105.90 new_gcd21(Main.Succ(x0), x1) 162.74/105.90 new_absMyInt0(Main.Succ(x0)) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.90 new_reduce2D2(x0, x1) 162.74/105.90 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.90 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.90 new_primMinusNatS1(x0) 162.74/105.90 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.90 new_primRemInt(Main.Pos(x0), x1) 162.74/105.90 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.90 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.90 new_gcd21(Main.Zero, Main.Zero) 162.74/105.90 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.90 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.90 anew_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.90 new_new_pr2F0G11(Main.Zero) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.90 162.74/105.90 We have to consider all minimal (P,Q,R)-chains. 162.74/105.90 ---------------------------------------- 162.74/105.90 162.74/105.90 (602) TransformationProof (EQUIVALENT) 162.74/105.90 By narrowing [LPAR04] the rule new_pr2F0G2(vx77, vx82, vx79) -> new_pr2F0G12(vx77, vx82, new_primDivNatS2(vx79)) at position [2] we obtained the following new rules [LPAR04]: 162.74/105.90 162.74/105.90 (new_pr2F0G2(y0, y1, Main.Zero) -> new_pr2F0G12(y0, y1, Main.Zero),new_pr2F0G2(y0, y1, Main.Zero) -> new_pr2F0G12(y0, y1, Main.Zero)) 162.74/105.90 (new_pr2F0G2(y0, y1, Main.Succ(x0)) -> new_pr2F0G12(y0, y1, new_primDivNatS01(x0, Main.Zero, x0, Main.Zero)),new_pr2F0G2(y0, y1, Main.Succ(x0)) -> new_pr2F0G12(y0, y1, new_primDivNatS01(x0, Main.Zero, x0, Main.Zero))) 162.74/105.90 162.74/105.90 162.74/105.90 ---------------------------------------- 162.74/105.90 162.74/105.90 (603) 162.74/105.90 Obligation: 162.74/105.90 Q DP problem: 162.74/105.90 The TRS P consists of the following rules: 162.74/105.90 162.74/105.90 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.90 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.90 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.90 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.90 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.90 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.90 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.90 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.90 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.90 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.90 new_pr2F0G2(y0, y1, Main.Zero) -> new_pr2F0G12(y0, y1, Main.Zero) 162.74/105.90 new_pr2F0G2(y0, y1, Main.Succ(x0)) -> new_pr2F0G12(y0, y1, new_primDivNatS01(x0, Main.Zero, x0, Main.Zero)) 162.74/105.90 162.74/105.90 The TRS R consists of the following rules: 162.74/105.90 162.74/105.90 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.90 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.90 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.90 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.90 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.90 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.90 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.90 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.90 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.90 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.90 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.90 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.90 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.90 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.90 new_error0 -> Prelude.error([]) 162.74/105.90 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.90 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.90 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.90 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.90 new_error -> Prelude.error([]) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.90 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.90 new_primMinusNatS2 -> Main.Zero 162.74/105.90 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.90 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.90 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.90 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.90 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.90 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.90 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.90 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.90 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.90 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.90 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.90 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.90 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.90 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.90 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.90 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.90 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.90 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.90 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.90 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.90 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.90 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.90 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.90 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.90 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.90 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.90 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.90 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.90 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.90 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.90 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.90 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.90 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.90 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.90 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.90 anew_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.90 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.90 162.74/105.90 The set Q consists of the following terms: 162.74/105.90 162.74/105.90 new_reduce2D1(x0, x1) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.90 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.90 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.90 new_primModNatS02(x0, x1) 162.74/105.90 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.90 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.90 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.90 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.90 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.90 new_absReal1(x0) 162.74/105.90 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.90 new_gcd22(Main.Zero, Main.Zero) 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.90 new_error0 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.90 new_gcd22(Main.Succ(x0), x1) 162.74/105.90 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.90 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.90 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_primDivNatS02(x0, x1) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.90 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.90 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_error 162.74/105.90 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.90 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_primModNatS1(Main.Zero, x0) 162.74/105.90 new_primRemInt(Main.Neg(x0), x1) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.90 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.90 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.90 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.90 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.90 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.90 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.90 new_primDivNatS3(Main.Zero, x0) 162.74/105.90 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.90 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_absMyInt(Main.Zero) 162.74/105.90 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.90 new_absMyInt(Main.Succ(x0)) 162.74/105.90 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.90 new_gcd2(Main.Succ(x0), x1) 162.74/105.90 new_absMyInt0(Main.Zero) 162.74/105.90 new_primMulNat1(Main.Zero) 162.74/105.90 new_absReal10 162.74/105.90 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.90 new_gcd0(x0, x1) 162.74/105.90 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.90 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.90 new_gcd2(Main.Zero, Main.Zero) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.90 new_reduce2D(x0, x1) 162.74/105.90 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.90 new_reduce2D0(x0, x1) 162.74/105.90 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.90 new_primMinusNatS2 162.74/105.90 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_primDivNatS2(Main.Succ(x0)) 162.74/105.90 new_primMulNat1(Main.Succ(x0)) 162.74/105.90 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.90 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.90 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.90 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.90 new_primDivNatS2(Main.Zero) 162.74/105.90 new_gcd21(Main.Succ(x0), x1) 162.74/105.90 new_absMyInt0(Main.Succ(x0)) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.90 new_reduce2D2(x0, x1) 162.74/105.90 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.90 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.90 new_primMinusNatS1(x0) 162.74/105.90 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.90 new_primRemInt(Main.Pos(x0), x1) 162.74/105.90 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.90 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.90 new_gcd21(Main.Zero, Main.Zero) 162.74/105.90 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.90 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.90 anew_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.90 new_new_pr2F0G11(Main.Zero) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.90 162.74/105.90 We have to consider all minimal (P,Q,R)-chains. 162.74/105.90 ---------------------------------------- 162.74/105.90 162.74/105.90 (604) DependencyGraphProof (EQUIVALENT) 162.74/105.90 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 162.74/105.90 ---------------------------------------- 162.74/105.90 162.74/105.90 (605) 162.74/105.90 Obligation: 162.74/105.90 Q DP problem: 162.74/105.90 The TRS P consists of the following rules: 162.74/105.90 162.74/105.90 new_pr2F0G2(y0, y1, Main.Succ(x0)) -> new_pr2F0G12(y0, y1, new_primDivNatS01(x0, Main.Zero, x0, Main.Zero)) 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.90 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.90 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.90 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.90 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.90 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.90 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.90 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.90 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.90 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.90 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.90 162.74/105.90 The TRS R consists of the following rules: 162.74/105.90 162.74/105.90 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.90 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.90 new_primDivNatS2(Main.Zero) -> Main.Zero 162.74/105.90 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.90 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.90 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.90 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.90 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.90 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.90 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.90 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.90 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.90 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.90 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.90 new_error0 -> Prelude.error([]) 162.74/105.90 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.90 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.90 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.90 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.90 new_error -> Prelude.error([]) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.90 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.90 new_primMinusNatS2 -> Main.Zero 162.74/105.90 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.90 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.90 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.90 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.90 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.90 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.90 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.90 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.90 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.90 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.90 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.90 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.90 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.90 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.90 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.90 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.90 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.90 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.90 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.90 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.90 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.90 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.90 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.90 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.90 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.90 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.90 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.90 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.90 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.90 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.90 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.90 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.90 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.90 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.90 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.90 anew_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.90 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.90 162.74/105.90 The set Q consists of the following terms: 162.74/105.90 162.74/105.90 new_reduce2D1(x0, x1) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.90 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.90 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.90 new_primModNatS02(x0, x1) 162.74/105.90 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.90 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.90 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.90 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.90 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.90 new_absReal1(x0) 162.74/105.90 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.90 new_gcd22(Main.Zero, Main.Zero) 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.90 new_error0 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.90 new_gcd22(Main.Succ(x0), x1) 162.74/105.90 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.90 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.90 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_primDivNatS02(x0, x1) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.90 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.90 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_error 162.74/105.90 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.90 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_primModNatS1(Main.Zero, x0) 162.74/105.90 new_primRemInt(Main.Neg(x0), x1) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.90 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.90 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.90 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.90 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.90 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.90 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.90 new_primDivNatS3(Main.Zero, x0) 162.74/105.90 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.90 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_absMyInt(Main.Zero) 162.74/105.90 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.90 new_absMyInt(Main.Succ(x0)) 162.74/105.90 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.90 new_gcd2(Main.Succ(x0), x1) 162.74/105.90 new_absMyInt0(Main.Zero) 162.74/105.90 new_primMulNat1(Main.Zero) 162.74/105.90 new_absReal10 162.74/105.90 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.90 new_gcd0(x0, x1) 162.74/105.90 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.90 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.90 new_gcd2(Main.Zero, Main.Zero) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.90 new_reduce2D(x0, x1) 162.74/105.90 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.90 new_reduce2D0(x0, x1) 162.74/105.90 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.90 new_primMinusNatS2 162.74/105.90 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_primDivNatS2(Main.Succ(x0)) 162.74/105.90 new_primMulNat1(Main.Succ(x0)) 162.74/105.90 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.90 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.90 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.90 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.90 new_primDivNatS2(Main.Zero) 162.74/105.90 new_gcd21(Main.Succ(x0), x1) 162.74/105.90 new_absMyInt0(Main.Succ(x0)) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.90 new_reduce2D2(x0, x1) 162.74/105.90 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.90 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.90 new_primMinusNatS1(x0) 162.74/105.90 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.90 new_primRemInt(Main.Pos(x0), x1) 162.74/105.90 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.90 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.90 new_gcd21(Main.Zero, Main.Zero) 162.74/105.90 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.90 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.90 anew_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.90 new_new_pr2F0G11(Main.Zero) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.90 162.74/105.90 We have to consider all minimal (P,Q,R)-chains. 162.74/105.90 ---------------------------------------- 162.74/105.90 162.74/105.90 (606) UsableRulesProof (EQUIVALENT) 162.74/105.90 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.74/105.90 ---------------------------------------- 162.74/105.90 162.74/105.90 (607) 162.74/105.90 Obligation: 162.74/105.90 Q DP problem: 162.74/105.90 The TRS P consists of the following rules: 162.74/105.90 162.74/105.90 new_pr2F0G2(y0, y1, Main.Succ(x0)) -> new_pr2F0G12(y0, y1, new_primDivNatS01(x0, Main.Zero, x0, Main.Zero)) 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.90 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.90 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.90 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.90 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.90 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.90 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.90 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.90 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.90 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.90 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.90 162.74/105.90 The TRS R consists of the following rules: 162.74/105.90 162.74/105.90 anew_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.90 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.90 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.90 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.90 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.90 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.90 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.90 new_error0 -> Prelude.error([]) 162.74/105.90 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.90 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.90 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.90 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.90 new_error -> Prelude.error([]) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.90 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.90 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.90 new_primMinusNatS2 -> Main.Zero 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.90 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.90 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.90 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.90 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.90 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.90 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.90 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.90 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.90 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.90 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.90 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.90 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.90 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.90 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.90 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.90 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.90 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.90 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.90 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.90 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.90 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.90 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.90 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.90 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.90 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.90 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.90 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.90 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.90 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.90 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.90 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.90 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.90 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.90 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.90 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.90 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.90 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.90 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.90 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.90 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.90 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.90 162.74/105.90 The set Q consists of the following terms: 162.74/105.90 162.74/105.90 new_reduce2D1(x0, x1) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.90 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.90 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.90 new_primModNatS02(x0, x1) 162.74/105.90 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.90 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.90 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.90 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.90 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.90 new_absReal1(x0) 162.74/105.90 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.90 new_gcd22(Main.Zero, Main.Zero) 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.90 new_error0 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.90 new_gcd22(Main.Succ(x0), x1) 162.74/105.90 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.90 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.90 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_primDivNatS02(x0, x1) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.90 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.90 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_error 162.74/105.90 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.90 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_primModNatS1(Main.Zero, x0) 162.74/105.90 new_primRemInt(Main.Neg(x0), x1) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.90 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.90 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.90 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.90 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.90 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.90 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.90 new_primDivNatS3(Main.Zero, x0) 162.74/105.90 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.90 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_absMyInt(Main.Zero) 162.74/105.90 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.90 new_absMyInt(Main.Succ(x0)) 162.74/105.90 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.90 new_gcd2(Main.Succ(x0), x1) 162.74/105.90 new_absMyInt0(Main.Zero) 162.74/105.90 new_primMulNat1(Main.Zero) 162.74/105.90 new_absReal10 162.74/105.90 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.90 new_gcd0(x0, x1) 162.74/105.90 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.90 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.90 new_gcd2(Main.Zero, Main.Zero) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.90 new_reduce2D(x0, x1) 162.74/105.90 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.90 new_reduce2D0(x0, x1) 162.74/105.90 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.90 new_primMinusNatS2 162.74/105.90 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_primDivNatS2(Main.Succ(x0)) 162.74/105.90 new_primMulNat1(Main.Succ(x0)) 162.74/105.90 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.90 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.90 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.90 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.90 new_primDivNatS2(Main.Zero) 162.74/105.90 new_gcd21(Main.Succ(x0), x1) 162.74/105.90 new_absMyInt0(Main.Succ(x0)) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.90 new_reduce2D2(x0, x1) 162.74/105.90 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.90 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.90 new_primMinusNatS1(x0) 162.74/105.90 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.90 new_primRemInt(Main.Pos(x0), x1) 162.74/105.90 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.90 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.90 new_gcd21(Main.Zero, Main.Zero) 162.74/105.90 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.90 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.90 anew_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.90 new_new_pr2F0G11(Main.Zero) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.90 162.74/105.90 We have to consider all minimal (P,Q,R)-chains. 162.74/105.90 ---------------------------------------- 162.74/105.90 162.74/105.90 (608) QReductionProof (EQUIVALENT) 162.74/105.90 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 162.74/105.90 162.74/105.90 new_primDivNatS2(Main.Succ(x0)) 162.74/105.90 new_primDivNatS2(Main.Zero) 162.74/105.90 162.74/105.90 162.74/105.90 ---------------------------------------- 162.74/105.90 162.74/105.90 (609) 162.74/105.90 Obligation: 162.74/105.90 Q DP problem: 162.74/105.90 The TRS P consists of the following rules: 162.74/105.90 162.74/105.90 new_pr2F0G2(y0, y1, Main.Succ(x0)) -> new_pr2F0G12(y0, y1, new_primDivNatS01(x0, Main.Zero, x0, Main.Zero)) 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.90 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.90 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.90 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.90 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.90 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.90 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.90 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.90 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.90 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.90 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.90 162.74/105.90 The TRS R consists of the following rules: 162.74/105.90 162.74/105.90 anew_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.90 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.90 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.90 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.90 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.90 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.90 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.90 new_error0 -> Prelude.error([]) 162.74/105.90 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.90 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.90 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.90 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.90 new_error -> Prelude.error([]) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.90 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.90 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.90 new_primMinusNatS2 -> Main.Zero 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.90 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.90 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.90 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.90 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.90 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.90 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.90 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.90 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.90 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.90 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.90 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.90 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.90 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.90 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.90 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.90 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.90 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.90 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.90 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.90 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.90 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.90 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.90 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.90 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.90 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.90 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.90 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.90 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.90 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.90 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.90 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.90 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.90 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.90 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.90 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.90 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.90 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.90 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.90 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.90 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.90 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.90 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.90 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.90 162.74/105.90 The set Q consists of the following terms: 162.74/105.90 162.74/105.90 new_reduce2D1(x0, x1) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.90 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.90 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.90 new_primModNatS02(x0, x1) 162.74/105.90 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.90 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.90 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.90 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.90 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.90 new_absReal1(x0) 162.74/105.90 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.90 new_gcd22(Main.Zero, Main.Zero) 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.90 new_error0 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.90 new_gcd22(Main.Succ(x0), x1) 162.74/105.90 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.90 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.90 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_primDivNatS02(x0, x1) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.90 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.90 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.90 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_error 162.74/105.90 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.90 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_primModNatS1(Main.Zero, x0) 162.74/105.90 new_primRemInt(Main.Neg(x0), x1) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.90 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.90 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.90 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.90 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.90 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.90 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.90 new_primDivNatS3(Main.Zero, x0) 162.74/105.90 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.90 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_absMyInt(Main.Zero) 162.74/105.90 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.90 new_absMyInt(Main.Succ(x0)) 162.74/105.90 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.90 new_gcd2(Main.Succ(x0), x1) 162.74/105.90 new_absMyInt0(Main.Zero) 162.74/105.90 new_primMulNat1(Main.Zero) 162.74/105.90 new_absReal10 162.74/105.90 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.90 new_gcd0(x0, x1) 162.74/105.90 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.90 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.90 new_gcd2(Main.Zero, Main.Zero) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.90 new_reduce2D(x0, x1) 162.74/105.90 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.90 new_reduce2D0(x0, x1) 162.74/105.90 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.90 new_primMinusNatS2 162.74/105.90 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.90 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_primMulNat1(Main.Succ(x0)) 162.74/105.90 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.90 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.90 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.90 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.90 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.90 new_gcd21(Main.Succ(x0), x1) 162.74/105.90 new_absMyInt0(Main.Succ(x0)) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.90 new_reduce2D2(x0, x1) 162.74/105.90 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.90 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.90 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.90 new_primMinusNatS1(x0) 162.74/105.90 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.90 new_primRemInt(Main.Pos(x0), x1) 162.74/105.90 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.90 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.90 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.90 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.90 new_gcd21(Main.Zero, Main.Zero) 162.74/105.90 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.90 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.90 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.90 anew_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.90 new_new_pr2F0G11(Main.Zero) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.90 162.74/105.90 We have to consider all minimal (P,Q,R)-chains. 162.74/105.90 ---------------------------------------- 162.74/105.90 162.74/105.90 (610) TransformationProof (EQUIVALENT) 162.74/105.90 By narrowing [LPAR04] the rule new_pr2F0G2(y0, y1, Main.Succ(x0)) -> new_pr2F0G12(y0, y1, new_primDivNatS01(x0, Main.Zero, x0, Main.Zero)) at position [2] we obtained the following new rules [LPAR04]: 162.74/105.90 162.74/105.90 (new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, new_primDivNatS02(Main.Succ(x2), Main.Zero)),new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, new_primDivNatS02(Main.Succ(x2), Main.Zero))) 162.74/105.90 (new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, new_primDivNatS02(Main.Zero, Main.Zero)),new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, new_primDivNatS02(Main.Zero, Main.Zero))) 162.74/105.90 162.74/105.90 162.74/105.90 ---------------------------------------- 162.74/105.90 162.74/105.90 (611) 162.74/105.90 Obligation: 162.74/105.90 Q DP problem: 162.74/105.90 The TRS P consists of the following rules: 162.74/105.90 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.90 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.90 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.90 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.90 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.90 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.90 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.90 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.90 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.90 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.90 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.90 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.90 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, new_primDivNatS02(Main.Succ(x2), Main.Zero)) 162.74/105.90 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, new_primDivNatS02(Main.Zero, Main.Zero)) 162.74/105.90 162.74/105.90 The TRS R consists of the following rules: 162.74/105.90 162.74/105.90 anew_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.90 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.90 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.90 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.90 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.90 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.90 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.90 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.90 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.90 new_error0 -> Prelude.error([]) 162.74/105.90 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.90 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.90 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.90 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.90 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.90 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.90 new_error -> Prelude.error([]) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.90 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.90 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.90 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.90 new_primMinusNatS2 -> Main.Zero 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.90 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.90 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.90 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.90 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.90 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.90 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.90 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.90 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.90 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.90 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.90 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.90 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.90 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.90 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.90 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.90 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.90 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.90 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.90 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.90 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.90 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.90 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.90 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.90 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.91 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.91 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.91 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.91 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.91 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.91 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.91 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.91 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.91 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.91 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.91 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.91 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.91 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.91 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.91 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.91 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.91 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.91 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.91 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.91 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.91 162.74/105.91 The set Q consists of the following terms: 162.74/105.91 162.74/105.91 new_reduce2D1(x0, x1) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.91 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.91 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_primModNatS02(x0, x1) 162.74/105.91 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.91 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.91 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.91 new_absReal1(x0) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.91 new_gcd22(Main.Zero, Main.Zero) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.91 new_error0 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.91 new_gcd22(Main.Succ(x0), x1) 162.74/105.91 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.91 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primDivNatS02(x0, x1) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.91 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.91 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_error 162.74/105.91 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.91 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primModNatS1(Main.Zero, x0) 162.74/105.91 new_primRemInt(Main.Neg(x0), x1) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.91 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.91 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.91 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.91 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.91 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_primDivNatS3(Main.Zero, x0) 162.74/105.91 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.91 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_absMyInt(Main.Zero) 162.74/105.91 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.91 new_absMyInt(Main.Succ(x0)) 162.74/105.91 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_gcd2(Main.Succ(x0), x1) 162.74/105.91 new_absMyInt0(Main.Zero) 162.74/105.91 new_primMulNat1(Main.Zero) 162.74/105.91 new_absReal10 162.74/105.91 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.91 new_gcd0(x0, x1) 162.74/105.91 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.91 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_gcd2(Main.Zero, Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.91 new_reduce2D(x0, x1) 162.74/105.91 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.91 new_reduce2D0(x0, x1) 162.74/105.91 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_primMinusNatS2 162.74/105.91 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primMulNat1(Main.Succ(x0)) 162.74/105.91 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.91 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd21(Main.Succ(x0), x1) 162.74/105.91 new_absMyInt0(Main.Succ(x0)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.91 new_reduce2D2(x0, x1) 162.74/105.91 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.91 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.91 new_primMinusNatS1(x0) 162.74/105.91 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_primRemInt(Main.Pos(x0), x1) 162.74/105.91 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd21(Main.Zero, Main.Zero) 162.74/105.91 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.91 anew_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.91 new_new_pr2F0G11(Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.91 162.74/105.91 We have to consider all minimal (P,Q,R)-chains. 162.74/105.91 ---------------------------------------- 162.74/105.91 162.74/105.91 (612) TransformationProof (EQUIVALENT) 162.74/105.91 By rewriting [LPAR04] the rule new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, new_primDivNatS02(Main.Succ(x2), Main.Zero)) at position [2] we obtained the following new rules [LPAR04]: 162.74/105.91 162.74/105.91 (new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Zero)))),new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Zero))))) 162.74/105.91 162.74/105.91 162.74/105.91 ---------------------------------------- 162.74/105.91 162.74/105.91 (613) 162.74/105.91 Obligation: 162.74/105.91 Q DP problem: 162.74/105.91 The TRS P consists of the following rules: 162.74/105.91 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.91 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.91 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.91 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.91 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.91 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.91 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.91 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.91 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.91 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.91 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.91 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, new_primDivNatS02(Main.Zero, Main.Zero)) 162.74/105.91 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Zero)))) 162.74/105.91 162.74/105.91 The TRS R consists of the following rules: 162.74/105.91 162.74/105.91 anew_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.91 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.91 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.91 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.91 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.91 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.91 new_error0 -> Prelude.error([]) 162.74/105.91 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.91 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.91 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.91 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.91 new_error -> Prelude.error([]) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.91 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.91 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.91 new_primMinusNatS2 -> Main.Zero 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.91 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.91 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.91 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.91 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.91 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.91 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.91 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.91 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.91 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.91 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.91 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.91 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.91 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.91 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.91 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.91 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.91 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.91 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.91 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.91 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.91 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.91 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.91 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.91 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.91 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.91 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.91 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.91 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.91 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.91 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.91 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.91 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.91 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.91 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.91 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.91 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.91 162.74/105.91 The set Q consists of the following terms: 162.74/105.91 162.74/105.91 new_reduce2D1(x0, x1) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.91 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.91 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_primModNatS02(x0, x1) 162.74/105.91 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.91 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.91 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.91 new_absReal1(x0) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.91 new_gcd22(Main.Zero, Main.Zero) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.91 new_error0 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.91 new_gcd22(Main.Succ(x0), x1) 162.74/105.91 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.91 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primDivNatS02(x0, x1) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.91 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.91 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_error 162.74/105.91 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.91 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primModNatS1(Main.Zero, x0) 162.74/105.91 new_primRemInt(Main.Neg(x0), x1) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.91 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.91 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.91 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.91 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.91 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_primDivNatS3(Main.Zero, x0) 162.74/105.91 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.91 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_absMyInt(Main.Zero) 162.74/105.91 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.91 new_absMyInt(Main.Succ(x0)) 162.74/105.91 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_gcd2(Main.Succ(x0), x1) 162.74/105.91 new_absMyInt0(Main.Zero) 162.74/105.91 new_primMulNat1(Main.Zero) 162.74/105.91 new_absReal10 162.74/105.91 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.91 new_gcd0(x0, x1) 162.74/105.91 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.91 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_gcd2(Main.Zero, Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.91 new_reduce2D(x0, x1) 162.74/105.91 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.91 new_reduce2D0(x0, x1) 162.74/105.91 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_primMinusNatS2 162.74/105.91 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primMulNat1(Main.Succ(x0)) 162.74/105.91 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.91 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd21(Main.Succ(x0), x1) 162.74/105.91 new_absMyInt0(Main.Succ(x0)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.91 new_reduce2D2(x0, x1) 162.74/105.91 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.91 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.91 new_primMinusNatS1(x0) 162.74/105.91 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_primRemInt(Main.Pos(x0), x1) 162.74/105.91 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd21(Main.Zero, Main.Zero) 162.74/105.91 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.91 anew_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.91 new_new_pr2F0G11(Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.91 162.74/105.91 We have to consider all minimal (P,Q,R)-chains. 162.74/105.91 ---------------------------------------- 162.74/105.91 162.74/105.91 (614) TransformationProof (EQUIVALENT) 162.74/105.91 By rewriting [LPAR04] the rule new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, new_primDivNatS02(Main.Zero, Main.Zero)) at position [2] we obtained the following new rules [LPAR04]: 162.74/105.91 162.74/105.91 (new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))),new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero))))) 162.74/105.91 162.74/105.91 162.74/105.91 ---------------------------------------- 162.74/105.91 162.74/105.91 (615) 162.74/105.91 Obligation: 162.74/105.91 Q DP problem: 162.74/105.91 The TRS P consists of the following rules: 162.74/105.91 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.91 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.91 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.91 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.91 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.91 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.91 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.91 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.91 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.91 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.91 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.91 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Zero)))) 162.74/105.91 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.74/105.91 162.74/105.91 The TRS R consists of the following rules: 162.74/105.91 162.74/105.91 anew_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.91 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.91 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.91 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.91 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.91 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.91 new_error0 -> Prelude.error([]) 162.74/105.91 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.91 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.91 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.91 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.91 new_error -> Prelude.error([]) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.91 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.91 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.91 new_primMinusNatS2 -> Main.Zero 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.91 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.91 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.91 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.91 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.91 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.91 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.91 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.91 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.91 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.91 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.91 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.91 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.91 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.91 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.91 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.91 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.91 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.91 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.91 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.91 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.91 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.91 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.91 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.91 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.91 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.91 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.91 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.91 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.91 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.91 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.91 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.91 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.91 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.91 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.91 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.91 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.91 162.74/105.91 The set Q consists of the following terms: 162.74/105.91 162.74/105.91 new_reduce2D1(x0, x1) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.91 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.91 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_primModNatS02(x0, x1) 162.74/105.91 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.91 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.91 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.91 new_absReal1(x0) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.91 new_gcd22(Main.Zero, Main.Zero) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.91 new_error0 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.91 new_gcd22(Main.Succ(x0), x1) 162.74/105.91 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.91 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primDivNatS02(x0, x1) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.91 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.91 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_error 162.74/105.91 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.91 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primModNatS1(Main.Zero, x0) 162.74/105.91 new_primRemInt(Main.Neg(x0), x1) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.91 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.91 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.91 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.91 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.91 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_primDivNatS3(Main.Zero, x0) 162.74/105.91 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.91 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_absMyInt(Main.Zero) 162.74/105.91 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.91 new_absMyInt(Main.Succ(x0)) 162.74/105.91 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_gcd2(Main.Succ(x0), x1) 162.74/105.91 new_absMyInt0(Main.Zero) 162.74/105.91 new_primMulNat1(Main.Zero) 162.74/105.91 new_absReal10 162.74/105.91 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.91 new_gcd0(x0, x1) 162.74/105.91 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.91 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_gcd2(Main.Zero, Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.91 new_reduce2D(x0, x1) 162.74/105.91 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.91 new_reduce2D0(x0, x1) 162.74/105.91 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_primMinusNatS2 162.74/105.91 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primMulNat1(Main.Succ(x0)) 162.74/105.91 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.91 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd21(Main.Succ(x0), x1) 162.74/105.91 new_absMyInt0(Main.Succ(x0)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.91 new_reduce2D2(x0, x1) 162.74/105.91 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.91 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.91 new_primMinusNatS1(x0) 162.74/105.91 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_primRemInt(Main.Pos(x0), x1) 162.74/105.91 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd21(Main.Zero, Main.Zero) 162.74/105.91 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.91 anew_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.91 new_new_pr2F0G11(Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.91 162.74/105.91 We have to consider all minimal (P,Q,R)-chains. 162.74/105.91 ---------------------------------------- 162.74/105.91 162.74/105.91 (616) TransformationProof (EQUIVALENT) 162.74/105.91 By rewriting [LPAR04] the rule new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Zero)))) at position [2,0,0] we obtained the following new rules [LPAR04]: 162.74/105.91 162.74/105.91 (new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero)))),new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero))))) 162.74/105.91 162.74/105.91 162.74/105.91 ---------------------------------------- 162.74/105.91 162.74/105.91 (617) 162.74/105.91 Obligation: 162.74/105.91 Q DP problem: 162.74/105.91 The TRS P consists of the following rules: 162.74/105.91 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.91 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.91 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.91 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.91 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.91 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.91 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.91 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.91 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.91 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.91 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.91 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) 162.74/105.91 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero)))) 162.74/105.91 162.74/105.91 The TRS R consists of the following rules: 162.74/105.91 162.74/105.91 anew_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.91 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.91 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.91 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.91 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.91 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.91 new_error0 -> Prelude.error([]) 162.74/105.91 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.91 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.91 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.91 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.91 new_error -> Prelude.error([]) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.91 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.91 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.91 new_primMinusNatS2 -> Main.Zero 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.91 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.91 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.91 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.91 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.91 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.91 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.91 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.91 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.91 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.91 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.91 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.91 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.91 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.91 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.91 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.91 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.91 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.91 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.91 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.91 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.91 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.91 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.91 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.91 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.91 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.91 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.91 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.91 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.91 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.91 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.91 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.91 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.91 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.91 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.91 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.91 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.91 162.74/105.91 The set Q consists of the following terms: 162.74/105.91 162.74/105.91 new_reduce2D1(x0, x1) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.91 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.91 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_primModNatS02(x0, x1) 162.74/105.91 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.91 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.91 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.91 new_absReal1(x0) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.91 new_gcd22(Main.Zero, Main.Zero) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.91 new_error0 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.91 new_gcd22(Main.Succ(x0), x1) 162.74/105.91 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.91 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primDivNatS02(x0, x1) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.91 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.91 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_error 162.74/105.91 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.91 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primModNatS1(Main.Zero, x0) 162.74/105.91 new_primRemInt(Main.Neg(x0), x1) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.91 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.91 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.91 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.91 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.91 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_primDivNatS3(Main.Zero, x0) 162.74/105.91 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.91 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_absMyInt(Main.Zero) 162.74/105.91 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.91 new_absMyInt(Main.Succ(x0)) 162.74/105.91 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_gcd2(Main.Succ(x0), x1) 162.74/105.91 new_absMyInt0(Main.Zero) 162.74/105.91 new_primMulNat1(Main.Zero) 162.74/105.91 new_absReal10 162.74/105.91 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.91 new_gcd0(x0, x1) 162.74/105.91 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.91 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_gcd2(Main.Zero, Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.91 new_reduce2D(x0, x1) 162.74/105.91 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.91 new_reduce2D0(x0, x1) 162.74/105.91 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_primMinusNatS2 162.74/105.91 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primMulNat1(Main.Succ(x0)) 162.74/105.91 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.91 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd21(Main.Succ(x0), x1) 162.74/105.91 new_absMyInt0(Main.Succ(x0)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.91 new_reduce2D2(x0, x1) 162.74/105.91 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.91 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.91 new_primMinusNatS1(x0) 162.74/105.91 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_primRemInt(Main.Pos(x0), x1) 162.74/105.91 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd21(Main.Zero, Main.Zero) 162.74/105.91 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.91 anew_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.91 new_new_pr2F0G11(Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.91 162.74/105.91 We have to consider all minimal (P,Q,R)-chains. 162.74/105.91 ---------------------------------------- 162.74/105.91 162.74/105.91 (618) TransformationProof (EQUIVALENT) 162.74/105.91 By rewriting [LPAR04] the rule new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))) at position [2,0,0] we obtained the following new rules [LPAR04]: 162.74/105.91 162.74/105.91 (new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(Main.Zero, Main.Succ(Main.Zero)))),new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(Main.Zero, Main.Succ(Main.Zero))))) 162.74/105.91 162.74/105.91 162.74/105.91 ---------------------------------------- 162.74/105.91 162.74/105.91 (619) 162.74/105.91 Obligation: 162.74/105.91 Q DP problem: 162.74/105.91 The TRS P consists of the following rules: 162.74/105.91 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.91 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.91 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.91 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.91 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.91 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.91 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.91 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.91 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.91 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.91 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.91 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero)))) 162.74/105.91 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(Main.Zero, Main.Succ(Main.Zero)))) 162.74/105.91 162.74/105.91 The TRS R consists of the following rules: 162.74/105.91 162.74/105.91 anew_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.91 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.91 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.91 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.91 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.91 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.91 new_error0 -> Prelude.error([]) 162.74/105.91 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.91 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.91 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.91 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.91 new_error -> Prelude.error([]) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.91 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.91 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.91 new_primMinusNatS2 -> Main.Zero 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.91 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.91 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.91 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.91 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.91 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.91 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.91 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.91 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.91 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.91 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.91 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.91 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.91 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.91 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.91 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.91 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.91 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.91 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.91 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.91 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.91 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.91 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.91 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.91 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.91 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.91 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.91 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.91 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.91 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.91 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.91 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.91 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.91 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.91 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.91 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.91 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.91 162.74/105.91 The set Q consists of the following terms: 162.74/105.91 162.74/105.91 new_reduce2D1(x0, x1) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.91 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.91 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_primModNatS02(x0, x1) 162.74/105.91 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.91 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.91 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.91 new_absReal1(x0) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.91 new_gcd22(Main.Zero, Main.Zero) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.91 new_error0 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.91 new_gcd22(Main.Succ(x0), x1) 162.74/105.91 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.91 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primDivNatS02(x0, x1) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.91 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.91 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_error 162.74/105.91 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.91 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primModNatS1(Main.Zero, x0) 162.74/105.91 new_primRemInt(Main.Neg(x0), x1) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.91 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.91 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.91 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.91 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.91 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_primDivNatS3(Main.Zero, x0) 162.74/105.91 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.91 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_absMyInt(Main.Zero) 162.74/105.91 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.91 new_absMyInt(Main.Succ(x0)) 162.74/105.91 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_gcd2(Main.Succ(x0), x1) 162.74/105.91 new_absMyInt0(Main.Zero) 162.74/105.91 new_primMulNat1(Main.Zero) 162.74/105.91 new_absReal10 162.74/105.91 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.91 new_gcd0(x0, x1) 162.74/105.91 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.91 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_gcd2(Main.Zero, Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.91 new_reduce2D(x0, x1) 162.74/105.91 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.91 new_reduce2D0(x0, x1) 162.74/105.91 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_primMinusNatS2 162.74/105.91 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primMulNat1(Main.Succ(x0)) 162.74/105.91 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.91 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd21(Main.Succ(x0), x1) 162.74/105.91 new_absMyInt0(Main.Succ(x0)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.91 new_reduce2D2(x0, x1) 162.74/105.91 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.91 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.91 new_primMinusNatS1(x0) 162.74/105.91 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_primRemInt(Main.Pos(x0), x1) 162.74/105.91 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd21(Main.Zero, Main.Zero) 162.74/105.91 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.91 anew_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.91 new_new_pr2F0G11(Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.91 162.74/105.91 We have to consider all minimal (P,Q,R)-chains. 162.74/105.91 ---------------------------------------- 162.74/105.91 162.74/105.91 (620) TransformationProof (EQUIVALENT) 162.74/105.91 By rewriting [LPAR04] the rule new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(Main.Zero, Main.Succ(Main.Zero)))) at position [2,0] we obtained the following new rules [LPAR04]: 162.74/105.91 162.74/105.91 (new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)),new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero))) 162.74/105.91 162.74/105.91 162.74/105.91 ---------------------------------------- 162.74/105.91 162.74/105.91 (621) 162.74/105.91 Obligation: 162.74/105.91 Q DP problem: 162.74/105.91 The TRS P consists of the following rules: 162.74/105.91 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.91 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.91 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.91 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.91 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.91 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.91 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.91 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.91 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.91 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.91 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.91 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero)))) 162.74/105.91 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.91 162.74/105.91 The TRS R consists of the following rules: 162.74/105.91 162.74/105.91 anew_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.91 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.91 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.91 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.91 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.91 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.91 new_error0 -> Prelude.error([]) 162.74/105.91 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.91 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.91 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.91 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.91 new_error -> Prelude.error([]) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.91 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.91 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.91 new_primMinusNatS2 -> Main.Zero 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.91 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.91 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.91 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.91 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.91 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.91 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.91 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.91 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.91 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.91 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.91 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.91 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.91 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.91 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.91 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.91 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.91 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.91 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.91 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.91 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.91 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.91 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.91 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.91 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.91 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.91 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.91 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.91 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.91 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.91 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.91 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.91 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.91 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.91 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.91 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.91 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.91 162.74/105.91 The set Q consists of the following terms: 162.74/105.91 162.74/105.91 new_reduce2D1(x0, x1) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.91 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.91 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_primModNatS02(x0, x1) 162.74/105.91 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.91 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.91 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.91 new_absReal1(x0) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.91 new_gcd22(Main.Zero, Main.Zero) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.91 new_error0 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.91 new_gcd22(Main.Succ(x0), x1) 162.74/105.91 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.91 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primDivNatS02(x0, x1) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.91 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.91 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_error 162.74/105.91 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.91 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primModNatS1(Main.Zero, x0) 162.74/105.91 new_primRemInt(Main.Neg(x0), x1) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.91 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.91 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.91 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.91 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.91 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_primDivNatS3(Main.Zero, x0) 162.74/105.91 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.91 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_absMyInt(Main.Zero) 162.74/105.91 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.91 new_absMyInt(Main.Succ(x0)) 162.74/105.91 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_gcd2(Main.Succ(x0), x1) 162.74/105.91 new_absMyInt0(Main.Zero) 162.74/105.91 new_primMulNat1(Main.Zero) 162.74/105.91 new_absReal10 162.74/105.91 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.91 new_gcd0(x0, x1) 162.74/105.91 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.91 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_gcd2(Main.Zero, Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.91 new_reduce2D(x0, x1) 162.74/105.91 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.91 new_reduce2D0(x0, x1) 162.74/105.91 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_primMinusNatS2 162.74/105.91 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primMulNat1(Main.Succ(x0)) 162.74/105.91 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.91 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd21(Main.Succ(x0), x1) 162.74/105.91 new_absMyInt0(Main.Succ(x0)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.91 new_reduce2D2(x0, x1) 162.74/105.91 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.91 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.91 new_primMinusNatS1(x0) 162.74/105.91 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_primRemInt(Main.Pos(x0), x1) 162.74/105.91 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd21(Main.Zero, Main.Zero) 162.74/105.91 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.91 anew_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.91 new_new_pr2F0G11(Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.91 162.74/105.91 We have to consider all minimal (P,Q,R)-chains. 162.74/105.91 ---------------------------------------- 162.74/105.91 162.74/105.91 (622) TransformationProof (EQUIVALENT) 162.74/105.91 By narrowing [LPAR04] the rule new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) at position [3] we obtained the following new rules [LPAR04]: 162.74/105.91 162.74/105.91 (new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(x0))), new_new_pr2F0G11(x0)),new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(x0))), new_new_pr2F0G11(x0))) 162.74/105.91 162.74/105.91 162.74/105.91 ---------------------------------------- 162.74/105.91 162.74/105.91 (623) 162.74/105.91 Obligation: 162.74/105.91 Q DP problem: 162.74/105.91 The TRS P consists of the following rules: 162.74/105.91 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.91 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.91 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.91 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.91 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.91 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.91 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.91 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.91 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.91 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) 162.74/105.91 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero)))) 162.74/105.91 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.91 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(x0))), new_new_pr2F0G11(x0)) 162.74/105.91 162.74/105.91 The TRS R consists of the following rules: 162.74/105.91 162.74/105.91 anew_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.91 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.91 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.91 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.91 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.91 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.91 new_error0 -> Prelude.error([]) 162.74/105.91 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.91 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.91 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.91 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.91 new_error -> Prelude.error([]) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.91 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.91 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.91 new_primMinusNatS2 -> Main.Zero 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.91 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.91 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.91 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.91 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.91 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.91 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.91 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.91 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.91 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.91 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.91 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.91 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.91 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.91 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.91 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.91 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.91 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.91 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.91 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.91 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.91 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.91 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.91 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.91 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.91 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.91 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.91 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.91 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.91 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.91 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.91 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.91 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.91 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.91 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.91 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.91 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.91 162.74/105.91 The set Q consists of the following terms: 162.74/105.91 162.74/105.91 new_reduce2D1(x0, x1) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.91 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.91 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_primModNatS02(x0, x1) 162.74/105.91 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.91 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.91 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.91 new_absReal1(x0) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.91 new_gcd22(Main.Zero, Main.Zero) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.91 new_error0 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.91 new_gcd22(Main.Succ(x0), x1) 162.74/105.91 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.91 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primDivNatS02(x0, x1) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.91 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.91 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_error 162.74/105.91 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.91 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primModNatS1(Main.Zero, x0) 162.74/105.91 new_primRemInt(Main.Neg(x0), x1) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.91 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.91 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.91 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.91 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.91 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_primDivNatS3(Main.Zero, x0) 162.74/105.91 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.91 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_absMyInt(Main.Zero) 162.74/105.91 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.91 new_absMyInt(Main.Succ(x0)) 162.74/105.91 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.91 new_gcd2(Main.Succ(x0), x1) 162.74/105.91 new_absMyInt0(Main.Zero) 162.74/105.91 new_primMulNat1(Main.Zero) 162.74/105.91 new_absReal10 162.74/105.91 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.91 new_gcd0(x0, x1) 162.74/105.91 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.91 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_gcd2(Main.Zero, Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.91 new_reduce2D(x0, x1) 162.74/105.91 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.91 new_reduce2D0(x0, x1) 162.74/105.91 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_primMinusNatS2 162.74/105.91 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.91 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primMulNat1(Main.Succ(x0)) 162.74/105.91 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.91 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.91 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.91 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd21(Main.Succ(x0), x1) 162.74/105.91 new_absMyInt0(Main.Succ(x0)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.91 new_reduce2D2(x0, x1) 162.74/105.91 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.91 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.91 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.91 new_primMinusNatS1(x0) 162.74/105.91 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_primRemInt(Main.Pos(x0), x1) 162.74/105.91 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.91 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.91 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.91 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd21(Main.Zero, Main.Zero) 162.74/105.91 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.91 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.91 anew_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.91 new_new_pr2F0G11(Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.91 162.74/105.91 We have to consider all minimal (P,Q,R)-chains. 162.74/105.91 ---------------------------------------- 162.74/105.91 162.74/105.91 (624) TransformationProof (EQUIVALENT) 162.74/105.91 By narrowing [LPAR04] the rule new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> H(vx67, vx50, Main.Succ(vx6100), anew_new_pr2F0G11(vx6100)) at position [3] we obtained the following new rules [LPAR04]: 162.74/105.91 162.74/105.91 (new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(x0))), new_new_pr2F0G11(x0)),new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(x0))), new_new_pr2F0G11(x0))) 162.74/105.91 162.74/105.91 162.74/105.91 ---------------------------------------- 162.74/105.91 162.74/105.91 (625) 162.74/105.91 Obligation: 162.74/105.91 Q DP problem: 162.74/105.91 The TRS P consists of the following rules: 162.74/105.91 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.91 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.91 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.91 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.91 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.91 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.91 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.91 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.91 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.91 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.91 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.91 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero)))) 162.74/105.91 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.91 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(x0))), new_new_pr2F0G11(x0)) 162.74/105.91 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(x0))), new_new_pr2F0G11(x0)) 162.74/105.91 162.74/105.91 The TRS R consists of the following rules: 162.74/105.91 162.74/105.91 anew_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.91 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.91 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.91 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.91 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.91 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.91 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.91 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.91 new_error0 -> Prelude.error([]) 162.74/105.91 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.91 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.91 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.91 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.91 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.91 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.91 new_error -> Prelude.error([]) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.91 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.91 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.91 new_primMinusNatS2 -> Main.Zero 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.91 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.91 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.91 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.91 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.91 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.91 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.91 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.91 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.91 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.91 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.91 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.91 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.91 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.91 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.91 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.91 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.91 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.91 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.91 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.91 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.91 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.91 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.91 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.91 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.91 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.91 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.91 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.91 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.91 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.91 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.91 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.91 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.91 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.91 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.91 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.91 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.91 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.91 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.91 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.91 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.91 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.91 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.91 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.91 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.91 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.91 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.91 162.74/105.91 The set Q consists of the following terms: 162.74/105.91 162.74/105.91 new_reduce2D1(x0, x1) 162.74/105.91 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.91 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.91 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.91 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.91 new_primModNatS02(x0, x1) 162.74/105.91 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.91 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.91 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.91 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.92 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.92 new_absReal1(x0) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.92 new_gcd22(Main.Zero, Main.Zero) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.92 new_error0 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.92 new_gcd22(Main.Succ(x0), x1) 162.74/105.92 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.92 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primDivNatS02(x0, x1) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.92 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.92 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_error 162.74/105.92 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.92 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primModNatS1(Main.Zero, x0) 162.74/105.92 new_primRemInt(Main.Neg(x0), x1) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.92 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.92 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.92 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.92 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.92 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Zero, x0) 162.74/105.92 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.92 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_absMyInt(Main.Zero) 162.74/105.92 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.92 new_absMyInt(Main.Succ(x0)) 162.74/105.92 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_gcd2(Main.Succ(x0), x1) 162.74/105.92 new_absMyInt0(Main.Zero) 162.74/105.92 new_primMulNat1(Main.Zero) 162.74/105.92 new_absReal10 162.74/105.92 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.92 new_gcd0(x0, x1) 162.74/105.92 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.92 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_gcd2(Main.Zero, Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.92 new_reduce2D(x0, x1) 162.74/105.92 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.92 new_reduce2D0(x0, x1) 162.74/105.92 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_primMinusNatS2 162.74/105.92 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primMulNat1(Main.Succ(x0)) 162.74/105.92 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.92 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd21(Main.Succ(x0), x1) 162.74/105.92 new_absMyInt0(Main.Succ(x0)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.92 new_reduce2D2(x0, x1) 162.74/105.92 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.92 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.92 new_primMinusNatS1(x0) 162.74/105.92 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_primRemInt(Main.Pos(x0), x1) 162.74/105.92 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd21(Main.Zero, Main.Zero) 162.74/105.92 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.92 anew_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.92 new_new_pr2F0G11(Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.92 162.74/105.92 We have to consider all minimal (P,Q,R)-chains. 162.74/105.92 ---------------------------------------- 162.74/105.92 162.74/105.92 (626) UsableRulesProof (EQUIVALENT) 162.74/105.92 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 162.74/105.92 ---------------------------------------- 162.74/105.92 162.74/105.92 (627) 162.74/105.92 Obligation: 162.74/105.92 Q DP problem: 162.74/105.92 The TRS P consists of the following rules: 162.74/105.92 162.74/105.92 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.92 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.92 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.92 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.92 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.92 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.92 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.92 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.92 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.92 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero)))) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(x0))), new_new_pr2F0G11(x0)) 162.74/105.92 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(x0))), new_new_pr2F0G11(x0)) 162.74/105.92 162.74/105.92 The TRS R consists of the following rules: 162.74/105.92 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.92 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.92 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.92 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.92 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.92 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.92 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.92 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.92 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.92 new_error0 -> Prelude.error([]) 162.74/105.92 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.92 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.92 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.92 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.92 new_error -> Prelude.error([]) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.92 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.92 new_primMinusNatS2 -> Main.Zero 162.74/105.92 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.92 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.92 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.92 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.92 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.92 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.92 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.92 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.92 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.92 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.92 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.92 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.92 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.92 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.92 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.92 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.92 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.92 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.92 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.92 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.92 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.92 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.92 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.92 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.92 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.92 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.92 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.92 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.92 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.92 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.92 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.92 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.92 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.92 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.92 162.74/105.92 The set Q consists of the following terms: 162.74/105.92 162.74/105.92 new_reduce2D1(x0, x1) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.92 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.92 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_primModNatS02(x0, x1) 162.74/105.92 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.92 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.92 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.92 new_absReal1(x0) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.92 new_gcd22(Main.Zero, Main.Zero) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.92 new_error0 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.92 new_gcd22(Main.Succ(x0), x1) 162.74/105.92 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.92 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primDivNatS02(x0, x1) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.92 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.92 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_error 162.74/105.92 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.92 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primModNatS1(Main.Zero, x0) 162.74/105.92 new_primRemInt(Main.Neg(x0), x1) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.92 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.92 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.92 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.92 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.92 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Zero, x0) 162.74/105.92 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.92 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_absMyInt(Main.Zero) 162.74/105.92 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.92 new_absMyInt(Main.Succ(x0)) 162.74/105.92 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_gcd2(Main.Succ(x0), x1) 162.74/105.92 new_absMyInt0(Main.Zero) 162.74/105.92 new_primMulNat1(Main.Zero) 162.74/105.92 new_absReal10 162.74/105.92 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.92 new_gcd0(x0, x1) 162.74/105.92 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.92 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_gcd2(Main.Zero, Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.92 new_reduce2D(x0, x1) 162.74/105.92 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.92 new_reduce2D0(x0, x1) 162.74/105.92 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_primMinusNatS2 162.74/105.92 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primMulNat1(Main.Succ(x0)) 162.74/105.92 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.92 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd21(Main.Succ(x0), x1) 162.74/105.92 new_absMyInt0(Main.Succ(x0)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.92 new_reduce2D2(x0, x1) 162.74/105.92 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.92 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.92 new_primMinusNatS1(x0) 162.74/105.92 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_primRemInt(Main.Pos(x0), x1) 162.74/105.92 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd21(Main.Zero, Main.Zero) 162.74/105.92 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.92 anew_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.92 new_new_pr2F0G11(Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.92 162.74/105.92 We have to consider all minimal (P,Q,R)-chains. 162.74/105.92 ---------------------------------------- 162.74/105.92 162.74/105.92 (628) QReductionProof (EQUIVALENT) 162.74/105.92 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 162.74/105.92 162.74/105.92 anew_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.92 162.74/105.92 162.74/105.92 ---------------------------------------- 162.74/105.92 162.74/105.92 (629) 162.74/105.92 Obligation: 162.74/105.92 Q DP problem: 162.74/105.92 The TRS P consists of the following rules: 162.74/105.92 162.74/105.92 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.92 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.92 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.92 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.92 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.92 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.92 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.92 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.92 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.92 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero)))) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(x0))), new_new_pr2F0G11(x0)) 162.74/105.92 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(x0))), new_new_pr2F0G11(x0)) 162.74/105.92 162.74/105.92 The TRS R consists of the following rules: 162.74/105.92 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.92 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.92 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.92 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.92 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.92 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.92 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.92 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.92 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.92 new_error0 -> Prelude.error([]) 162.74/105.92 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.92 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.92 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.92 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.92 new_error -> Prelude.error([]) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.92 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.92 new_primMinusNatS2 -> Main.Zero 162.74/105.92 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.92 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.92 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.92 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.92 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.92 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.92 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.92 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.92 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.92 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.92 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.92 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.92 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.92 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.92 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.92 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.92 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.92 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.92 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.92 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.92 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.92 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.92 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.92 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.92 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.92 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.92 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.92 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.92 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.92 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.92 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.92 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.92 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.92 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.92 162.74/105.92 The set Q consists of the following terms: 162.74/105.92 162.74/105.92 new_reduce2D1(x0, x1) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.92 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.92 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_primModNatS02(x0, x1) 162.74/105.92 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.92 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.92 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.92 new_absReal1(x0) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.92 new_gcd22(Main.Zero, Main.Zero) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.92 new_error0 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.92 new_gcd22(Main.Succ(x0), x1) 162.74/105.92 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.92 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primDivNatS02(x0, x1) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.92 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.92 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_error 162.74/105.92 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.92 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primModNatS1(Main.Zero, x0) 162.74/105.92 new_primRemInt(Main.Neg(x0), x1) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.92 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.92 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.92 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.92 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.92 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Zero, x0) 162.74/105.92 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.92 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_absMyInt(Main.Zero) 162.74/105.92 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.92 new_absMyInt(Main.Succ(x0)) 162.74/105.92 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_gcd2(Main.Succ(x0), x1) 162.74/105.92 new_absMyInt0(Main.Zero) 162.74/105.92 new_primMulNat1(Main.Zero) 162.74/105.92 new_absReal10 162.74/105.92 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.92 new_gcd0(x0, x1) 162.74/105.92 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.92 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_gcd2(Main.Zero, Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.92 new_reduce2D(x0, x1) 162.74/105.92 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.92 new_reduce2D0(x0, x1) 162.74/105.92 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_primMinusNatS2 162.74/105.92 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primMulNat1(Main.Succ(x0)) 162.74/105.92 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.92 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd21(Main.Succ(x0), x1) 162.74/105.92 new_absMyInt0(Main.Succ(x0)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.92 new_reduce2D2(x0, x1) 162.74/105.92 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.92 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.92 new_primMinusNatS1(x0) 162.74/105.92 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_primRemInt(Main.Pos(x0), x1) 162.74/105.92 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd21(Main.Zero, Main.Zero) 162.74/105.92 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.92 new_new_pr2F0G11(Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.92 162.74/105.92 We have to consider all minimal (P,Q,R)-chains. 162.74/105.92 ---------------------------------------- 162.74/105.92 162.74/105.92 (630) TransformationProof (EQUIVALENT) 162.74/105.92 By narrowing [LPAR04] the rule new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(x2))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero)))) at position [2,0] we obtained the following new rules [LPAR04]: 162.74/105.92 162.74/105.92 (new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(x0)))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS01(x0, Main.Zero, x0, Main.Zero))),new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(x0)))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS01(x0, Main.Zero, x0, Main.Zero)))) 162.74/105.92 (new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)),new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero))) 162.74/105.92 162.74/105.92 162.74/105.92 ---------------------------------------- 162.74/105.92 162.74/105.92 (631) 162.74/105.92 Obligation: 162.74/105.92 Q DP problem: 162.74/105.92 The TRS P consists of the following rules: 162.74/105.92 162.74/105.92 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.92 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.92 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.92 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.92 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.92 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.92 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.92 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.92 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.92 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(x0))), new_new_pr2F0G11(x0)) 162.74/105.92 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(x0))), new_new_pr2F0G11(x0)) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(x0)))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS01(x0, Main.Zero, x0, Main.Zero))) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.92 162.74/105.92 The TRS R consists of the following rules: 162.74/105.92 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.92 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.92 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.92 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.92 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.92 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.92 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.92 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.92 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.92 new_error0 -> Prelude.error([]) 162.74/105.92 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.92 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.92 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.92 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.92 new_error -> Prelude.error([]) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.92 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.92 new_primMinusNatS2 -> Main.Zero 162.74/105.92 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.92 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.92 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.92 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.92 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.92 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.92 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.92 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.92 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.92 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.92 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.92 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.92 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.92 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.92 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.92 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.92 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.92 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.92 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.92 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.92 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.92 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.92 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.92 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.92 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.92 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.92 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.92 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.92 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.92 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.92 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.92 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.92 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.92 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.92 162.74/105.92 The set Q consists of the following terms: 162.74/105.92 162.74/105.92 new_reduce2D1(x0, x1) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.92 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.92 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_primModNatS02(x0, x1) 162.74/105.92 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.92 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.92 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.92 new_absReal1(x0) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.92 new_gcd22(Main.Zero, Main.Zero) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.92 new_error0 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.92 new_gcd22(Main.Succ(x0), x1) 162.74/105.92 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.92 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primDivNatS02(x0, x1) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.92 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.92 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_error 162.74/105.92 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.92 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primModNatS1(Main.Zero, x0) 162.74/105.92 new_primRemInt(Main.Neg(x0), x1) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.92 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.92 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.92 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.92 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.92 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Zero, x0) 162.74/105.92 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.92 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_absMyInt(Main.Zero) 162.74/105.92 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.92 new_absMyInt(Main.Succ(x0)) 162.74/105.92 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_gcd2(Main.Succ(x0), x1) 162.74/105.92 new_absMyInt0(Main.Zero) 162.74/105.92 new_primMulNat1(Main.Zero) 162.74/105.92 new_absReal10 162.74/105.92 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.92 new_gcd0(x0, x1) 162.74/105.92 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.92 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_gcd2(Main.Zero, Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.92 new_reduce2D(x0, x1) 162.74/105.92 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.92 new_reduce2D0(x0, x1) 162.74/105.92 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_primMinusNatS2 162.74/105.92 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primMulNat1(Main.Succ(x0)) 162.74/105.92 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.92 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd21(Main.Succ(x0), x1) 162.74/105.92 new_absMyInt0(Main.Succ(x0)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.92 new_reduce2D2(x0, x1) 162.74/105.92 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.92 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.92 new_primMinusNatS1(x0) 162.74/105.92 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_primRemInt(Main.Pos(x0), x1) 162.74/105.92 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd21(Main.Zero, Main.Zero) 162.74/105.92 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.92 new_new_pr2F0G11(Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.92 162.74/105.92 We have to consider all minimal (P,Q,R)-chains. 162.74/105.92 ---------------------------------------- 162.74/105.92 162.74/105.92 (632) TransformationProof (EQUIVALENT) 162.74/105.92 By narrowing [LPAR04] the rule new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(x0))), new_new_pr2F0G11(x0)) at position [3] we obtained the following new rules [LPAR04]: 162.74/105.92 162.74/105.92 (new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)),new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0))) 162.74/105.92 (new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)),new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero))) 162.74/105.92 (new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))),new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.74/105.92 162.74/105.92 162.74/105.92 ---------------------------------------- 162.74/105.92 162.74/105.92 (633) 162.74/105.92 Obligation: 162.74/105.92 Q DP problem: 162.74/105.92 The TRS P consists of the following rules: 162.74/105.92 162.74/105.92 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.92 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.92 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.92 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.92 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.92 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.92 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.92 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.92 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.92 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(x0))), new_new_pr2F0G11(x0)) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(x0)))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS01(x0, Main.Zero, x0, Main.Zero))) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.92 162.74/105.92 The TRS R consists of the following rules: 162.74/105.92 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.92 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.92 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.92 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.92 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.92 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.92 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.92 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.92 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.92 new_error0 -> Prelude.error([]) 162.74/105.92 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.92 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.92 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.92 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.92 new_error -> Prelude.error([]) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.92 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.92 new_primMinusNatS2 -> Main.Zero 162.74/105.92 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.92 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.92 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.92 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.92 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.92 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.92 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.92 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.92 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.92 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.92 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.92 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.92 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.92 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.92 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.92 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.92 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.92 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.92 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.92 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.92 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.92 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.92 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.92 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.92 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.92 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.92 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.92 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.92 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.92 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.92 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.92 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.92 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.92 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.92 162.74/105.92 The set Q consists of the following terms: 162.74/105.92 162.74/105.92 new_reduce2D1(x0, x1) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.92 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.92 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_primModNatS02(x0, x1) 162.74/105.92 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.92 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.92 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.92 new_absReal1(x0) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.92 new_gcd22(Main.Zero, Main.Zero) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.92 new_error0 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.92 new_gcd22(Main.Succ(x0), x1) 162.74/105.92 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.92 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primDivNatS02(x0, x1) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.92 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.92 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_error 162.74/105.92 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.92 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primModNatS1(Main.Zero, x0) 162.74/105.92 new_primRemInt(Main.Neg(x0), x1) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.92 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.92 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.92 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.92 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.92 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Zero, x0) 162.74/105.92 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.92 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_absMyInt(Main.Zero) 162.74/105.92 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.92 new_absMyInt(Main.Succ(x0)) 162.74/105.92 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_gcd2(Main.Succ(x0), x1) 162.74/105.92 new_absMyInt0(Main.Zero) 162.74/105.92 new_primMulNat1(Main.Zero) 162.74/105.92 new_absReal10 162.74/105.92 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.92 new_gcd0(x0, x1) 162.74/105.92 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.92 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_gcd2(Main.Zero, Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.92 new_reduce2D(x0, x1) 162.74/105.92 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.92 new_reduce2D0(x0, x1) 162.74/105.92 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_primMinusNatS2 162.74/105.92 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primMulNat1(Main.Succ(x0)) 162.74/105.92 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.92 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd21(Main.Succ(x0), x1) 162.74/105.92 new_absMyInt0(Main.Succ(x0)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.92 new_reduce2D2(x0, x1) 162.74/105.92 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.92 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.92 new_primMinusNatS1(x0) 162.74/105.92 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_primRemInt(Main.Pos(x0), x1) 162.74/105.92 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd21(Main.Zero, Main.Zero) 162.74/105.92 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.92 new_new_pr2F0G11(Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.92 162.74/105.92 We have to consider all minimal (P,Q,R)-chains. 162.74/105.92 ---------------------------------------- 162.74/105.92 162.74/105.92 (634) TransformationProof (EQUIVALENT) 162.74/105.92 By narrowing [LPAR04] the rule new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(x0))), new_new_pr2F0G11(x0)) at position [3] we obtained the following new rules [LPAR04]: 162.74/105.92 162.74/105.92 (new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)),new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0))) 162.74/105.92 (new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)),new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero))) 162.74/105.92 (new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))),new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.74/105.92 162.74/105.92 162.74/105.92 ---------------------------------------- 162.74/105.92 162.74/105.92 (635) 162.74/105.92 Obligation: 162.74/105.92 Q DP problem: 162.74/105.92 The TRS P consists of the following rules: 162.74/105.92 162.74/105.92 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.92 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.92 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.92 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.92 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.92 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.92 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.92 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.92 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.92 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(x0)))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS01(x0, Main.Zero, x0, Main.Zero))) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.92 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) 162.74/105.92 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.92 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.92 162.74/105.92 The TRS R consists of the following rules: 162.74/105.92 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.92 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.92 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.92 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.92 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.92 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.92 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.92 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.92 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.92 new_error0 -> Prelude.error([]) 162.74/105.92 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.92 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.92 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.92 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.92 new_error -> Prelude.error([]) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.92 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.92 new_primMinusNatS2 -> Main.Zero 162.74/105.92 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.92 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.92 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.92 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.92 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.92 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.92 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.92 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.92 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.92 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.92 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.92 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.92 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.92 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.92 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.92 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.92 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.92 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.92 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.92 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.92 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.92 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.92 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.92 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.92 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.92 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.92 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.92 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.92 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.92 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.92 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.92 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.92 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.92 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.92 162.74/105.92 The set Q consists of the following terms: 162.74/105.92 162.74/105.92 new_reduce2D1(x0, x1) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.92 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.92 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_primModNatS02(x0, x1) 162.74/105.92 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.92 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.92 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.92 new_absReal1(x0) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.92 new_gcd22(Main.Zero, Main.Zero) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.92 new_error0 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.92 new_gcd22(Main.Succ(x0), x1) 162.74/105.92 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.92 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primDivNatS02(x0, x1) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.92 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.92 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_error 162.74/105.92 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.92 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primModNatS1(Main.Zero, x0) 162.74/105.92 new_primRemInt(Main.Neg(x0), x1) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.92 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.92 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.92 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.92 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.92 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Zero, x0) 162.74/105.92 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.92 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_absMyInt(Main.Zero) 162.74/105.92 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.92 new_absMyInt(Main.Succ(x0)) 162.74/105.92 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_gcd2(Main.Succ(x0), x1) 162.74/105.92 new_absMyInt0(Main.Zero) 162.74/105.92 new_primMulNat1(Main.Zero) 162.74/105.92 new_absReal10 162.74/105.92 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.92 new_gcd0(x0, x1) 162.74/105.92 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.92 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_gcd2(Main.Zero, Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.92 new_reduce2D(x0, x1) 162.74/105.92 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.92 new_reduce2D0(x0, x1) 162.74/105.92 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_primMinusNatS2 162.74/105.92 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primMulNat1(Main.Succ(x0)) 162.74/105.92 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.92 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd21(Main.Succ(x0), x1) 162.74/105.92 new_absMyInt0(Main.Succ(x0)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.92 new_reduce2D2(x0, x1) 162.74/105.92 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.92 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.92 new_primMinusNatS1(x0) 162.74/105.92 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_primRemInt(Main.Pos(x0), x1) 162.74/105.92 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd21(Main.Zero, Main.Zero) 162.74/105.92 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.92 new_new_pr2F0G11(Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.92 162.74/105.92 We have to consider all minimal (P,Q,R)-chains. 162.74/105.92 ---------------------------------------- 162.74/105.92 162.74/105.92 (636) TransformationProof (EQUIVALENT) 162.74/105.92 By narrowing [LPAR04] the rule new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(x0)))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS01(x0, Main.Zero, x0, Main.Zero))) at position [2,0] we obtained the following new rules [LPAR04]: 162.74/105.92 162.74/105.92 (new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS02(Main.Succ(x2), Main.Zero))),new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS02(Main.Succ(x2), Main.Zero)))) 162.74/105.92 (new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS02(Main.Zero, Main.Zero))),new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS02(Main.Zero, Main.Zero)))) 162.74/105.92 162.74/105.92 162.74/105.92 ---------------------------------------- 162.74/105.92 162.74/105.92 (637) 162.74/105.92 Obligation: 162.74/105.92 Q DP problem: 162.74/105.92 The TRS P consists of the following rules: 162.74/105.92 162.74/105.92 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.92 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.92 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.92 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.92 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.92 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.92 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.92 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.92 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.92 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.92 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) 162.74/105.92 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.92 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS02(Main.Succ(x2), Main.Zero))) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS02(Main.Zero, Main.Zero))) 162.74/105.92 162.74/105.92 The TRS R consists of the following rules: 162.74/105.92 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.92 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.92 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.92 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.92 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.92 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.92 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.92 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.92 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.92 new_error0 -> Prelude.error([]) 162.74/105.92 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.92 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.92 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.92 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.92 new_error -> Prelude.error([]) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.92 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.92 new_primMinusNatS2 -> Main.Zero 162.74/105.92 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.92 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.92 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.92 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.92 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.92 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.92 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.92 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.92 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.92 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.92 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.92 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.92 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.92 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.92 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.92 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.92 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.92 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.92 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.92 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.92 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.92 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.92 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.92 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.92 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.92 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.92 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.92 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.92 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.92 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.92 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.92 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.92 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.92 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.92 162.74/105.92 The set Q consists of the following terms: 162.74/105.92 162.74/105.92 new_reduce2D1(x0, x1) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.92 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.92 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_primModNatS02(x0, x1) 162.74/105.92 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.92 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.92 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.92 new_absReal1(x0) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.92 new_gcd22(Main.Zero, Main.Zero) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.92 new_error0 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.92 new_gcd22(Main.Succ(x0), x1) 162.74/105.92 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.92 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primDivNatS02(x0, x1) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.92 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.92 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_error 162.74/105.92 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.92 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primModNatS1(Main.Zero, x0) 162.74/105.92 new_primRemInt(Main.Neg(x0), x1) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.92 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.92 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.92 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.92 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.92 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Zero, x0) 162.74/105.92 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.92 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_absMyInt(Main.Zero) 162.74/105.92 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.92 new_absMyInt(Main.Succ(x0)) 162.74/105.92 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_gcd2(Main.Succ(x0), x1) 162.74/105.92 new_absMyInt0(Main.Zero) 162.74/105.92 new_primMulNat1(Main.Zero) 162.74/105.92 new_absReal10 162.74/105.92 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.92 new_gcd0(x0, x1) 162.74/105.92 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.92 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_gcd2(Main.Zero, Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.92 new_reduce2D(x0, x1) 162.74/105.92 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.92 new_reduce2D0(x0, x1) 162.74/105.92 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_primMinusNatS2 162.74/105.92 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primMulNat1(Main.Succ(x0)) 162.74/105.92 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.92 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd21(Main.Succ(x0), x1) 162.74/105.92 new_absMyInt0(Main.Succ(x0)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.92 new_reduce2D2(x0, x1) 162.74/105.92 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.92 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.92 new_primMinusNatS1(x0) 162.74/105.92 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_primRemInt(Main.Pos(x0), x1) 162.74/105.92 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd21(Main.Zero, Main.Zero) 162.74/105.92 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.92 new_new_pr2F0G11(Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.92 162.74/105.92 We have to consider all minimal (P,Q,R)-chains. 162.74/105.92 ---------------------------------------- 162.74/105.92 162.74/105.92 (638) TransformationProof (EQUIVALENT) 162.74/105.92 By rewriting [LPAR04] the rule new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS02(Main.Succ(x2), Main.Zero))) at position [2,0] we obtained the following new rules [LPAR04]: 162.74/105.92 162.74/105.92 (new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Zero))))),new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Zero)))))) 162.74/105.92 162.74/105.92 162.74/105.92 ---------------------------------------- 162.74/105.92 162.74/105.92 (639) 162.74/105.92 Obligation: 162.74/105.92 Q DP problem: 162.74/105.92 The TRS P consists of the following rules: 162.74/105.92 162.74/105.92 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.92 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.92 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.92 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.92 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.92 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.92 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.92 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.92 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.92 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.92 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) 162.74/105.92 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.92 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS02(Main.Zero, Main.Zero))) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Zero))))) 162.74/105.92 162.74/105.92 The TRS R consists of the following rules: 162.74/105.92 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.92 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.92 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.92 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.92 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.92 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.92 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.92 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.92 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.92 new_error0 -> Prelude.error([]) 162.74/105.92 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.92 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.92 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.92 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.92 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.92 new_error -> Prelude.error([]) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.92 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.92 new_primMinusNatS2 -> Main.Zero 162.74/105.92 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.92 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.92 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.92 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.92 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.92 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.92 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.92 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.92 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.92 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.92 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.92 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.92 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.92 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.92 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.92 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.92 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.92 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.92 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.92 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.92 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.92 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.92 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.92 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.92 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.92 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.92 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.92 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.92 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.92 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.92 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.92 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.92 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.92 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.92 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.92 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.92 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.92 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.92 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.92 162.74/105.92 The set Q consists of the following terms: 162.74/105.92 162.74/105.92 new_reduce2D1(x0, x1) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.92 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.92 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_primModNatS02(x0, x1) 162.74/105.92 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.92 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.92 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.92 new_absReal1(x0) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.92 new_gcd22(Main.Zero, Main.Zero) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.92 new_error0 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.92 new_gcd22(Main.Succ(x0), x1) 162.74/105.92 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.92 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primDivNatS02(x0, x1) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.92 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.92 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.92 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_error 162.74/105.92 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.92 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primModNatS1(Main.Zero, x0) 162.74/105.92 new_primRemInt(Main.Neg(x0), x1) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.92 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.92 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.92 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.92 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.92 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Zero, x0) 162.74/105.92 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.92 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_absMyInt(Main.Zero) 162.74/105.92 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.92 new_absMyInt(Main.Succ(x0)) 162.74/105.92 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.92 new_gcd2(Main.Succ(x0), x1) 162.74/105.92 new_absMyInt0(Main.Zero) 162.74/105.92 new_primMulNat1(Main.Zero) 162.74/105.92 new_absReal10 162.74/105.92 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.92 new_gcd0(x0, x1) 162.74/105.92 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.92 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_gcd2(Main.Zero, Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.92 new_reduce2D(x0, x1) 162.74/105.92 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.92 new_reduce2D0(x0, x1) 162.74/105.92 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_primMinusNatS2 162.74/105.92 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.92 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primMulNat1(Main.Succ(x0)) 162.74/105.92 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.92 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.92 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.92 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd21(Main.Succ(x0), x1) 162.74/105.92 new_absMyInt0(Main.Succ(x0)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.92 new_reduce2D2(x0, x1) 162.74/105.92 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.92 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.92 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.92 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.92 new_primMinusNatS1(x0) 162.74/105.92 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_primRemInt(Main.Pos(x0), x1) 162.74/105.92 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.92 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.92 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.92 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.92 new_gcd21(Main.Zero, Main.Zero) 162.74/105.92 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.92 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.92 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.92 new_new_pr2F0G11(Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.92 162.74/105.92 We have to consider all minimal (P,Q,R)-chains. 162.74/105.92 ---------------------------------------- 162.74/105.92 162.74/105.92 (640) TransformationProof (EQUIVALENT) 162.74/105.92 By rewriting [LPAR04] the rule new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(new_primDivNatS02(Main.Zero, Main.Zero))) at position [2,0] we obtained the following new rules [LPAR04]: 162.74/105.92 162.74/105.92 (new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero))))),new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero)))))) 162.74/105.92 162.74/105.92 162.74/105.92 ---------------------------------------- 162.74/105.92 162.74/105.92 (641) 162.74/105.92 Obligation: 162.74/105.92 Q DP problem: 162.74/105.92 The TRS P consists of the following rules: 162.74/105.92 162.74/105.92 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.92 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.92 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.92 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.92 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.92 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.92 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.92 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.92 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.92 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.92 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.92 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) 162.74/105.92 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.92 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Zero))))) 162.74/105.92 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero))))) 162.74/105.92 162.74/105.92 The TRS R consists of the following rules: 162.74/105.92 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.92 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.92 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.92 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.92 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.92 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.92 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.92 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.92 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.92 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.92 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.92 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.92 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.92 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.92 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.92 new_error0 -> Prelude.error([]) 162.74/105.92 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.92 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.93 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.93 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.93 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.93 new_error -> Prelude.error([]) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.93 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.93 new_primMinusNatS2 -> Main.Zero 162.74/105.93 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.93 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.93 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.93 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.93 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.93 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.93 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.93 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.93 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.93 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.93 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.93 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.93 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.93 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.93 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.93 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.93 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.93 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.93 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.93 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.93 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.93 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.93 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.93 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.93 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.93 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.93 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.93 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.93 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.93 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.93 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.93 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.93 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.93 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.93 162.74/105.93 The set Q consists of the following terms: 162.74/105.93 162.74/105.93 new_reduce2D1(x0, x1) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.93 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.93 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_primModNatS02(x0, x1) 162.74/105.93 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.93 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.93 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.93 new_absReal1(x0) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.93 new_gcd22(Main.Zero, Main.Zero) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.93 new_error0 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.93 new_gcd22(Main.Succ(x0), x1) 162.74/105.93 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.93 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primDivNatS02(x0, x1) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.93 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.93 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_error 162.74/105.93 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.93 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primModNatS1(Main.Zero, x0) 162.74/105.93 new_primRemInt(Main.Neg(x0), x1) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.93 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.93 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.93 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.93 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.93 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Zero, x0) 162.74/105.93 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.93 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_absMyInt(Main.Zero) 162.74/105.93 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.93 new_absMyInt(Main.Succ(x0)) 162.74/105.93 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_gcd2(Main.Succ(x0), x1) 162.74/105.93 new_absMyInt0(Main.Zero) 162.74/105.93 new_primMulNat1(Main.Zero) 162.74/105.93 new_absReal10 162.74/105.93 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.93 new_gcd0(x0, x1) 162.74/105.93 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.93 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_gcd2(Main.Zero, Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.93 new_reduce2D(x0, x1) 162.74/105.93 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.93 new_reduce2D0(x0, x1) 162.74/105.93 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_primMinusNatS2 162.74/105.93 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primMulNat1(Main.Succ(x0)) 162.74/105.93 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.93 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd21(Main.Succ(x0), x1) 162.74/105.93 new_absMyInt0(Main.Succ(x0)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.93 new_reduce2D2(x0, x1) 162.74/105.93 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.93 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.93 new_primMinusNatS1(x0) 162.74/105.93 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_primRemInt(Main.Pos(x0), x1) 162.74/105.93 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd21(Main.Zero, Main.Zero) 162.74/105.93 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.93 new_new_pr2F0G11(Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.93 162.74/105.93 We have to consider all minimal (P,Q,R)-chains. 162.74/105.93 ---------------------------------------- 162.74/105.93 162.74/105.93 (642) TransformationProof (EQUIVALENT) 162.74/105.93 By rewriting [LPAR04] the rule new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Succ(x2), Main.Zero), Main.Succ(Main.Zero))))) at position [2,0,0,0] we obtained the following new rules [LPAR04]: 162.74/105.93 162.74/105.93 (new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero))))),new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero)))))) 162.74/105.93 162.74/105.93 162.74/105.93 ---------------------------------------- 162.74/105.93 162.74/105.93 (643) 162.74/105.93 Obligation: 162.74/105.93 Q DP problem: 162.74/105.93 The TRS P consists of the following rules: 162.74/105.93 162.74/105.93 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.93 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.93 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.93 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.93 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.93 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.93 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.93 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.93 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.93 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero))))) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero))))) 162.74/105.93 162.74/105.93 The TRS R consists of the following rules: 162.74/105.93 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.93 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.93 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.93 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.93 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.93 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.93 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.93 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.93 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.93 new_error0 -> Prelude.error([]) 162.74/105.93 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.93 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.93 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.93 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.93 new_error -> Prelude.error([]) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.93 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.93 new_primMinusNatS2 -> Main.Zero 162.74/105.93 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.93 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.93 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.93 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.93 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.93 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.93 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.93 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.93 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.93 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.93 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.93 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.93 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.93 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.93 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.93 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.93 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.93 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.93 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.93 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.93 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.93 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.93 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.93 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.93 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.93 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.93 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.93 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.93 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.93 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.93 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.93 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.93 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.93 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.93 162.74/105.93 The set Q consists of the following terms: 162.74/105.93 162.74/105.93 new_reduce2D1(x0, x1) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.93 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.93 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_primModNatS02(x0, x1) 162.74/105.93 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.93 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.93 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.93 new_absReal1(x0) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.93 new_gcd22(Main.Zero, Main.Zero) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.93 new_error0 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.93 new_gcd22(Main.Succ(x0), x1) 162.74/105.93 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.93 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primDivNatS02(x0, x1) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.93 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.93 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_error 162.74/105.93 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.93 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primModNatS1(Main.Zero, x0) 162.74/105.93 new_primRemInt(Main.Neg(x0), x1) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.93 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.93 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.93 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.93 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.93 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Zero, x0) 162.74/105.93 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.93 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_absMyInt(Main.Zero) 162.74/105.93 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.93 new_absMyInt(Main.Succ(x0)) 162.74/105.93 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_gcd2(Main.Succ(x0), x1) 162.74/105.93 new_absMyInt0(Main.Zero) 162.74/105.93 new_primMulNat1(Main.Zero) 162.74/105.93 new_absReal10 162.74/105.93 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.93 new_gcd0(x0, x1) 162.74/105.93 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.93 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_gcd2(Main.Zero, Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.93 new_reduce2D(x0, x1) 162.74/105.93 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.93 new_reduce2D0(x0, x1) 162.74/105.93 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_primMinusNatS2 162.74/105.93 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primMulNat1(Main.Succ(x0)) 162.74/105.93 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.93 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd21(Main.Succ(x0), x1) 162.74/105.93 new_absMyInt0(Main.Succ(x0)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.93 new_reduce2D2(x0, x1) 162.74/105.93 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.93 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.93 new_primMinusNatS1(x0) 162.74/105.93 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_primRemInt(Main.Pos(x0), x1) 162.74/105.93 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd21(Main.Zero, Main.Zero) 162.74/105.93 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.93 new_new_pr2F0G11(Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.93 162.74/105.93 We have to consider all minimal (P,Q,R)-chains. 162.74/105.93 ---------------------------------------- 162.74/105.93 162.74/105.93 (644) TransformationProof (EQUIVALENT) 162.74/105.93 By rewriting [LPAR04] the rule new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(new_primMinusNatS0(Main.Zero, Main.Zero), Main.Succ(Main.Zero))))) at position [2,0,0,0] we obtained the following new rules [LPAR04]: 162.74/105.93 162.74/105.93 (new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(Main.Zero, Main.Succ(Main.Zero))))),new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(Main.Zero, Main.Succ(Main.Zero)))))) 162.74/105.93 162.74/105.93 162.74/105.93 ---------------------------------------- 162.74/105.93 162.74/105.93 (645) 162.74/105.93 Obligation: 162.74/105.93 Q DP problem: 162.74/105.93 The TRS P consists of the following rules: 162.74/105.93 162.74/105.93 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.93 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.93 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.93 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.93 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.93 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.93 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.93 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.93 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.93 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero))))) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(Main.Zero, Main.Succ(Main.Zero))))) 162.74/105.93 162.74/105.93 The TRS R consists of the following rules: 162.74/105.93 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.93 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.93 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.93 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.93 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.93 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.93 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.93 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.93 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.93 new_error0 -> Prelude.error([]) 162.74/105.93 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.93 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.93 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.93 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.93 new_error -> Prelude.error([]) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.93 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.93 new_primMinusNatS2 -> Main.Zero 162.74/105.93 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.93 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.93 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.93 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.93 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.93 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.93 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.93 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.93 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.93 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.93 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.93 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.93 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.93 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.93 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.93 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.93 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.93 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.93 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.93 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.93 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.93 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.93 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.93 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.93 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.93 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.93 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.93 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.93 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.93 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.93 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.93 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.93 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.93 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.93 162.74/105.93 The set Q consists of the following terms: 162.74/105.93 162.74/105.93 new_reduce2D1(x0, x1) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.93 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.93 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_primModNatS02(x0, x1) 162.74/105.93 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.93 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.93 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.93 new_absReal1(x0) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.93 new_gcd22(Main.Zero, Main.Zero) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.93 new_error0 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.93 new_gcd22(Main.Succ(x0), x1) 162.74/105.93 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.93 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primDivNatS02(x0, x1) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.93 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.93 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_error 162.74/105.93 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.93 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primModNatS1(Main.Zero, x0) 162.74/105.93 new_primRemInt(Main.Neg(x0), x1) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.93 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.93 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.93 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.93 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.93 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Zero, x0) 162.74/105.93 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.93 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_absMyInt(Main.Zero) 162.74/105.93 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.93 new_absMyInt(Main.Succ(x0)) 162.74/105.93 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_gcd2(Main.Succ(x0), x1) 162.74/105.93 new_absMyInt0(Main.Zero) 162.74/105.93 new_primMulNat1(Main.Zero) 162.74/105.93 new_absReal10 162.74/105.93 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.93 new_gcd0(x0, x1) 162.74/105.93 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.93 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_gcd2(Main.Zero, Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.93 new_reduce2D(x0, x1) 162.74/105.93 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.93 new_reduce2D0(x0, x1) 162.74/105.93 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_primMinusNatS2 162.74/105.93 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primMulNat1(Main.Succ(x0)) 162.74/105.93 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.93 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd21(Main.Succ(x0), x1) 162.74/105.93 new_absMyInt0(Main.Succ(x0)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.93 new_reduce2D2(x0, x1) 162.74/105.93 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.93 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.93 new_primMinusNatS1(x0) 162.74/105.93 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_primRemInt(Main.Pos(x0), x1) 162.74/105.93 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd21(Main.Zero, Main.Zero) 162.74/105.93 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.93 new_new_pr2F0G11(Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.93 162.74/105.93 We have to consider all minimal (P,Q,R)-chains. 162.74/105.93 ---------------------------------------- 162.74/105.93 162.74/105.93 (646) TransformationProof (EQUIVALENT) 162.74/105.93 By rewriting [LPAR04] the rule new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(Main.Zero, Main.Succ(Main.Zero))))) at position [2,0,0] we obtained the following new rules [LPAR04]: 162.74/105.93 162.74/105.93 (new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Zero))),new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Zero)))) 162.74/105.93 162.74/105.93 162.74/105.93 ---------------------------------------- 162.74/105.93 162.74/105.93 (647) 162.74/105.93 Obligation: 162.74/105.93 Q DP problem: 162.74/105.93 The TRS P consists of the following rules: 162.74/105.93 162.74/105.93 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.93 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.93 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.93 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.93 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.93 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.93 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.93 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.93 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.93 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero))))) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Zero))) 162.74/105.93 162.74/105.93 The TRS R consists of the following rules: 162.74/105.93 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.93 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.93 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.93 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.93 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.93 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.93 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.93 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.93 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.93 new_error0 -> Prelude.error([]) 162.74/105.93 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.93 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.93 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.93 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.93 new_error -> Prelude.error([]) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.93 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.93 new_primMinusNatS2 -> Main.Zero 162.74/105.93 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.93 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.93 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.93 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.93 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.93 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.93 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.93 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.93 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.93 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.93 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.93 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.93 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.93 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.93 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.93 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.93 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.93 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.93 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.93 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.93 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.93 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.93 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.93 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.93 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.93 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.93 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.93 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.93 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.93 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.93 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.93 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.93 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.93 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.93 162.74/105.93 The set Q consists of the following terms: 162.74/105.93 162.74/105.93 new_reduce2D1(x0, x1) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.93 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.93 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_primModNatS02(x0, x1) 162.74/105.93 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.93 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.93 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.93 new_absReal1(x0) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.93 new_gcd22(Main.Zero, Main.Zero) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.93 new_error0 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.93 new_gcd22(Main.Succ(x0), x1) 162.74/105.93 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.93 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primDivNatS02(x0, x1) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.93 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.93 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_error 162.74/105.93 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.93 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primModNatS1(Main.Zero, x0) 162.74/105.93 new_primRemInt(Main.Neg(x0), x1) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.93 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.93 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.93 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.93 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.93 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Zero, x0) 162.74/105.93 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.93 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_absMyInt(Main.Zero) 162.74/105.93 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.93 new_absMyInt(Main.Succ(x0)) 162.74/105.93 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_gcd2(Main.Succ(x0), x1) 162.74/105.93 new_absMyInt0(Main.Zero) 162.74/105.93 new_primMulNat1(Main.Zero) 162.74/105.93 new_absReal10 162.74/105.93 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.93 new_gcd0(x0, x1) 162.74/105.93 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.93 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_gcd2(Main.Zero, Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.93 new_reduce2D(x0, x1) 162.74/105.93 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.93 new_reduce2D0(x0, x1) 162.74/105.93 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_primMinusNatS2 162.74/105.93 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primMulNat1(Main.Succ(x0)) 162.74/105.93 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.93 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd21(Main.Succ(x0), x1) 162.74/105.93 new_absMyInt0(Main.Succ(x0)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.93 new_reduce2D2(x0, x1) 162.74/105.93 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.93 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.93 new_primMinusNatS1(x0) 162.74/105.93 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_primRemInt(Main.Pos(x0), x1) 162.74/105.93 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd21(Main.Zero, Main.Zero) 162.74/105.93 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.93 new_new_pr2F0G11(Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.93 162.74/105.93 We have to consider all minimal (P,Q,R)-chains. 162.74/105.93 ---------------------------------------- 162.74/105.93 162.74/105.93 (648) TransformationProof (EQUIVALENT) 162.74/105.93 By narrowing [LPAR04] the rule new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) at position [3] we obtained the following new rules [LPAR04]: 162.74/105.93 162.74/105.93 (new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), new_new_pr2F0G11(x0)),new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), new_new_pr2F0G11(x0))) 162.74/105.93 (new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)),new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero))) 162.74/105.93 (new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))),new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.74/105.93 162.74/105.93 162.74/105.93 ---------------------------------------- 162.74/105.93 162.74/105.93 (649) 162.74/105.93 Obligation: 162.74/105.93 Q DP problem: 162.74/105.93 The TRS P consists of the following rules: 162.74/105.93 162.74/105.93 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.93 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.93 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.93 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.93 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.93 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.93 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.93 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.93 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.93 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero))))) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), new_new_pr2F0G11(x0)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 162.74/105.93 The TRS R consists of the following rules: 162.74/105.93 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.93 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.93 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.93 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.93 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.93 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.93 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.93 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.93 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.93 new_error0 -> Prelude.error([]) 162.74/105.93 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.93 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.93 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.93 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.93 new_error -> Prelude.error([]) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.93 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.93 new_primMinusNatS2 -> Main.Zero 162.74/105.93 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.93 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.93 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.93 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.93 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.93 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.93 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.93 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.93 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.93 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.93 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.93 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.93 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.93 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.93 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.93 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.93 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.93 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.93 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.93 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.93 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.93 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.93 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.93 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.93 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.93 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.93 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.93 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.93 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.93 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.93 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.93 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.93 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.93 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.93 162.74/105.93 The set Q consists of the following terms: 162.74/105.93 162.74/105.93 new_reduce2D1(x0, x1) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.93 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.93 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_primModNatS02(x0, x1) 162.74/105.93 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.93 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.93 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.93 new_absReal1(x0) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.93 new_gcd22(Main.Zero, Main.Zero) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.93 new_error0 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.93 new_gcd22(Main.Succ(x0), x1) 162.74/105.93 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.93 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primDivNatS02(x0, x1) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.93 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.93 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_error 162.74/105.93 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.93 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primModNatS1(Main.Zero, x0) 162.74/105.93 new_primRemInt(Main.Neg(x0), x1) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.93 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.93 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.93 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.93 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.93 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Zero, x0) 162.74/105.93 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.93 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_absMyInt(Main.Zero) 162.74/105.93 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.93 new_absMyInt(Main.Succ(x0)) 162.74/105.93 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_gcd2(Main.Succ(x0), x1) 162.74/105.93 new_absMyInt0(Main.Zero) 162.74/105.93 new_primMulNat1(Main.Zero) 162.74/105.93 new_absReal10 162.74/105.93 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.93 new_gcd0(x0, x1) 162.74/105.93 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.93 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_gcd2(Main.Zero, Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.93 new_reduce2D(x0, x1) 162.74/105.93 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.93 new_reduce2D0(x0, x1) 162.74/105.93 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_primMinusNatS2 162.74/105.93 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primMulNat1(Main.Succ(x0)) 162.74/105.93 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.93 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd21(Main.Succ(x0), x1) 162.74/105.93 new_absMyInt0(Main.Succ(x0)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.93 new_reduce2D2(x0, x1) 162.74/105.93 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.93 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.93 new_primMinusNatS1(x0) 162.74/105.93 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_primRemInt(Main.Pos(x0), x1) 162.74/105.93 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd21(Main.Zero, Main.Zero) 162.74/105.93 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.93 new_new_pr2F0G11(Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.93 162.74/105.93 We have to consider all minimal (P,Q,R)-chains. 162.74/105.93 ---------------------------------------- 162.74/105.93 162.74/105.93 (650) TransformationProof (EQUIVALENT) 162.74/105.93 By narrowing [LPAR04] the rule new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))), new_new_pr2F0G11(x0)) at position [3] we obtained the following new rules [LPAR04]: 162.74/105.93 162.74/105.93 (new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), new_new_pr2F0G11(x0)),new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), new_new_pr2F0G11(x0))) 162.74/105.93 (new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)),new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero))) 162.74/105.93 (new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))),new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.74/105.93 162.74/105.93 162.74/105.93 ---------------------------------------- 162.74/105.93 162.74/105.93 (651) 162.74/105.93 Obligation: 162.74/105.93 Q DP problem: 162.74/105.93 The TRS P consists of the following rules: 162.74/105.93 162.74/105.93 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.93 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.93 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.93 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.93 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.93 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.93 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.93 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.93 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.93 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero))))) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), new_new_pr2F0G11(x0)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), new_new_pr2F0G11(x0)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 162.74/105.93 The TRS R consists of the following rules: 162.74/105.93 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.93 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.93 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.93 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.93 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.93 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.93 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.93 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.93 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.93 new_error0 -> Prelude.error([]) 162.74/105.93 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.93 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.93 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.93 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.93 new_error -> Prelude.error([]) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.93 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.93 new_primMinusNatS2 -> Main.Zero 162.74/105.93 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.93 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.93 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.93 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.93 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.93 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.93 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.93 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.93 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.93 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.93 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.93 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.93 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.93 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.93 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.93 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.93 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.93 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.93 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.93 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.93 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.93 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.93 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.93 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.93 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.93 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.93 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.93 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.93 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.93 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.93 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.93 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.93 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.93 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.93 162.74/105.93 The set Q consists of the following terms: 162.74/105.93 162.74/105.93 new_reduce2D1(x0, x1) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.93 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.93 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_primModNatS02(x0, x1) 162.74/105.93 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.93 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.93 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.93 new_absReal1(x0) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.93 new_gcd22(Main.Zero, Main.Zero) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.93 new_error0 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.93 new_gcd22(Main.Succ(x0), x1) 162.74/105.93 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.93 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primDivNatS02(x0, x1) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.93 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.93 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_error 162.74/105.93 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.93 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primModNatS1(Main.Zero, x0) 162.74/105.93 new_primRemInt(Main.Neg(x0), x1) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.93 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.93 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.93 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.93 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.93 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Zero, x0) 162.74/105.93 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.93 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_absMyInt(Main.Zero) 162.74/105.93 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.93 new_absMyInt(Main.Succ(x0)) 162.74/105.93 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_gcd2(Main.Succ(x0), x1) 162.74/105.93 new_absMyInt0(Main.Zero) 162.74/105.93 new_primMulNat1(Main.Zero) 162.74/105.93 new_absReal10 162.74/105.93 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.93 new_gcd0(x0, x1) 162.74/105.93 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.93 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_gcd2(Main.Zero, Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.93 new_reduce2D(x0, x1) 162.74/105.93 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.93 new_reduce2D0(x0, x1) 162.74/105.93 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_primMinusNatS2 162.74/105.93 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primMulNat1(Main.Succ(x0)) 162.74/105.93 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.93 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd21(Main.Succ(x0), x1) 162.74/105.93 new_absMyInt0(Main.Succ(x0)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.93 new_reduce2D2(x0, x1) 162.74/105.93 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.93 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.93 new_primMinusNatS1(x0) 162.74/105.93 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_primRemInt(Main.Pos(x0), x1) 162.74/105.93 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd21(Main.Zero, Main.Zero) 162.74/105.93 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.93 new_new_pr2F0G11(Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.93 162.74/105.93 We have to consider all minimal (P,Q,R)-chains. 162.74/105.93 ---------------------------------------- 162.74/105.93 162.74/105.93 (652) TransformationProof (EQUIVALENT) 162.74/105.93 By narrowing [LPAR04] the rule new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), new_new_pr2F0G11(x0)) at position [3] we obtained the following new rules [LPAR04]: 162.74/105.93 162.74/105.93 (new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))), new_new_pr2F0G11(x0)),new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))), new_new_pr2F0G11(x0))) 162.74/105.93 (new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero)),new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero))) 162.74/105.93 (new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))),new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.74/105.93 162.74/105.93 162.74/105.93 ---------------------------------------- 162.74/105.93 162.74/105.93 (653) 162.74/105.93 Obligation: 162.74/105.93 Q DP problem: 162.74/105.93 The TRS P consists of the following rules: 162.74/105.93 162.74/105.93 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.93 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.93 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.93 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.93 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.93 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.93 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.93 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.93 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.93 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero))))) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), new_new_pr2F0G11(x0)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))), new_new_pr2F0G11(x0)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 162.74/105.93 The TRS R consists of the following rules: 162.74/105.93 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.93 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.93 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.93 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.93 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.93 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.93 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.93 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.93 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.93 new_error0 -> Prelude.error([]) 162.74/105.93 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.93 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.93 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.93 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.93 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.93 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.93 new_error -> Prelude.error([]) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.93 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.93 new_primMinusNatS2 -> Main.Zero 162.74/105.93 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.93 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.93 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.93 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.93 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.93 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.93 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.93 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.93 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.93 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.93 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.93 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.93 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.93 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.93 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.93 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.93 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.93 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.93 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.93 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.93 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.93 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.93 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.93 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.93 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.93 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.93 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.93 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.93 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.93 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.93 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.93 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.93 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.93 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.93 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.93 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.93 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.93 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.93 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.93 162.74/105.93 The set Q consists of the following terms: 162.74/105.93 162.74/105.93 new_reduce2D1(x0, x1) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.93 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.93 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_primModNatS02(x0, x1) 162.74/105.93 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.93 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.93 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.93 new_absReal1(x0) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.93 new_gcd22(Main.Zero, Main.Zero) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.93 new_error0 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.93 new_gcd22(Main.Succ(x0), x1) 162.74/105.93 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.93 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primDivNatS02(x0, x1) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.93 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.93 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.93 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_error 162.74/105.93 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.93 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primModNatS1(Main.Zero, x0) 162.74/105.93 new_primRemInt(Main.Neg(x0), x1) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.93 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.93 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.93 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.93 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.93 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Zero, x0) 162.74/105.93 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.93 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_absMyInt(Main.Zero) 162.74/105.93 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.93 new_absMyInt(Main.Succ(x0)) 162.74/105.93 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.93 new_gcd2(Main.Succ(x0), x1) 162.74/105.93 new_absMyInt0(Main.Zero) 162.74/105.93 new_primMulNat1(Main.Zero) 162.74/105.93 new_absReal10 162.74/105.93 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.93 new_gcd0(x0, x1) 162.74/105.93 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.93 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_gcd2(Main.Zero, Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.93 new_reduce2D(x0, x1) 162.74/105.93 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.93 new_reduce2D0(x0, x1) 162.74/105.93 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_primMinusNatS2 162.74/105.93 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.93 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primMulNat1(Main.Succ(x0)) 162.74/105.93 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.93 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.93 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.93 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd21(Main.Succ(x0), x1) 162.74/105.93 new_absMyInt0(Main.Succ(x0)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.93 new_reduce2D2(x0, x1) 162.74/105.93 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.93 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.93 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.93 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.93 new_primMinusNatS1(x0) 162.74/105.93 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_primRemInt(Main.Pos(x0), x1) 162.74/105.93 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.93 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.93 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.93 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.93 new_gcd21(Main.Zero, Main.Zero) 162.74/105.93 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.93 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.93 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.93 new_new_pr2F0G11(Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.93 162.74/105.93 We have to consider all minimal (P,Q,R)-chains. 162.74/105.93 ---------------------------------------- 162.74/105.93 162.74/105.93 (654) TransformationProof (EQUIVALENT) 162.74/105.93 By narrowing [LPAR04] the rule new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))), new_new_pr2F0G11(x0)) at position [3] we obtained the following new rules [LPAR04]: 162.74/105.93 162.74/105.93 (new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))), new_new_pr2F0G11(x0)),new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))), new_new_pr2F0G11(x0))) 162.74/105.93 (new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero)),new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero))) 162.74/105.93 (new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))),new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.74/105.93 162.74/105.93 162.74/105.93 ---------------------------------------- 162.74/105.93 162.74/105.93 (655) 162.74/105.93 Obligation: 162.74/105.93 Q DP problem: 162.74/105.93 The TRS P consists of the following rules: 162.74/105.93 162.74/105.93 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.93 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.93 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.93 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.93 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.93 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.93 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.93 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.93 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.93 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero))))) 162.74/105.93 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))), new_new_pr2F0G11(x0)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))), new_new_pr2F0G11(x0)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.93 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.93 162.74/105.93 The TRS R consists of the following rules: 162.74/105.93 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.93 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.93 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.93 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.93 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.93 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.93 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.93 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.93 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.93 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.93 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.94 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.94 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.94 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.94 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.94 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.94 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.94 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.94 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.94 new_error0 -> Prelude.error([]) 162.74/105.94 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.94 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.94 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.94 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.94 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.94 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.94 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.94 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.94 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.94 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.94 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.94 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.94 new_error -> Prelude.error([]) 162.74/105.94 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.94 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.94 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.94 new_primMinusNatS2 -> Main.Zero 162.74/105.94 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.94 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.94 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.94 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.94 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.94 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.94 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.94 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.94 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.94 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.94 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.94 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.94 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.94 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.94 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.94 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.94 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.94 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.94 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.94 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.94 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.94 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.94 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.94 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.94 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.94 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.94 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.94 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.94 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.94 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.94 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.94 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.94 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.94 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.94 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.94 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.94 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.94 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.94 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.94 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.94 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.94 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.94 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.94 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.94 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.94 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.94 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.94 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.94 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.94 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.94 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.94 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.94 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.94 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.94 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.94 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.94 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.94 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.94 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.94 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.94 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.94 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.94 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.94 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.94 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.94 162.74/105.94 The set Q consists of the following terms: 162.74/105.94 162.74/105.94 new_reduce2D1(x0, x1) 162.74/105.94 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.94 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.94 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.74/105.94 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.74/105.94 new_primModNatS02(x0, x1) 162.74/105.94 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.94 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.94 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.94 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.74/105.94 new_gcd20(Main.Zero, x0, Main.Zero) 162.74/105.94 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.74/105.94 new_absReal1(x0) 162.74/105.94 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.74/105.94 new_gcd22(Main.Zero, Main.Zero) 162.74/105.94 new_primPlusNat0(Main.Zero, Main.Zero) 162.74/105.94 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.74/105.94 new_error0 162.74/105.94 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.74/105.94 new_gcd22(Main.Succ(x0), x1) 162.74/105.94 new_gcd20(Main.Succ(x0), x1, x2) 162.74/105.94 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.74/105.94 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.94 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.94 new_primDivNatS02(x0, x1) 162.74/105.94 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.94 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.74/105.94 new_primRemInt0(Main.Neg(x0), x1) 162.74/105.94 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.74/105.94 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.94 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.94 new_error 162.74/105.94 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.74/105.94 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.94 new_primModNatS1(Main.Zero, x0) 162.74/105.94 new_primRemInt(Main.Neg(x0), x1) 162.74/105.94 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.74/105.94 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.74/105.94 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.94 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.74/105.94 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.74/105.94 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.74/105.94 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.74/105.94 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.74/105.94 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.94 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.94 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.74/105.94 new_primDivNatS3(Main.Zero, x0) 162.74/105.94 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.94 new_gcd21(Main.Zero, Main.Succ(x0)) 162.74/105.94 new_absMyInt(Main.Zero) 162.74/105.94 new_primMulNat0(Main.Zero, Main.Zero) 162.74/105.94 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.74/105.94 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.74/105.94 new_absMyInt(Main.Succ(x0)) 162.74/105.94 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.74/105.94 new_gcd2(Main.Succ(x0), x1) 162.74/105.94 new_absMyInt0(Main.Zero) 162.74/105.94 new_primMulNat1(Main.Zero) 162.74/105.94 new_absReal10 162.74/105.94 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.94 new_gcd0(x0, x1) 162.74/105.94 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.74/105.94 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.94 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.74/105.94 new_gcd2(Main.Zero, Main.Zero) 162.74/105.94 new_primMinusNatS0(Main.Zero, Main.Zero) 162.74/105.94 new_reduce2D(x0, x1) 162.74/105.94 new_gcd22(Main.Zero, Main.Succ(x0)) 162.74/105.94 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.74/105.94 new_reduce2D0(x0, x1) 162.74/105.94 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.74/105.94 new_primMinusNatS2 162.74/105.94 new_gcd2(Main.Zero, Main.Succ(x0)) 162.74/105.94 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.94 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.94 new_primMulNat1(Main.Succ(x0)) 162.74/105.94 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.94 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.94 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.74/105.94 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.94 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.74/105.94 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.74/105.94 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.74/105.94 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.94 new_gcd21(Main.Succ(x0), x1) 162.74/105.94 new_absMyInt0(Main.Succ(x0)) 162.74/105.94 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.74/105.94 new_reduce2D2(x0, x1) 162.74/105.94 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.74/105.94 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.74/105.94 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.74/105.94 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.74/105.94 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.74/105.94 new_primMinusNatS1(x0) 162.74/105.94 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.74/105.94 new_primRemInt(Main.Pos(x0), x1) 162.74/105.94 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.74/105.94 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.74/105.94 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.74/105.94 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.74/105.94 new_gcd21(Main.Zero, Main.Zero) 162.74/105.94 new_primRemInt0(Main.Pos(x0), x1) 162.74/105.94 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.74/105.94 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.74/105.94 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.74/105.94 new_new_pr2F0G11(Main.Zero) 162.74/105.94 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.94 162.74/105.94 We have to consider all minimal (P,Q,R)-chains. 162.74/105.94 ---------------------------------------- 162.74/105.94 162.74/105.94 (656) MNOCProof (EQUIVALENT) 162.74/105.94 We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set. 162.74/105.94 ---------------------------------------- 162.74/105.94 162.74/105.94 (657) 162.74/105.94 Obligation: 162.74/105.94 Q DP problem: 162.74/105.94 The TRS P consists of the following rules: 162.74/105.94 162.74/105.94 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.94 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.74/105.94 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.74/105.94 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.74/105.94 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.74/105.94 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.74/105.94 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.74/105.94 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.74/105.94 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.74/105.94 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.74/105.94 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.74/105.94 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.94 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.74/105.94 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.94 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.94 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.94 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.94 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero))))) 162.74/105.94 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Zero))) 162.74/105.94 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.94 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.94 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.94 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.94 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))), new_new_pr2F0G11(x0)) 162.74/105.94 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.94 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.94 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))), new_new_pr2F0G11(x0)) 162.74/105.94 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero)) 162.74/105.94 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.74/105.94 162.74/105.94 The TRS R consists of the following rules: 162.74/105.94 162.74/105.94 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.74/105.94 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.74/105.94 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.74/105.94 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.74/105.94 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.74/105.94 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.94 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.74/105.94 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.74/105.94 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.74/105.94 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.74/105.94 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.74/105.94 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.94 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.74/105.94 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.74/105.94 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.74/105.94 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.94 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.94 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.94 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.74/105.94 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.74/105.94 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.74/105.94 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.74/105.94 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.94 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.74/105.94 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.74/105.94 new_error0 -> Prelude.error([]) 162.74/105.94 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.94 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.94 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.94 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.74/105.94 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.94 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.94 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.94 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.74/105.94 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.74/105.94 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.74/105.94 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.74/105.94 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.74/105.94 new_error -> Prelude.error([]) 162.74/105.94 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.74/105.94 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.74/105.94 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.74/105.94 new_primMinusNatS2 -> Main.Zero 162.74/105.94 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.74/105.94 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.74/105.94 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.74/105.94 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.74/105.94 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.74/105.94 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.74/105.94 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.74/105.94 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.74/105.94 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.74/105.94 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.94 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.94 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.74/105.94 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.74/105.94 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.74/105.94 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.74/105.94 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.74/105.94 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.94 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.74/105.94 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.74/105.94 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.74/105.94 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.94 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.74/105.94 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.74/105.94 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.74/105.94 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.74/105.94 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.74/105.94 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.74/105.94 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.74/105.94 new_absReal10 -> Main.Neg(Main.Zero) 162.74/105.94 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.74/105.94 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.74/105.94 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.74/105.94 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.74/105.94 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.74/105.94 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.74/105.94 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.74/105.94 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.74/105.94 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.74/105.94 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.74/105.94 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.74/105.94 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.74/105.94 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.74/105.94 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.94 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.94 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.94 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.74/105.94 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.94 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.94 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.94 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.74/105.94 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.74/105.94 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.74/105.94 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.74/105.94 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.74/105.94 new_absMyInt0(Main.Zero) -> new_absReal10 162.74/105.94 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.74/105.94 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.74/105.94 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.74/105.94 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.74/105.94 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.74/105.94 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.74/105.94 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.94 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.74/105.94 new_primMulNat1(Main.Zero) -> Main.Zero 162.74/105.94 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.74/105.94 162.74/105.94 Q is empty. 162.74/105.94 We have to consider all (P,Q,R)-chains. 162.74/105.94 ---------------------------------------- 162.74/105.94 162.74/105.94 (658) InductionCalculusProof (EQUIVALENT) 162.74/105.94 Note that final constraints are written in bold face. 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) the following chains were created: 162.74/105.94 *We consider the chain new_pr2F0G12(x3, x4, Main.Succ(Main.Succ(x5))) -> new_pr2F0G11(x3, x4, Main.Succ(x5), x5), new_pr2F0G11(x6, x7, x8, Main.Zero) -> new_pr2F0G2(x6, new_srRatio(x7), x8) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G11(x3, x4, Main.Succ(x5), x5)=new_pr2F0G11(x6, x7, x8, Main.Zero) ==> new_pr2F0G12(x3, x4, Main.Succ(Main.Succ(x5)))_>=_new_pr2F0G11(x3, x4, Main.Succ(x5), x5)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0G12(x3, x4, Main.Succ(Main.Succ(Main.Zero)))_>=_new_pr2F0G11(x3, x4, Main.Succ(Main.Zero), Main.Zero)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 *We consider the chain new_pr2F0G12(x9, x10, Main.Succ(Main.Succ(x11))) -> new_pr2F0G11(x9, x10, Main.Succ(x11), x11), new_pr2F0G11(x12, x13, x14, Main.Succ(Main.Zero)) -> new_pr2F0(x13, x14, Main.Pos(Main.Succ(Main.Zero)), x12) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G11(x9, x10, Main.Succ(x11), x11)=new_pr2F0G11(x12, x13, x14, Main.Succ(Main.Zero)) ==> new_pr2F0G12(x9, x10, Main.Succ(Main.Succ(x11)))_>=_new_pr2F0G11(x9, x10, Main.Succ(x11), x11)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0G12(x9, x10, Main.Succ(Main.Succ(Main.Succ(Main.Zero))))_>=_new_pr2F0G11(x9, x10, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) the following chains were created: 162.74/105.94 *We consider the chain new_pr2F0G11(x126, x127, x128, Main.Zero) -> new_pr2F0G2(x126, new_srRatio(x127), x128), new_pr2F0G2(x129, x130, Main.Succ(Main.Zero)) -> new_pr2F0G12(x129, x130, Main.Succ(Main.Zero)) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G2(x126, new_srRatio(x127), x128)=new_pr2F0G2(x129, x130, Main.Succ(Main.Zero)) ==> new_pr2F0G11(x126, x127, x128, Main.Zero)_>=_new_pr2F0G2(x126, new_srRatio(x127), x128)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0G11(x126, x127, Main.Succ(Main.Zero), Main.Zero)_>=_new_pr2F0G2(x126, new_srRatio(x127), Main.Succ(Main.Zero))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 *We consider the chain new_pr2F0G11(x131, x132, x133, Main.Zero) -> new_pr2F0G2(x131, new_srRatio(x132), x133), new_pr2F0G2(x134, x135, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(x134, x135, Main.Succ(Main.Zero)) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G2(x131, new_srRatio(x132), x133)=new_pr2F0G2(x134, x135, Main.Succ(Main.Succ(Main.Zero))) ==> new_pr2F0G11(x131, x132, x133, Main.Zero)_>=_new_pr2F0G2(x131, new_srRatio(x132), x133)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0G11(x131, x132, Main.Succ(Main.Succ(Main.Zero)), Main.Zero)_>=_new_pr2F0G2(x131, new_srRatio(x132), Main.Succ(Main.Succ(Main.Zero)))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 *We consider the chain new_pr2F0G11(x148, x149, x150, Main.Zero) -> new_pr2F0G2(x148, new_srRatio(x149), x150), new_pr2F0G2(x151, x152, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x153))))) -> new_pr2F0G12(x151, x152, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x153), Main.Succ(Main.Zero))))) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G2(x148, new_srRatio(x149), x150)=new_pr2F0G2(x151, x152, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x153))))) ==> new_pr2F0G11(x148, x149, x150, Main.Zero)_>=_new_pr2F0G2(x148, new_srRatio(x149), x150)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0G11(x148, x149, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x153)))), Main.Zero)_>=_new_pr2F0G2(x148, new_srRatio(x149), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x153)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 *We consider the chain new_pr2F0G11(x154, x155, x156, Main.Zero) -> new_pr2F0G2(x154, new_srRatio(x155), x156), new_pr2F0G2(x157, x158, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(x157, x158, Main.Succ(Main.Succ(Main.Zero))) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G2(x154, new_srRatio(x155), x156)=new_pr2F0G2(x157, x158, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) ==> new_pr2F0G11(x154, x155, x156, Main.Zero)_>=_new_pr2F0G2(x154, new_srRatio(x155), x156)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0G11(x154, x155, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Zero)_>=_new_pr2F0G2(x154, new_srRatio(x155), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) the following chains were created: 162.74/105.94 *We consider the chain new_pr2F0G11(x198, x199, x200, Main.Succ(Main.Zero)) -> new_pr2F0(x199, x200, Main.Pos(Main.Succ(Main.Zero)), x198), new_pr2F0(x201, x202, Main.Pos(Main.Succ(Main.Zero)), x203) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x202, Main.Zero))), x201, Main.Succ(Main.Succ(new_primPlusNat0(x202, Main.Zero))), x203) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0(x199, x200, Main.Pos(Main.Succ(Main.Zero)), x198)=new_pr2F0(x201, x202, Main.Pos(Main.Succ(Main.Zero)), x203) ==> new_pr2F0G11(x198, x199, x200, Main.Succ(Main.Zero))_>=_new_pr2F0(x199, x200, Main.Pos(Main.Succ(Main.Zero)), x198)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0G11(x198, x199, x200, Main.Succ(Main.Zero))_>=_new_pr2F0(x199, x200, Main.Pos(Main.Succ(Main.Zero)), x198)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 *We consider the chain new_pr2F0G11(x219, x220, x221, Main.Succ(Main.Zero)) -> new_pr2F0(x220, x221, Main.Pos(Main.Succ(Main.Zero)), x219), new_pr2F0(x222, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x223) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x222, Main.Succ(Main.Succ(Main.Zero)), x223) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0(x220, x221, Main.Pos(Main.Succ(Main.Zero)), x219)=new_pr2F0(x222, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x223) ==> new_pr2F0G11(x219, x220, x221, Main.Succ(Main.Zero))_>=_new_pr2F0(x220, x221, Main.Pos(Main.Succ(Main.Zero)), x219)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0G11(x219, x220, Main.Zero, Main.Succ(Main.Zero))_>=_new_pr2F0(x220, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x219)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) the following chains were created: 162.74/105.94 *We consider the chain new_pr2F0(x293, x294, Main.Pos(Main.Succ(Main.Zero)), x295) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x294, Main.Zero))), x293, Main.Succ(Main.Succ(new_primPlusNat0(x294, Main.Zero))), x295), new_pr2F31(Main.Succ(Main.Succ(x296)), x297, Main.Succ(Main.Succ(x298)), x299) -> new_pr2F32(Main.Succ(x296), x297, Main.Succ(Main.Succ(x298)), new_srRatio0(x297, x299)) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x294, Main.Zero))), x293, Main.Succ(Main.Succ(new_primPlusNat0(x294, Main.Zero))), x295)=new_pr2F31(Main.Succ(Main.Succ(x296)), x297, Main.Succ(Main.Succ(x298)), x299) ==> new_pr2F0(x293, x294, Main.Pos(Main.Succ(Main.Zero)), x295)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x294, Main.Zero))), x293, Main.Succ(Main.Succ(new_primPlusNat0(x294, Main.Zero))), x295)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0(x293, x294, Main.Pos(Main.Succ(Main.Zero)), x295)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x294, Main.Zero))), x293, Main.Succ(Main.Succ(new_primPlusNat0(x294, Main.Zero))), x295)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 *We consider the chain new_pr2F0(x309, x310, Main.Pos(Main.Succ(Main.Zero)), x311) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x310, Main.Zero))), x309, Main.Succ(Main.Succ(new_primPlusNat0(x310, Main.Zero))), x311), new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x312, Main.Succ(Main.Succ(Main.Zero)), x313) -> new_pr2F32(Main.Succ(Main.Zero), x312, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x312, x313)) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x310, Main.Zero))), x309, Main.Succ(Main.Succ(new_primPlusNat0(x310, Main.Zero))), x311)=new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x312, Main.Succ(Main.Succ(Main.Zero)), x313) ==> new_pr2F0(x309, x310, Main.Pos(Main.Succ(Main.Zero)), x311)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x310, Main.Zero))), x309, Main.Succ(Main.Succ(new_primPlusNat0(x310, Main.Zero))), x311)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (Main.Zero=x2414 & new_primPlusNat0(x310, x2414)=Main.Zero ==> new_pr2F0(x309, x310, Main.Pos(Main.Succ(Main.Zero)), x311)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x310, Main.Zero))), x309, Main.Succ(Main.Succ(new_primPlusNat0(x310, Main.Zero))), x311)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primPlusNat0(x310, x2414)=Main.Zero which results in the following new constraint: 162.74/105.94 162.74/105.94 (3) (Main.Zero=Main.Zero ==> new_pr2F0(x309, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x311)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x309, Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x311)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (3) using rules (I), (II) which results in the following new constraint: 162.74/105.94 162.74/105.94 (4) (new_pr2F0(x309, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x311)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x309, Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x311)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) the following chains were created: 162.74/105.94 *We consider the chain new_pr2F31(Main.Succ(Main.Succ(x394)), x395, Main.Succ(Main.Succ(x396)), x397) -> new_pr2F32(Main.Succ(x394), x395, Main.Succ(Main.Succ(x396)), new_srRatio0(x395, x397)), new_pr2F32(x398, x399, Main.Succ(Main.Succ(x400)), x401) -> new_pr2F0G11(x401, x399, Main.Succ(x400), x400) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F32(Main.Succ(x394), x395, Main.Succ(Main.Succ(x396)), new_srRatio0(x395, x397))=new_pr2F32(x398, x399, Main.Succ(Main.Succ(x400)), x401) ==> new_pr2F31(Main.Succ(Main.Succ(x394)), x395, Main.Succ(Main.Succ(x396)), x397)_>=_new_pr2F32(Main.Succ(x394), x395, Main.Succ(Main.Succ(x396)), new_srRatio0(x395, x397))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F31(Main.Succ(Main.Succ(x394)), x395, Main.Succ(Main.Succ(x396)), x397)_>=_new_pr2F32(Main.Succ(x394), x395, Main.Succ(Main.Succ(x396)), new_srRatio0(x395, x397))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 *We consider the chain new_pr2F31(Main.Succ(Main.Succ(x430)), x431, Main.Succ(Main.Succ(x432)), x433) -> new_pr2F32(Main.Succ(x430), x431, Main.Succ(Main.Succ(x432)), new_srRatio0(x431, x433)), new_pr2F32(x434, x435, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), x436) -> H(x436, x435, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F32(Main.Succ(x430), x431, Main.Succ(Main.Succ(x432)), new_srRatio0(x431, x433))=new_pr2F32(x434, x435, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), x436) ==> new_pr2F31(Main.Succ(Main.Succ(x430)), x431, Main.Succ(Main.Succ(x432)), x433)_>=_new_pr2F32(Main.Succ(x430), x431, Main.Succ(Main.Succ(x432)), new_srRatio0(x431, x433))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F31(Main.Succ(Main.Succ(x430)), x431, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), x433)_>=_new_pr2F32(Main.Succ(x430), x431, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), new_srRatio0(x431, x433))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 *We consider the chain new_pr2F31(Main.Succ(Main.Succ(x437)), x438, Main.Succ(Main.Succ(x439)), x440) -> new_pr2F32(Main.Succ(x437), x438, Main.Succ(Main.Succ(x439)), new_srRatio0(x438, x440)), new_pr2F32(x441, x442, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), x443) -> H(x443, x442, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F32(Main.Succ(x437), x438, Main.Succ(Main.Succ(x439)), new_srRatio0(x438, x440))=new_pr2F32(x441, x442, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), x443) ==> new_pr2F31(Main.Succ(Main.Succ(x437)), x438, Main.Succ(Main.Succ(x439)), x440)_>=_new_pr2F32(Main.Succ(x437), x438, Main.Succ(Main.Succ(x439)), new_srRatio0(x438, x440))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F31(Main.Succ(Main.Succ(x437)), x438, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), x440)_>=_new_pr2F32(Main.Succ(x437), x438, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), new_srRatio0(x438, x440))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 *We consider the chain new_pr2F31(Main.Succ(Main.Succ(x460)), x461, Main.Succ(Main.Succ(x462)), x463) -> new_pr2F32(Main.Succ(x460), x461, Main.Succ(Main.Succ(x462)), new_srRatio0(x461, x463)), new_pr2F32(x464, x465, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), x466) -> H(x466, x465, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F32(Main.Succ(x460), x461, Main.Succ(Main.Succ(x462)), new_srRatio0(x461, x463))=new_pr2F32(x464, x465, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), x466) ==> new_pr2F31(Main.Succ(Main.Succ(x460)), x461, Main.Succ(Main.Succ(x462)), x463)_>=_new_pr2F32(Main.Succ(x460), x461, Main.Succ(Main.Succ(x462)), new_srRatio0(x461, x463))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F31(Main.Succ(Main.Succ(x460)), x461, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), x463)_>=_new_pr2F32(Main.Succ(x460), x461, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), new_srRatio0(x461, x463))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 *We consider the chain new_pr2F31(Main.Succ(Main.Succ(x467)), x468, Main.Succ(Main.Succ(x469)), x470) -> new_pr2F32(Main.Succ(x467), x468, Main.Succ(Main.Succ(x469)), new_srRatio0(x468, x470)), new_pr2F32(x471, x472, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), x473) -> H(x473, x472, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F32(Main.Succ(x467), x468, Main.Succ(Main.Succ(x469)), new_srRatio0(x468, x470))=new_pr2F32(x471, x472, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), x473) ==> new_pr2F31(Main.Succ(Main.Succ(x467)), x468, Main.Succ(Main.Succ(x469)), x470)_>=_new_pr2F32(Main.Succ(x467), x468, Main.Succ(Main.Succ(x469)), new_srRatio0(x468, x470))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F31(Main.Succ(Main.Succ(x467)), x468, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), x470)_>=_new_pr2F32(Main.Succ(x467), x468, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), new_srRatio0(x468, x470))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 *We consider the chain new_pr2F31(Main.Succ(Main.Succ(x482)), x483, Main.Succ(Main.Succ(x484)), x485) -> new_pr2F32(Main.Succ(x482), x483, Main.Succ(Main.Succ(x484)), new_srRatio0(x483, x485)), new_pr2F32(x486, x487, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x488)))))))))), x489) -> H(x489, x487, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x488))))))))), new_new_pr2F0G11(x488)) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F32(Main.Succ(x482), x483, Main.Succ(Main.Succ(x484)), new_srRatio0(x483, x485))=new_pr2F32(x486, x487, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x488)))))))))), x489) ==> new_pr2F31(Main.Succ(Main.Succ(x482)), x483, Main.Succ(Main.Succ(x484)), x485)_>=_new_pr2F32(Main.Succ(x482), x483, Main.Succ(Main.Succ(x484)), new_srRatio0(x483, x485))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F31(Main.Succ(Main.Succ(x482)), x483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x488)))))))))), x485)_>=_new_pr2F32(Main.Succ(x482), x483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x488)))))))))), new_srRatio0(x483, x485))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 *We consider the chain new_pr2F31(Main.Succ(Main.Succ(x490)), x491, Main.Succ(Main.Succ(x492)), x493) -> new_pr2F32(Main.Succ(x490), x491, Main.Succ(Main.Succ(x492)), new_srRatio0(x491, x493)), new_pr2F32(x494, x495, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x496) -> H(x496, x495, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero)) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F32(Main.Succ(x490), x491, Main.Succ(Main.Succ(x492)), new_srRatio0(x491, x493))=new_pr2F32(x494, x495, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x496) ==> new_pr2F31(Main.Succ(Main.Succ(x490)), x491, Main.Succ(Main.Succ(x492)), x493)_>=_new_pr2F32(Main.Succ(x490), x491, Main.Succ(Main.Succ(x492)), new_srRatio0(x491, x493))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F31(Main.Succ(Main.Succ(x490)), x491, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x493)_>=_new_pr2F32(Main.Succ(x490), x491, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_srRatio0(x491, x493))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 *We consider the chain new_pr2F31(Main.Succ(Main.Succ(x497)), x498, Main.Succ(Main.Succ(x499)), x500) -> new_pr2F32(Main.Succ(x497), x498, Main.Succ(Main.Succ(x499)), new_srRatio0(x498, x500)), new_pr2F32(x501, x502, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), x503) -> H(x503, x502, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F32(Main.Succ(x497), x498, Main.Succ(Main.Succ(x499)), new_srRatio0(x498, x500))=new_pr2F32(x501, x502, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), x503) ==> new_pr2F31(Main.Succ(Main.Succ(x497)), x498, Main.Succ(Main.Succ(x499)), x500)_>=_new_pr2F32(Main.Succ(x497), x498, Main.Succ(Main.Succ(x499)), new_srRatio0(x498, x500))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F31(Main.Succ(Main.Succ(x497)), x498, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), x500)_>=_new_pr2F32(Main.Succ(x497), x498, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), new_srRatio0(x498, x500))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) the following chains were created: 162.74/105.94 *We consider the chain new_pr2F32(x520, x521, Main.Succ(Main.Succ(x522)), x523) -> new_pr2F0G11(x523, x521, Main.Succ(x522), x522), new_pr2F0G11(x524, x525, x526, Main.Zero) -> new_pr2F0G2(x524, new_srRatio(x525), x526) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G11(x523, x521, Main.Succ(x522), x522)=new_pr2F0G11(x524, x525, x526, Main.Zero) ==> new_pr2F32(x520, x521, Main.Succ(Main.Succ(x522)), x523)_>=_new_pr2F0G11(x523, x521, Main.Succ(x522), x522)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F32(x520, x521, Main.Succ(Main.Succ(Main.Zero)), x523)_>=_new_pr2F0G11(x523, x521, Main.Succ(Main.Zero), Main.Zero)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 *We consider the chain new_pr2F32(x527, x528, Main.Succ(Main.Succ(x529)), x530) -> new_pr2F0G11(x530, x528, Main.Succ(x529), x529), new_pr2F0G11(x531, x532, x533, Main.Succ(Main.Zero)) -> new_pr2F0(x532, x533, Main.Pos(Main.Succ(Main.Zero)), x531) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G11(x530, x528, Main.Succ(x529), x529)=new_pr2F0G11(x531, x532, x533, Main.Succ(Main.Zero)) ==> new_pr2F32(x527, x528, Main.Succ(Main.Succ(x529)), x530)_>=_new_pr2F0G11(x530, x528, Main.Succ(x529), x529)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (III), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F32(x527, x528, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), x530)_>=_new_pr2F0G11(x530, x528, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) the following chains were created: 162.74/105.94 *We consider the chain H(x641, x642, x643, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(x641, x642, x643, Main.Zero), new_pr2F0G11(x644, x645, x646, Main.Zero) -> new_pr2F0G2(x644, new_srRatio(x645), x646) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G11(x641, x642, x643, Main.Zero)=new_pr2F0G11(x644, x645, x646, Main.Zero) ==> H(x641, x642, x643, cons_new_pr2F0G11(Main.Zero))_>=_new_pr2F0G11(x641, x642, x643, Main.Zero)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (H(x641, x642, x643, cons_new_pr2F0G11(Main.Zero))_>=_new_pr2F0G11(x641, x642, x643, Main.Zero)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) the following chains were created: 162.74/105.94 *We consider the chain H(x734, x735, x736, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(x734, x735, x736, Main.Succ(Main.Zero)), new_pr2F0G11(x737, x738, x739, Main.Succ(Main.Zero)) -> new_pr2F0(x738, x739, Main.Pos(Main.Succ(Main.Zero)), x737) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G11(x734, x735, x736, Main.Succ(Main.Zero))=new_pr2F0G11(x737, x738, x739, Main.Succ(Main.Zero)) ==> H(x734, x735, x736, cons_new_pr2F0G11(Main.Succ(Main.Zero)))_>=_new_pr2F0G11(x734, x735, x736, Main.Succ(Main.Zero))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (H(x734, x735, x736, cons_new_pr2F0G11(Main.Succ(Main.Zero)))_>=_new_pr2F0G11(x734, x735, x736, Main.Succ(Main.Zero))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) the following chains were created: 162.74/105.94 *We consider the chain new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x828, Main.Succ(Main.Succ(Main.Zero)), x829) -> new_pr2F32(Main.Succ(Main.Zero), x828, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x828, x829)), new_pr2F32(x830, x831, Main.Succ(Main.Succ(x832)), x833) -> new_pr2F0G11(x833, x831, Main.Succ(x832), x832) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F32(Main.Succ(Main.Zero), x828, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x828, x829))=new_pr2F32(x830, x831, Main.Succ(Main.Succ(x832)), x833) ==> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x828, Main.Succ(Main.Succ(Main.Zero)), x829)_>=_new_pr2F32(Main.Succ(Main.Zero), x828, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x828, x829))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x828, Main.Succ(Main.Succ(Main.Zero)), x829)_>=_new_pr2F32(Main.Succ(Main.Zero), x828, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x828, x829))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) the following chains were created: 162.74/105.94 *We consider the chain new_pr2F0(x888, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x889) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x888, Main.Succ(Main.Succ(Main.Zero)), x889), new_pr2F31(Main.Succ(Main.Succ(x890)), x891, Main.Succ(Main.Succ(x892)), x893) -> new_pr2F32(Main.Succ(x890), x891, Main.Succ(Main.Succ(x892)), new_srRatio0(x891, x893)) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x888, Main.Succ(Main.Succ(Main.Zero)), x889)=new_pr2F31(Main.Succ(Main.Succ(x890)), x891, Main.Succ(Main.Succ(x892)), x893) ==> new_pr2F0(x888, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x889)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x888, Main.Succ(Main.Succ(Main.Zero)), x889)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0(x888, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x889)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x888, Main.Succ(Main.Succ(Main.Zero)), x889)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 *We consider the chain new_pr2F0(x900, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x901) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x900, Main.Succ(Main.Succ(Main.Zero)), x901), new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x902, Main.Succ(Main.Succ(Main.Zero)), x903) -> new_pr2F32(Main.Succ(Main.Zero), x902, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x902, x903)) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x900, Main.Succ(Main.Succ(Main.Zero)), x901)=new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x902, Main.Succ(Main.Succ(Main.Zero)), x903) ==> new_pr2F0(x900, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x901)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x900, Main.Succ(Main.Succ(Main.Zero)), x901)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0(x900, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x901)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x900, Main.Succ(Main.Succ(Main.Zero)), x901)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) the following chains were created: 162.74/105.94 *We consider the chain new_pr2F0G12(x950, x951, Main.Succ(Main.Zero)) -> new_pr2F0(x951, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x950), new_pr2F0(x952, x953, Main.Pos(Main.Succ(Main.Zero)), x954) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x953, Main.Zero))), x952, Main.Succ(Main.Succ(new_primPlusNat0(x953, Main.Zero))), x954) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0(x951, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x950)=new_pr2F0(x952, x953, Main.Pos(Main.Succ(Main.Zero)), x954) ==> new_pr2F0G12(x950, x951, Main.Succ(Main.Zero))_>=_new_pr2F0(x951, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x950)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0G12(x950, x951, Main.Succ(Main.Zero))_>=_new_pr2F0(x951, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x950)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 *We consider the chain new_pr2F0G12(x965, x966, Main.Succ(Main.Zero)) -> new_pr2F0(x966, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x965), new_pr2F0(x967, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x968) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x967, Main.Succ(Main.Succ(Main.Zero)), x968) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0(x966, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x965)=new_pr2F0(x967, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x968) ==> new_pr2F0G12(x965, x966, Main.Succ(Main.Zero))_>=_new_pr2F0(x966, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x965)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0G12(x965, x966, Main.Succ(Main.Zero))_>=_new_pr2F0(x966, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x965)) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) the following chains were created: 162.74/105.94 *We consider the chain new_pr2F0G2(x1027, x1028, Main.Succ(Main.Zero)) -> new_pr2F0G12(x1027, x1028, Main.Succ(Main.Zero)), new_pr2F0G12(x1029, x1030, Main.Succ(Main.Zero)) -> new_pr2F0(x1030, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x1029) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G12(x1027, x1028, Main.Succ(Main.Zero))=new_pr2F0G12(x1029, x1030, Main.Succ(Main.Zero)) ==> new_pr2F0G2(x1027, x1028, Main.Succ(Main.Zero))_>=_new_pr2F0G12(x1027, x1028, Main.Succ(Main.Zero))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0G2(x1027, x1028, Main.Succ(Main.Zero))_>=_new_pr2F0G12(x1027, x1028, Main.Succ(Main.Zero))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) the following chains were created: 162.74/105.94 *We consider the chain new_pr2F0G2(x1087, x1088, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(x1087, x1088, Main.Succ(Main.Zero)), new_pr2F0G12(x1089, x1090, Main.Succ(Main.Zero)) -> new_pr2F0(x1090, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x1089) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G12(x1087, x1088, Main.Succ(Main.Zero))=new_pr2F0G12(x1089, x1090, Main.Succ(Main.Zero)) ==> new_pr2F0G2(x1087, x1088, Main.Succ(Main.Succ(Main.Zero)))_>=_new_pr2F0G12(x1087, x1088, Main.Succ(Main.Zero))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0G2(x1087, x1088, Main.Succ(Main.Succ(Main.Zero)))_>=_new_pr2F0G12(x1087, x1088, Main.Succ(Main.Zero))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) the following chains were created: 162.74/105.94 *We consider the chain new_pr2F32(x1145, x1146, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), x1147) -> H(x1147, x1146, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)), H(x1148, x1149, x1150, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(x1148, x1149, x1150, Main.Zero) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (H(x1147, x1146, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero))=H(x1148, x1149, x1150, cons_new_pr2F0G11(Main.Zero)) ==> new_pr2F32(x1145, x1146, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), x1147)_>=_H(x1147, x1146, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F32(x1145, x1146, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), x1147)_>=_H(x1147, x1146, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) the following chains were created: 162.74/105.94 *We consider the chain new_pr2F32(x1238, x1239, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), x1240) -> H(x1240, x1239, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))), H(x1241, x1242, x1243, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(x1241, x1242, x1243, Main.Succ(Main.Zero)) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (H(x1240, x1239, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))=H(x1241, x1242, x1243, cons_new_pr2F0G11(Main.Succ(Main.Zero))) ==> new_pr2F32(x1238, x1239, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), x1240)_>=_H(x1240, x1239, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F32(x1238, x1239, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), x1240)_>=_H(x1240, x1239, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) the following chains were created: 162.74/105.94 *We consider the chain new_pr2F0G12(x1319, x1320, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(x1319, x1320, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)), H(x1321, x1322, x1323, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(x1321, x1322, x1323, Main.Zero) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (H(x1319, x1320, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero))=H(x1321, x1322, x1323, cons_new_pr2F0G11(Main.Zero)) ==> new_pr2F0G12(x1319, x1320, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))_>=_H(x1319, x1320, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0G12(x1319, x1320, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))_>=_H(x1319, x1320, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) the following chains were created: 162.74/105.94 *We consider the chain new_pr2F0G12(x1382, x1383, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(x1382, x1383, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))), H(x1384, x1385, x1386, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(x1384, x1385, x1386, Main.Succ(Main.Zero)) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (H(x1382, x1383, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))=H(x1384, x1385, x1386, cons_new_pr2F0G11(Main.Succ(Main.Zero))) ==> new_pr2F0G12(x1382, x1383, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_H(x1382, x1383, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0G12(x1382, x1383, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_H(x1382, x1383, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 For Pair new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero))))) the following chains were created: 162.74/105.94 *We consider the chain new_pr2F0G2(x1429, x1430, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1431))))) -> new_pr2F0G12(x1429, x1430, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1431), Main.Succ(Main.Zero))))), new_pr2F0G12(x1432, x1433, Main.Succ(Main.Succ(x1434))) -> new_pr2F0G11(x1432, x1433, Main.Succ(x1434), x1434) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G12(x1429, x1430, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1431), Main.Succ(Main.Zero)))))=new_pr2F0G12(x1432, x1433, Main.Succ(Main.Succ(x1434))) ==> new_pr2F0G2(x1429, x1430, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1431)))))_>=_new_pr2F0G12(x1429, x1430, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1431), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (new_pr2F0G2(x1429, x1430, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1431)))))_>=_new_pr2F0G12(x1429, x1430, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1431), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 *We consider the chain new_pr2F0G2(x1477, x1478, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1479))))) -> new_pr2F0G12(x1477, x1478, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1479), Main.Succ(Main.Zero))))), new_pr2F0G12(x1480, x1481, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(x1480, x1481, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G12(x1477, x1478, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1479), Main.Succ(Main.Zero)))))=new_pr2F0G12(x1480, x1481, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) ==> new_pr2F0G2(x1477, x1478, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1479)))))_>=_new_pr2F0G12(x1477, x1478, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1479), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (Main.Succ(x1479)=x2419 & Main.Succ(Main.Zero)=x2420 & new_primDivNatS3(x2419, x2420)=Main.Succ(Main.Succ(Main.Zero)) ==> new_pr2F0G2(x1477, x1478, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1479)))))_>=_new_pr2F0G12(x1477, x1478, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1479), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS3(x2419, x2420)=Main.Succ(Main.Succ(Main.Zero)) which results in the following new constraints: 162.74/105.94 162.74/105.94 (3) (new_primDivNatS01(x2422, x2421, x2422, x2421)=Main.Succ(Main.Succ(Main.Zero)) & Main.Succ(x1479)=Main.Succ(Main.Succ(x2422)) & Main.Succ(Main.Zero)=Main.Succ(x2421) ==> new_pr2F0G2(x1477, x1478, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1479)))))_>=_new_pr2F0G12(x1477, x1478, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1479), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (4) (Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero))=Main.Succ(Main.Succ(Main.Zero)) & Main.Succ(x1479)=Main.Succ(Main.Zero) & Main.Succ(Main.Zero)=Main.Zero ==> new_pr2F0G2(x1477, x1478, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1479)))))_>=_new_pr2F0G12(x1477, x1478, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1479), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (5) (Main.Succ(new_primDivNatS3(new_primMinusNatS1(x2425), Main.Zero))=Main.Succ(Main.Succ(Main.Zero)) & Main.Succ(x1479)=Main.Succ(Main.Succ(x2425)) & Main.Succ(Main.Zero)=Main.Zero ==> new_pr2F0G2(x1477, x1478, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1479)))))_>=_new_pr2F0G12(x1477, x1478, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1479), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (3) using rules (I), (II), (III), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (6) (x2422=x2426 & x2421=x2427 & new_primDivNatS01(x2422, x2421, x2426, x2427)=Main.Succ(Main.Succ(Main.Zero)) & Main.Zero=x2421 ==> new_pr2F0G2(x1477, x1478, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2422))))))_>=_new_pr2F0G12(x1477, x1478, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2422)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS01(x2422, x2421, x2426, x2427)=Main.Succ(Main.Succ(Main.Zero)) which results in the following new constraints: 162.74/105.94 162.74/105.94 (7) (new_primDivNatS02(x2430, x2429)=Main.Succ(Main.Succ(Main.Zero)) & x2430=Main.Succ(x2428) & x2429=Main.Zero & Main.Zero=x2429 ==> new_pr2F0G2(x1477, x1478, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2430))))))_>=_new_pr2F0G12(x1477, x1478, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2430)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (8) (new_primDivNatS02(x2432, x2431)=Main.Succ(Main.Succ(Main.Zero)) & x2432=Main.Zero & x2431=Main.Zero & Main.Zero=x2431 ==> new_pr2F0G2(x1477, x1478, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2432))))))_>=_new_pr2F0G12(x1477, x1478, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2432)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (9) (new_primDivNatS01(x2439, x2438, x2437, x2436)=Main.Succ(Main.Succ(Main.Zero)) & x2439=Main.Succ(x2437) & x2438=Main.Succ(x2436) & Main.Zero=x2438 & (\/x2440,x2441:new_primDivNatS01(x2439, x2438, x2437, x2436)=Main.Succ(Main.Succ(Main.Zero)) & x2439=x2437 & x2438=x2436 & Main.Zero=x2438 ==> new_pr2F0G2(x2440, x2441, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2439))))))_>=_new_pr2F0G12(x2440, x2441, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2439)), Main.Succ(Main.Zero)))))) ==> new_pr2F0G2(x1477, x1478, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2439))))))_>=_new_pr2F0G12(x1477, x1478, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2439)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (7) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (10) (new_pr2F0G2(x1477, x1478, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2428)))))))_>=_new_pr2F0G12(x1477, x1478, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Succ(x2428))), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (8) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (11) (new_pr2F0G2(x1477, x1478, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_new_pr2F0G12(x1477, x1478, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We solved constraint (9) using rules (I), (II), (III). 162.74/105.94 *We consider the chain new_pr2F0G2(x1482, x1483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1484))))) -> new_pr2F0G12(x1482, x1483, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1484), Main.Succ(Main.Zero))))), new_pr2F0G12(x1485, x1486, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(x1485, x1486, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G12(x1482, x1483, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1484), Main.Succ(Main.Zero)))))=new_pr2F0G12(x1485, x1486, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) ==> new_pr2F0G2(x1482, x1483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1484)))))_>=_new_pr2F0G12(x1482, x1483, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1484), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (Main.Succ(x1484)=x2446 & Main.Succ(Main.Zero)=x2447 & new_primDivNatS3(x2446, x2447)=Main.Succ(Main.Succ(Main.Succ(Main.Zero))) ==> new_pr2F0G2(x1482, x1483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1484)))))_>=_new_pr2F0G12(x1482, x1483, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1484), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS3(x2446, x2447)=Main.Succ(Main.Succ(Main.Succ(Main.Zero))) which results in the following new constraints: 162.74/105.94 162.74/105.94 (3) (new_primDivNatS01(x2449, x2448, x2449, x2448)=Main.Succ(Main.Succ(Main.Succ(Main.Zero))) & Main.Succ(x1484)=Main.Succ(Main.Succ(x2449)) & Main.Succ(Main.Zero)=Main.Succ(x2448) ==> new_pr2F0G2(x1482, x1483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1484)))))_>=_new_pr2F0G12(x1482, x1483, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1484), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (4) (Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero))=Main.Succ(Main.Succ(Main.Succ(Main.Zero))) & Main.Succ(x1484)=Main.Succ(Main.Zero) & Main.Succ(Main.Zero)=Main.Zero ==> new_pr2F0G2(x1482, x1483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1484)))))_>=_new_pr2F0G12(x1482, x1483, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1484), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (5) (Main.Succ(new_primDivNatS3(new_primMinusNatS1(x2452), Main.Zero))=Main.Succ(Main.Succ(Main.Succ(Main.Zero))) & Main.Succ(x1484)=Main.Succ(Main.Succ(x2452)) & Main.Succ(Main.Zero)=Main.Zero ==> new_pr2F0G2(x1482, x1483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1484)))))_>=_new_pr2F0G12(x1482, x1483, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1484), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (3) using rules (I), (II), (III), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (6) (x2449=x2453 & x2448=x2454 & new_primDivNatS01(x2449, x2448, x2453, x2454)=Main.Succ(Main.Succ(Main.Succ(Main.Zero))) & Main.Zero=x2448 ==> new_pr2F0G2(x1482, x1483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2449))))))_>=_new_pr2F0G12(x1482, x1483, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2449)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS01(x2449, x2448, x2453, x2454)=Main.Succ(Main.Succ(Main.Succ(Main.Zero))) which results in the following new constraints: 162.74/105.94 162.74/105.94 (7) (new_primDivNatS02(x2457, x2456)=Main.Succ(Main.Succ(Main.Succ(Main.Zero))) & x2457=Main.Succ(x2455) & x2456=Main.Zero & Main.Zero=x2456 ==> new_pr2F0G2(x1482, x1483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2457))))))_>=_new_pr2F0G12(x1482, x1483, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2457)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (8) (new_primDivNatS02(x2459, x2458)=Main.Succ(Main.Succ(Main.Succ(Main.Zero))) & x2459=Main.Zero & x2458=Main.Zero & Main.Zero=x2458 ==> new_pr2F0G2(x1482, x1483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2459))))))_>=_new_pr2F0G12(x1482, x1483, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2459)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (9) (new_primDivNatS01(x2466, x2465, x2464, x2463)=Main.Succ(Main.Succ(Main.Succ(Main.Zero))) & x2466=Main.Succ(x2464) & x2465=Main.Succ(x2463) & Main.Zero=x2465 & (\/x2467,x2468:new_primDivNatS01(x2466, x2465, x2464, x2463)=Main.Succ(Main.Succ(Main.Succ(Main.Zero))) & x2466=x2464 & x2465=x2463 & Main.Zero=x2465 ==> new_pr2F0G2(x2467, x2468, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2466))))))_>=_new_pr2F0G12(x2467, x2468, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2466)), Main.Succ(Main.Zero)))))) ==> new_pr2F0G2(x1482, x1483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2466))))))_>=_new_pr2F0G12(x1482, x1483, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2466)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (7) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (10) (new_pr2F0G2(x1482, x1483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2455)))))))_>=_new_pr2F0G12(x1482, x1483, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Succ(x2455))), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (8) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (11) (new_pr2F0G2(x1482, x1483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_new_pr2F0G12(x1482, x1483, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We solved constraint (9) using rules (I), (II), (III). 162.74/105.94 *We consider the chain new_pr2F0G2(x1499, x1500, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1501))))) -> new_pr2F0G12(x1499, x1500, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1501), Main.Succ(Main.Zero))))), new_pr2F0G12(x1502, x1503, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> H(x1502, x1503, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G12(x1499, x1500, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1501), Main.Succ(Main.Zero)))))=new_pr2F0G12(x1502, x1503, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) ==> new_pr2F0G2(x1499, x1500, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1501)))))_>=_new_pr2F0G12(x1499, x1500, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1501), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (Main.Succ(x1501)=x2473 & Main.Succ(Main.Zero)=x2474 & new_primDivNatS3(x2473, x2474)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) ==> new_pr2F0G2(x1499, x1500, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1501)))))_>=_new_pr2F0G12(x1499, x1500, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1501), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS3(x2473, x2474)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) which results in the following new constraints: 162.74/105.94 162.74/105.94 (3) (new_primDivNatS01(x2476, x2475, x2476, x2475)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) & Main.Succ(x1501)=Main.Succ(Main.Succ(x2476)) & Main.Succ(Main.Zero)=Main.Succ(x2475) ==> new_pr2F0G2(x1499, x1500, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1501)))))_>=_new_pr2F0G12(x1499, x1500, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1501), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (4) (Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) & Main.Succ(x1501)=Main.Succ(Main.Zero) & Main.Succ(Main.Zero)=Main.Zero ==> new_pr2F0G2(x1499, x1500, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1501)))))_>=_new_pr2F0G12(x1499, x1500, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1501), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (5) (Main.Succ(new_primDivNatS3(new_primMinusNatS1(x2479), Main.Zero))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) & Main.Succ(x1501)=Main.Succ(Main.Succ(x2479)) & Main.Succ(Main.Zero)=Main.Zero ==> new_pr2F0G2(x1499, x1500, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1501)))))_>=_new_pr2F0G12(x1499, x1500, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1501), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (3) using rules (I), (II), (III), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (6) (x2476=x2480 & x2475=x2481 & new_primDivNatS01(x2476, x2475, x2480, x2481)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) & Main.Zero=x2475 ==> new_pr2F0G2(x1499, x1500, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2476))))))_>=_new_pr2F0G12(x1499, x1500, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2476)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS01(x2476, x2475, x2480, x2481)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) which results in the following new constraints: 162.74/105.94 162.74/105.94 (7) (new_primDivNatS02(x2484, x2483)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) & x2484=Main.Succ(x2482) & x2483=Main.Zero & Main.Zero=x2483 ==> new_pr2F0G2(x1499, x1500, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2484))))))_>=_new_pr2F0G12(x1499, x1500, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2484)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (8) (new_primDivNatS02(x2486, x2485)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) & x2486=Main.Zero & x2485=Main.Zero & Main.Zero=x2485 ==> new_pr2F0G2(x1499, x1500, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2486))))))_>=_new_pr2F0G12(x1499, x1500, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2486)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (9) (new_primDivNatS01(x2493, x2492, x2491, x2490)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) & x2493=Main.Succ(x2491) & x2492=Main.Succ(x2490) & Main.Zero=x2492 & (\/x2494,x2495:new_primDivNatS01(x2493, x2492, x2491, x2490)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) & x2493=x2491 & x2492=x2490 & Main.Zero=x2492 ==> new_pr2F0G2(x2494, x2495, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2493))))))_>=_new_pr2F0G12(x2494, x2495, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2493)), Main.Succ(Main.Zero)))))) ==> new_pr2F0G2(x1499, x1500, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2493))))))_>=_new_pr2F0G12(x1499, x1500, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2493)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (7) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (10) (new_pr2F0G2(x1499, x1500, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2482)))))))_>=_new_pr2F0G12(x1499, x1500, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Succ(x2482))), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (8) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (11) (new_pr2F0G2(x1499, x1500, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_new_pr2F0G12(x1499, x1500, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We solved constraint (9) using rules (I), (II), (III). 162.74/105.94 *We consider the chain new_pr2F0G2(x1504, x1505, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1506))))) -> new_pr2F0G12(x1504, x1505, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1506), Main.Succ(Main.Zero))))), new_pr2F0G12(x1507, x1508, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> H(x1507, x1508, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G12(x1504, x1505, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1506), Main.Succ(Main.Zero)))))=new_pr2F0G12(x1507, x1508, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) ==> new_pr2F0G2(x1504, x1505, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1506)))))_>=_new_pr2F0G12(x1504, x1505, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1506), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (Main.Succ(x1506)=x2500 & Main.Succ(Main.Zero)=x2501 & new_primDivNatS3(x2500, x2501)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) ==> new_pr2F0G2(x1504, x1505, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1506)))))_>=_new_pr2F0G12(x1504, x1505, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1506), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS3(x2500, x2501)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) which results in the following new constraints: 162.74/105.94 162.74/105.94 (3) (new_primDivNatS01(x2503, x2502, x2503, x2502)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) & Main.Succ(x1506)=Main.Succ(Main.Succ(x2503)) & Main.Succ(Main.Zero)=Main.Succ(x2502) ==> new_pr2F0G2(x1504, x1505, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1506)))))_>=_new_pr2F0G12(x1504, x1505, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1506), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (4) (Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) & Main.Succ(x1506)=Main.Succ(Main.Zero) & Main.Succ(Main.Zero)=Main.Zero ==> new_pr2F0G2(x1504, x1505, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1506)))))_>=_new_pr2F0G12(x1504, x1505, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1506), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (5) (Main.Succ(new_primDivNatS3(new_primMinusNatS1(x2506), Main.Zero))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) & Main.Succ(x1506)=Main.Succ(Main.Succ(x2506)) & Main.Succ(Main.Zero)=Main.Zero ==> new_pr2F0G2(x1504, x1505, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1506)))))_>=_new_pr2F0G12(x1504, x1505, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1506), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (3) using rules (I), (II), (III), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (6) (x2503=x2507 & x2502=x2508 & new_primDivNatS01(x2503, x2502, x2507, x2508)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) & Main.Zero=x2502 ==> new_pr2F0G2(x1504, x1505, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2503))))))_>=_new_pr2F0G12(x1504, x1505, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2503)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS01(x2503, x2502, x2507, x2508)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) which results in the following new constraints: 162.74/105.94 162.74/105.94 (7) (new_primDivNatS02(x2511, x2510)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) & x2511=Main.Succ(x2509) & x2510=Main.Zero & Main.Zero=x2510 ==> new_pr2F0G2(x1504, x1505, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2511))))))_>=_new_pr2F0G12(x1504, x1505, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2511)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (8) (new_primDivNatS02(x2513, x2512)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) & x2513=Main.Zero & x2512=Main.Zero & Main.Zero=x2512 ==> new_pr2F0G2(x1504, x1505, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2513))))))_>=_new_pr2F0G12(x1504, x1505, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2513)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (9) (new_primDivNatS01(x2520, x2519, x2518, x2517)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) & x2520=Main.Succ(x2518) & x2519=Main.Succ(x2517) & Main.Zero=x2519 & (\/x2521,x2522:new_primDivNatS01(x2520, x2519, x2518, x2517)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) & x2520=x2518 & x2519=x2517 & Main.Zero=x2519 ==> new_pr2F0G2(x2521, x2522, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2520))))))_>=_new_pr2F0G12(x2521, x2522, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2520)), Main.Succ(Main.Zero)))))) ==> new_pr2F0G2(x1504, x1505, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2520))))))_>=_new_pr2F0G12(x1504, x1505, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2520)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (7) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (10) (new_pr2F0G2(x1504, x1505, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2509)))))))_>=_new_pr2F0G12(x1504, x1505, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Succ(x2509))), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (8) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (11) (new_pr2F0G2(x1504, x1505, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_new_pr2F0G12(x1504, x1505, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We solved constraint (9) using rules (I), (II), (III). 162.74/105.94 *We consider the chain new_pr2F0G2(x1518, x1519, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1520))))) -> new_pr2F0G12(x1518, x1519, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1520), Main.Succ(Main.Zero))))), new_pr2F0G12(x1521, x1522, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1523))))))))))) -> H(x1521, x1522, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1523))))))))), new_new_pr2F0G11(x1523)) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G12(x1518, x1519, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1520), Main.Succ(Main.Zero)))))=new_pr2F0G12(x1521, x1522, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1523))))))))))) ==> new_pr2F0G2(x1518, x1519, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1520)))))_>=_new_pr2F0G12(x1518, x1519, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1520), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (Main.Succ(x1520)=x2527 & Main.Succ(Main.Zero)=x2528 & new_primDivNatS3(x2527, x2528)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1523)))))))) ==> new_pr2F0G2(x1518, x1519, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1520)))))_>=_new_pr2F0G12(x1518, x1519, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1520), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS3(x2527, x2528)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1523)))))))) which results in the following new constraints: 162.74/105.94 162.74/105.94 (3) (new_primDivNatS01(x2530, x2529, x2530, x2529)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1523)))))))) & Main.Succ(x1520)=Main.Succ(Main.Succ(x2530)) & Main.Succ(Main.Zero)=Main.Succ(x2529) ==> new_pr2F0G2(x1518, x1519, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1520)))))_>=_new_pr2F0G12(x1518, x1519, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1520), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (4) (Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1523)))))))) & Main.Succ(x1520)=Main.Succ(Main.Zero) & Main.Succ(Main.Zero)=Main.Zero ==> new_pr2F0G2(x1518, x1519, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1520)))))_>=_new_pr2F0G12(x1518, x1519, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1520), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (5) (Main.Succ(new_primDivNatS3(new_primMinusNatS1(x2533), Main.Zero))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1523)))))))) & Main.Succ(x1520)=Main.Succ(Main.Succ(x2533)) & Main.Succ(Main.Zero)=Main.Zero ==> new_pr2F0G2(x1518, x1519, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1520)))))_>=_new_pr2F0G12(x1518, x1519, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1520), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (3) using rules (I), (II), (III), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (6) (x2530=x2534 & x2529=x2535 & new_primDivNatS01(x2530, x2529, x2534, x2535)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1523)))))))) & Main.Zero=x2529 ==> new_pr2F0G2(x1518, x1519, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2530))))))_>=_new_pr2F0G12(x1518, x1519, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2530)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS01(x2530, x2529, x2534, x2535)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1523)))))))) which results in the following new constraints: 162.74/105.94 162.74/105.94 (7) (new_primDivNatS02(x2538, x2537)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1523)))))))) & x2538=Main.Succ(x2536) & x2537=Main.Zero & Main.Zero=x2537 ==> new_pr2F0G2(x1518, x1519, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2538))))))_>=_new_pr2F0G12(x1518, x1519, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2538)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (8) (new_primDivNatS02(x2540, x2539)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1523)))))))) & x2540=Main.Zero & x2539=Main.Zero & Main.Zero=x2539 ==> new_pr2F0G2(x1518, x1519, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2540))))))_>=_new_pr2F0G12(x1518, x1519, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2540)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (9) (new_primDivNatS01(x2547, x2546, x2545, x2544)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1523)))))))) & x2547=Main.Succ(x2545) & x2546=Main.Succ(x2544) & Main.Zero=x2546 & (\/x2548,x2549,x2550:new_primDivNatS01(x2547, x2546, x2545, x2544)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2548)))))))) & x2547=x2545 & x2546=x2544 & Main.Zero=x2546 ==> new_pr2F0G2(x2549, x2550, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2547))))))_>=_new_pr2F0G12(x2549, x2550, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2547)), Main.Succ(Main.Zero)))))) ==> new_pr2F0G2(x1518, x1519, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2547))))))_>=_new_pr2F0G12(x1518, x1519, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2547)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (7) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (10) (new_pr2F0G2(x1518, x1519, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2536)))))))_>=_new_pr2F0G12(x1518, x1519, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Succ(x2536))), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (8) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (11) (new_pr2F0G2(x1518, x1519, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_new_pr2F0G12(x1518, x1519, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We solved constraint (9) using rules (I), (II), (III). 162.74/105.94 *We consider the chain new_pr2F0G2(x1524, x1525, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1526))))) -> new_pr2F0G12(x1524, x1525, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1526), Main.Succ(Main.Zero))))), new_pr2F0G12(x1527, x1528, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> H(x1527, x1528, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero)) which results in the following constraint: 162.74/105.94 162.74/105.94 (1) (new_pr2F0G12(x1524, x1525, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1526), Main.Succ(Main.Zero)))))=new_pr2F0G12(x1527, x1528, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) ==> new_pr2F0G2(x1524, x1525, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1526)))))_>=_new_pr2F0G12(x1524, x1525, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1526), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (2) (Main.Succ(x1526)=x2555 & Main.Succ(Main.Zero)=x2556 & new_primDivNatS3(x2555, x2556)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) ==> new_pr2F0G2(x1524, x1525, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1526)))))_>=_new_pr2F0G12(x1524, x1525, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1526), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS3(x2555, x2556)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) which results in the following new constraints: 162.74/105.94 162.74/105.94 (3) (new_primDivNatS01(x2558, x2557, x2558, x2557)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) & Main.Succ(x1526)=Main.Succ(Main.Succ(x2558)) & Main.Succ(Main.Zero)=Main.Succ(x2557) ==> new_pr2F0G2(x1524, x1525, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1526)))))_>=_new_pr2F0G12(x1524, x1525, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1526), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (4) (Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) & Main.Succ(x1526)=Main.Succ(Main.Zero) & Main.Succ(Main.Zero)=Main.Zero ==> new_pr2F0G2(x1524, x1525, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1526)))))_>=_new_pr2F0G12(x1524, x1525, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1526), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (5) (Main.Succ(new_primDivNatS3(new_primMinusNatS1(x2561), Main.Zero))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) & Main.Succ(x1526)=Main.Succ(Main.Succ(x2561)) & Main.Succ(Main.Zero)=Main.Zero ==> new_pr2F0G2(x1524, x1525, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1526)))))_>=_new_pr2F0G12(x1524, x1525, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1526), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (3) using rules (I), (II), (III), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (6) (x2558=x2562 & x2557=x2563 & new_primDivNatS01(x2558, x2557, x2562, x2563)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) & Main.Zero=x2557 ==> new_pr2F0G2(x1524, x1525, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2558))))))_>=_new_pr2F0G12(x1524, x1525, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2558)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS01(x2558, x2557, x2562, x2563)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) which results in the following new constraints: 162.74/105.94 162.74/105.94 (7) (new_primDivNatS02(x2566, x2565)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) & x2566=Main.Succ(x2564) & x2565=Main.Zero & Main.Zero=x2565 ==> new_pr2F0G2(x1524, x1525, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2566))))))_>=_new_pr2F0G12(x1524, x1525, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2566)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (8) (new_primDivNatS02(x2568, x2567)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) & x2568=Main.Zero & x2567=Main.Zero & Main.Zero=x2567 ==> new_pr2F0G2(x1524, x1525, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2568))))))_>=_new_pr2F0G12(x1524, x1525, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2568)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 (9) (new_primDivNatS01(x2575, x2574, x2573, x2572)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) & x2575=Main.Succ(x2573) & x2574=Main.Succ(x2572) & Main.Zero=x2574 & (\/x2576,x2577:new_primDivNatS01(x2575, x2574, x2573, x2572)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) & x2575=x2573 & x2574=x2572 & Main.Zero=x2574 ==> new_pr2F0G2(x2576, x2577, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2575))))))_>=_new_pr2F0G12(x2576, x2577, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2575)), Main.Succ(Main.Zero)))))) ==> new_pr2F0G2(x1524, x1525, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2575))))))_>=_new_pr2F0G12(x1524, x1525, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2575)), Main.Succ(Main.Zero)))))) 162.74/105.94 162.74/105.94 162.74/105.94 162.74/105.94 We simplified constraint (7) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.94 162.74/105.94 (10) (new_pr2F0G2(x1524, x1525, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2564)))))))_>=_new_pr2F0G12(x1524, x1525, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Succ(x2564))), Main.Succ(Main.Zero)))))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (8) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.95 162.74/105.95 (11) (new_pr2F0G2(x1524, x1525, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_new_pr2F0G12(x1524, x1525, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We solved constraint (9) using rules (I), (II), (III). 162.74/105.95 *We consider the chain new_pr2F0G2(x1529, x1530, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1531))))) -> new_pr2F0G12(x1529, x1530, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1531), Main.Succ(Main.Zero))))), new_pr2F0G12(x1532, x1533, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(x1532, x1533, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) which results in the following constraint: 162.74/105.95 162.74/105.95 (1) (new_pr2F0G12(x1529, x1530, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1531), Main.Succ(Main.Zero)))))=new_pr2F0G12(x1532, x1533, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) ==> new_pr2F0G2(x1529, x1530, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1531)))))_>=_new_pr2F0G12(x1529, x1530, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1531), Main.Succ(Main.Zero)))))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 162.74/105.95 162.74/105.95 (2) (Main.Succ(x1531)=x2582 & Main.Succ(Main.Zero)=x2583 & new_primDivNatS3(x2582, x2583)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) ==> new_pr2F0G2(x1529, x1530, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1531)))))_>=_new_pr2F0G12(x1529, x1530, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1531), Main.Succ(Main.Zero)))))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS3(x2582, x2583)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) which results in the following new constraints: 162.74/105.95 162.74/105.95 (3) (new_primDivNatS01(x2585, x2584, x2585, x2584)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) & Main.Succ(x1531)=Main.Succ(Main.Succ(x2585)) & Main.Succ(Main.Zero)=Main.Succ(x2584) ==> new_pr2F0G2(x1529, x1530, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1531)))))_>=_new_pr2F0G12(x1529, x1530, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1531), Main.Succ(Main.Zero)))))) 162.74/105.95 162.74/105.95 (4) (Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) & Main.Succ(x1531)=Main.Succ(Main.Zero) & Main.Succ(Main.Zero)=Main.Zero ==> new_pr2F0G2(x1529, x1530, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1531)))))_>=_new_pr2F0G12(x1529, x1530, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1531), Main.Succ(Main.Zero)))))) 162.74/105.95 162.74/105.95 (5) (Main.Succ(new_primDivNatS3(new_primMinusNatS1(x2588), Main.Zero))=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) & Main.Succ(x1531)=Main.Succ(Main.Succ(x2588)) & Main.Succ(Main.Zero)=Main.Zero ==> new_pr2F0G2(x1529, x1530, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1531)))))_>=_new_pr2F0G12(x1529, x1530, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1531), Main.Succ(Main.Zero)))))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (3) using rules (I), (II), (III), (VII) which results in the following new constraint: 162.74/105.95 162.74/105.95 (6) (x2585=x2589 & x2584=x2590 & new_primDivNatS01(x2585, x2584, x2589, x2590)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) & Main.Zero=x2584 ==> new_pr2F0G2(x1529, x1530, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2585))))))_>=_new_pr2F0G12(x1529, x1530, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2585)), Main.Succ(Main.Zero)))))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rule (V) (with possible (I) afterwards) using induction on new_primDivNatS01(x2585, x2584, x2589, x2590)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) which results in the following new constraints: 162.74/105.95 162.74/105.95 (7) (new_primDivNatS02(x2593, x2592)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) & x2593=Main.Succ(x2591) & x2592=Main.Zero & Main.Zero=x2592 ==> new_pr2F0G2(x1529, x1530, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2593))))))_>=_new_pr2F0G12(x1529, x1530, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2593)), Main.Succ(Main.Zero)))))) 162.74/105.95 162.74/105.95 (8) (new_primDivNatS02(x2595, x2594)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) & x2595=Main.Zero & x2594=Main.Zero & Main.Zero=x2594 ==> new_pr2F0G2(x1529, x1530, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2595))))))_>=_new_pr2F0G12(x1529, x1530, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2595)), Main.Succ(Main.Zero)))))) 162.74/105.95 162.74/105.95 (9) (new_primDivNatS01(x2602, x2601, x2600, x2599)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) & x2602=Main.Succ(x2600) & x2601=Main.Succ(x2599) & Main.Zero=x2601 & (\/x2603,x2604:new_primDivNatS01(x2602, x2601, x2600, x2599)=Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) & x2602=x2600 & x2601=x2599 & Main.Zero=x2601 ==> new_pr2F0G2(x2603, x2604, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2602))))))_>=_new_pr2F0G12(x2603, x2604, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2602)), Main.Succ(Main.Zero)))))) ==> new_pr2F0G2(x1529, x1530, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2602))))))_>=_new_pr2F0G12(x1529, x1530, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(x2602)), Main.Succ(Main.Zero)))))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (7) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.95 162.74/105.95 (10) (new_pr2F0G2(x1529, x1530, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2591)))))))_>=_new_pr2F0G12(x1529, x1530, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Succ(x2591))), Main.Succ(Main.Zero)))))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (8) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 162.74/105.95 162.74/105.95 (11) (new_pr2F0G2(x1529, x1530, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_new_pr2F0G12(x1529, x1530, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We solved constraint (9) using rules (I), (II), (III). 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 For Pair new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Zero))) the following chains were created: 162.74/105.95 *We consider the chain new_pr2F0G2(x1534, x1535, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(x1534, x1535, Main.Succ(Main.Succ(Main.Zero))), new_pr2F0G12(x1536, x1537, Main.Succ(Main.Succ(x1538))) -> new_pr2F0G11(x1536, x1537, Main.Succ(x1538), x1538) which results in the following constraint: 162.74/105.95 162.74/105.95 (1) (new_pr2F0G12(x1534, x1535, Main.Succ(Main.Succ(Main.Zero)))=new_pr2F0G12(x1536, x1537, Main.Succ(Main.Succ(x1538))) ==> new_pr2F0G2(x1534, x1535, Main.Succ(Main.Succ(Main.Succ(Main.Zero))))_>=_new_pr2F0G12(x1534, x1535, Main.Succ(Main.Succ(Main.Zero)))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.95 162.74/105.95 (2) (new_pr2F0G2(x1534, x1535, Main.Succ(Main.Succ(Main.Succ(Main.Zero))))_>=_new_pr2F0G12(x1534, x1535, Main.Succ(Main.Succ(Main.Zero)))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 For Pair new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)) the following chains were created: 162.74/105.95 *We consider the chain new_pr2F32(x1613, x1614, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), x1615) -> H(x1615, x1614, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)), H(x1616, x1617, x1618, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(x1616, x1617, x1618, Main.Zero) which results in the following constraint: 162.74/105.95 162.74/105.95 (1) (H(x1615, x1614, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero))=H(x1616, x1617, x1618, cons_new_pr2F0G11(Main.Zero)) ==> new_pr2F32(x1613, x1614, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), x1615)_>=_H(x1615, x1614, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.95 162.74/105.95 (2) (new_pr2F32(x1613, x1614, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), x1615)_>=_H(x1615, x1614, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 For Pair new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) the following chains were created: 162.74/105.95 *We consider the chain new_pr2F32(x1706, x1707, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), x1708) -> H(x1708, x1707, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))), H(x1709, x1710, x1711, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(x1709, x1710, x1711, Main.Succ(Main.Zero)) which results in the following constraint: 162.74/105.95 162.74/105.95 (1) (H(x1708, x1707, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))=H(x1709, x1710, x1711, cons_new_pr2F0G11(Main.Succ(Main.Zero))) ==> new_pr2F32(x1706, x1707, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), x1708)_>=_H(x1708, x1707, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.95 162.74/105.95 (2) (new_pr2F32(x1706, x1707, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), x1708)_>=_H(x1708, x1707, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 For Pair new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)) the following chains were created: 162.74/105.95 *We consider the chain new_pr2F0G12(x1787, x1788, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> H(x1787, x1788, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)), H(x1789, x1790, x1791, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(x1789, x1790, x1791, Main.Zero) which results in the following constraint: 162.74/105.95 162.74/105.95 (1) (H(x1787, x1788, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero))=H(x1789, x1790, x1791, cons_new_pr2F0G11(Main.Zero)) ==> new_pr2F0G12(x1787, x1788, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_H(x1787, x1788, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.95 162.74/105.95 (2) (new_pr2F0G12(x1787, x1788, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_H(x1787, x1788, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 For Pair new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) the following chains were created: 162.74/105.95 *We consider the chain new_pr2F0G12(x1850, x1851, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> H(x1850, x1851, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))), H(x1852, x1853, x1854, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(x1852, x1853, x1854, Main.Succ(Main.Zero)) which results in the following constraint: 162.74/105.95 162.74/105.95 (1) (H(x1850, x1851, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))=H(x1852, x1853, x1854, cons_new_pr2F0G11(Main.Succ(Main.Zero))) ==> new_pr2F0G12(x1850, x1851, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_H(x1850, x1851, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.95 162.74/105.95 (2) (new_pr2F0G12(x1850, x1851, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_H(x1850, x1851, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 For Pair new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))), new_new_pr2F0G11(x0)) the following chains were created: 162.74/105.95 *We consider the chain new_pr2F32(x1921, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1923)))))))))), x1924) -> H(x1924, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1923))))))))), new_new_pr2F0G11(x1923)), H(x1925, x1926, x1927, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(x1925, x1926, x1927, Main.Zero) which results in the following constraint: 162.74/105.95 162.74/105.95 (1) (H(x1924, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1923))))))))), new_new_pr2F0G11(x1923))=H(x1925, x1926, x1927, cons_new_pr2F0G11(Main.Zero)) ==> new_pr2F32(x1921, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1923)))))))))), x1924)_>=_H(x1924, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1923))))))))), new_new_pr2F0G11(x1923))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.95 162.74/105.95 (2) (new_new_pr2F0G11(x1923)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F32(x1921, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1923)))))))))), x1924)_>=_H(x1924, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1923))))))))), new_new_pr2F0G11(x1923))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_new_pr2F0G11(x1923)=cons_new_pr2F0G11(Main.Zero) which results in the following new constraints: 162.74/105.95 162.74/105.95 (3) (new_new_pr2F0G11(x2609)=cons_new_pr2F0G11(Main.Zero) & (\/x2610,x2611,x2612:new_new_pr2F0G11(x2609)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F32(x2610, x2611, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2609)))))))))), x2612)_>=_H(x2612, x2611, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2609))))))))), new_new_pr2F0G11(x2609))) ==> new_pr2F32(x1921, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2609)))))))))))), x1924)_>=_H(x1924, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2609))))))))))), new_new_pr2F0G11(Main.Succ(Main.Succ(x2609))))) 162.74/105.95 162.74/105.95 (4) (cons_new_pr2F0G11(Main.Zero)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F32(x1921, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), x1924)_>=_H(x1924, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), new_new_pr2F0G11(Main.Zero))) 162.74/105.95 162.74/105.95 (5) (cons_new_pr2F0G11(Main.Succ(Main.Zero))=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F32(x1921, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), x1924)_>=_H(x1924, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (3) using rule (VI) where we applied the induction hypothesis (\/x2610,x2611,x2612:new_new_pr2F0G11(x2609)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F32(x2610, x2611, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2609)))))))))), x2612)_>=_H(x2612, x2611, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2609))))))))), new_new_pr2F0G11(x2609))) with sigma = [x2610 / x1921, x2611 / x1922, x2612 / x1924] which results in the following new constraint: 162.74/105.95 162.74/105.95 (6) (new_pr2F32(x1921, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2609)))))))))), x1924)_>=_H(x1924, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2609))))))))), new_new_pr2F0G11(x2609)) ==> new_pr2F32(x1921, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2609)))))))))))), x1924)_>=_H(x1924, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2609))))))))))), new_new_pr2F0G11(Main.Succ(Main.Succ(x2609))))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (4) using rules (I), (II) which results in the following new constraint: 162.74/105.95 162.74/105.95 (7) (new_pr2F32(x1921, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), x1924)_>=_H(x1924, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), new_new_pr2F0G11(Main.Zero))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We solved constraint (5) using rules (I), (II). 162.74/105.95 *We consider the chain new_pr2F32(x1928, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1930)))))))))), x1931) -> H(x1931, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1930))))))))), new_new_pr2F0G11(x1930)), H(x1932, x1933, x1934, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(x1932, x1933, x1934, Main.Succ(Main.Zero)) which results in the following constraint: 162.74/105.95 162.74/105.95 (1) (H(x1931, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1930))))))))), new_new_pr2F0G11(x1930))=H(x1932, x1933, x1934, cons_new_pr2F0G11(Main.Succ(Main.Zero))) ==> new_pr2F32(x1928, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1930)))))))))), x1931)_>=_H(x1931, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1930))))))))), new_new_pr2F0G11(x1930))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.95 162.74/105.95 (2) (new_new_pr2F0G11(x1930)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F32(x1928, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1930)))))))))), x1931)_>=_H(x1931, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1930))))))))), new_new_pr2F0G11(x1930))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_new_pr2F0G11(x1930)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) which results in the following new constraints: 162.74/105.95 162.74/105.95 (3) (new_new_pr2F0G11(x2613)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) & (\/x2614,x2615,x2616:new_new_pr2F0G11(x2613)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F32(x2614, x2615, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2613)))))))))), x2616)_>=_H(x2616, x2615, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2613))))))))), new_new_pr2F0G11(x2613))) ==> new_pr2F32(x1928, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2613)))))))))))), x1931)_>=_H(x1931, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2613))))))))))), new_new_pr2F0G11(Main.Succ(Main.Succ(x2613))))) 162.74/105.95 162.74/105.95 (4) (cons_new_pr2F0G11(Main.Zero)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F32(x1928, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), x1931)_>=_H(x1931, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), new_new_pr2F0G11(Main.Zero))) 162.74/105.95 162.74/105.95 (5) (cons_new_pr2F0G11(Main.Succ(Main.Zero))=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F32(x1928, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), x1931)_>=_H(x1931, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (3) using rule (VI) where we applied the induction hypothesis (\/x2614,x2615,x2616:new_new_pr2F0G11(x2613)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F32(x2614, x2615, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2613)))))))))), x2616)_>=_H(x2616, x2615, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2613))))))))), new_new_pr2F0G11(x2613))) with sigma = [x2614 / x1928, x2615 / x1929, x2616 / x1931] which results in the following new constraint: 162.74/105.95 162.74/105.95 (6) (new_pr2F32(x1928, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2613)))))))))), x1931)_>=_H(x1931, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2613))))))))), new_new_pr2F0G11(x2613)) ==> new_pr2F32(x1928, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2613)))))))))))), x1931)_>=_H(x1931, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2613))))))))))), new_new_pr2F0G11(Main.Succ(Main.Succ(x2613))))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We solved constraint (4) using rules (I), (II).We simplified constraint (5) using rules (I), (II) which results in the following new constraint: 162.74/105.95 162.74/105.95 (7) (new_pr2F32(x1928, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), x1931)_>=_H(x1931, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 For Pair new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero)) the following chains were created: 162.74/105.95 *We consider the chain new_pr2F32(x2037, x2038, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2039) -> H(x2039, x2038, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero)), H(x2040, x2041, x2042, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(x2040, x2041, x2042, Main.Zero) which results in the following constraint: 162.74/105.95 162.74/105.95 (1) (H(x2039, x2038, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero))=H(x2040, x2041, x2042, cons_new_pr2F0G11(Main.Zero)) ==> new_pr2F32(x2037, x2038, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2039)_>=_H(x2039, x2038, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero))) 162.74/105.95 162.74/105.95 162.74/105.95 162.74/105.95 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.74/105.95 162.74/105.95 (2) (new_pr2F32(x2037, x2038, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2039)_>=_H(x2039, x2038, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 For Pair new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) the following chains were created: 162.75/105.95 *We consider the chain new_pr2F32(x2130, x2131, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), x2132) -> H(x2132, x2131, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))), H(x2133, x2134, x2135, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(x2133, x2134, x2135, Main.Succ(Main.Zero)) which results in the following constraint: 162.75/105.95 162.75/105.95 (1) (H(x2132, x2131, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))=H(x2133, x2134, x2135, cons_new_pr2F0G11(Main.Succ(Main.Zero))) ==> new_pr2F32(x2130, x2131, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), x2132)_>=_H(x2132, x2131, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.75/105.95 162.75/105.95 (2) (new_pr2F32(x2130, x2131, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), x2132)_>=_H(x2132, x2131, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 For Pair new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))), new_new_pr2F0G11(x0)) the following chains were created: 162.75/105.95 *We consider the chain new_pr2F0G12(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2219))))))))))) -> H(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2219))))))))), new_new_pr2F0G11(x2219)), H(x2220, x2221, x2222, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(x2220, x2221, x2222, Main.Zero) which results in the following constraint: 162.75/105.95 162.75/105.95 (1) (H(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2219))))))))), new_new_pr2F0G11(x2219))=H(x2220, x2221, x2222, cons_new_pr2F0G11(Main.Zero)) ==> new_pr2F0G12(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2219)))))))))))_>=_H(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2219))))))))), new_new_pr2F0G11(x2219))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.75/105.95 162.75/105.95 (2) (new_new_pr2F0G11(x2219)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F0G12(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2219)))))))))))_>=_H(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2219))))))))), new_new_pr2F0G11(x2219))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_new_pr2F0G11(x2219)=cons_new_pr2F0G11(Main.Zero) which results in the following new constraints: 162.75/105.95 162.75/105.95 (3) (new_new_pr2F0G11(x2617)=cons_new_pr2F0G11(Main.Zero) & (\/x2618,x2619:new_new_pr2F0G11(x2617)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F0G12(x2618, x2619, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2617)))))))))))_>=_H(x2618, x2619, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2617))))))))), new_new_pr2F0G11(x2617))) ==> new_pr2F0G12(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2617)))))))))))))_>=_H(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2617))))))))))), new_new_pr2F0G11(Main.Succ(Main.Succ(x2617))))) 162.75/105.95 162.75/105.95 (4) (cons_new_pr2F0G11(Main.Zero)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F0G12(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))_>=_H(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), new_new_pr2F0G11(Main.Zero))) 162.75/105.95 162.75/105.95 (5) (cons_new_pr2F0G11(Main.Succ(Main.Zero))=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F0G12(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))_>=_H(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 We simplified constraint (3) using rule (VI) where we applied the induction hypothesis (\/x2618,x2619:new_new_pr2F0G11(x2617)=cons_new_pr2F0G11(Main.Zero) ==> new_pr2F0G12(x2618, x2619, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2617)))))))))))_>=_H(x2618, x2619, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2617))))))))), new_new_pr2F0G11(x2617))) with sigma = [x2618 / x2217, x2619 / x2218] which results in the following new constraint: 162.75/105.95 162.75/105.95 (6) (new_pr2F0G12(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2617)))))))))))_>=_H(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2617))))))))), new_new_pr2F0G11(x2617)) ==> new_pr2F0G12(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2617)))))))))))))_>=_H(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2617))))))))))), new_new_pr2F0G11(Main.Succ(Main.Succ(x2617))))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 We simplified constraint (4) using rules (I), (II) which results in the following new constraint: 162.75/105.95 162.75/105.95 (7) (new_pr2F0G12(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))_>=_H(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), new_new_pr2F0G11(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 We solved constraint (5) using rules (I), (II). 162.75/105.95 *We consider the chain new_pr2F0G12(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2225))))))))))) -> H(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2225))))))))), new_new_pr2F0G11(x2225)), H(x2226, x2227, x2228, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(x2226, x2227, x2228, Main.Succ(Main.Zero)) which results in the following constraint: 162.75/105.95 162.75/105.95 (1) (H(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2225))))))))), new_new_pr2F0G11(x2225))=H(x2226, x2227, x2228, cons_new_pr2F0G11(Main.Succ(Main.Zero))) ==> new_pr2F0G12(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2225)))))))))))_>=_H(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2225))))))))), new_new_pr2F0G11(x2225))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.75/105.95 162.75/105.95 (2) (new_new_pr2F0G11(x2225)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F0G12(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2225)))))))))))_>=_H(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2225))))))))), new_new_pr2F0G11(x2225))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_new_pr2F0G11(x2225)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) which results in the following new constraints: 162.75/105.95 162.75/105.95 (3) (new_new_pr2F0G11(x2620)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) & (\/x2621,x2622:new_new_pr2F0G11(x2620)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F0G12(x2621, x2622, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2620)))))))))))_>=_H(x2621, x2622, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2620))))))))), new_new_pr2F0G11(x2620))) ==> new_pr2F0G12(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2620)))))))))))))_>=_H(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2620))))))))))), new_new_pr2F0G11(Main.Succ(Main.Succ(x2620))))) 162.75/105.95 162.75/105.95 (4) (cons_new_pr2F0G11(Main.Zero)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F0G12(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))_>=_H(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), new_new_pr2F0G11(Main.Zero))) 162.75/105.95 162.75/105.95 (5) (cons_new_pr2F0G11(Main.Succ(Main.Zero))=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F0G12(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))_>=_H(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 We simplified constraint (3) using rule (VI) where we applied the induction hypothesis (\/x2621,x2622:new_new_pr2F0G11(x2620)=cons_new_pr2F0G11(Main.Succ(Main.Zero)) ==> new_pr2F0G12(x2621, x2622, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2620)))))))))))_>=_H(x2621, x2622, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2620))))))))), new_new_pr2F0G11(x2620))) with sigma = [x2621 / x2223, x2622 / x2224] which results in the following new constraint: 162.75/105.95 162.75/105.95 (6) (new_pr2F0G12(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2620)))))))))))_>=_H(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2620))))))))), new_new_pr2F0G11(x2620)) ==> new_pr2F0G12(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2620)))))))))))))_>=_H(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2620))))))))))), new_new_pr2F0G11(Main.Succ(Main.Succ(x2620))))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 We solved constraint (4) using rules (I), (II).We simplified constraint (5) using rules (I), (II) which results in the following new constraint: 162.75/105.95 162.75/105.95 (7) (new_pr2F0G12(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))_>=_H(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 For Pair new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero)) the following chains were created: 162.75/105.95 *We consider the chain new_pr2F0G12(x2304, x2305, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> H(x2304, x2305, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero)), H(x2306, x2307, x2308, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(x2306, x2307, x2308, Main.Zero) which results in the following constraint: 162.75/105.95 162.75/105.95 (1) (H(x2304, x2305, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero))=H(x2306, x2307, x2308, cons_new_pr2F0G11(Main.Zero)) ==> new_pr2F0G12(x2304, x2305, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_H(x2304, x2305, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.75/105.95 162.75/105.95 (2) (new_pr2F0G12(x2304, x2305, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_H(x2304, x2305, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 For Pair new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) the following chains were created: 162.75/105.95 *We consider the chain new_pr2F0G12(x2367, x2368, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(x2367, x2368, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))), H(x2369, x2370, x2371, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(x2369, x2370, x2371, Main.Succ(Main.Zero)) which results in the following constraint: 162.75/105.95 162.75/105.95 (1) (H(x2367, x2368, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))=H(x2369, x2370, x2371, cons_new_pr2F0G11(Main.Succ(Main.Zero))) ==> new_pr2F0G12(x2367, x2368, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x2367, x2368, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 162.75/105.95 162.75/105.95 (2) (new_pr2F0G12(x2367, x2368, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x2367, x2368, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 To summarize, we get the following constraints P__>=_ for the following pairs. 162.75/105.95 162.75/105.95 *new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.75/105.95 162.75/105.95 *(new_pr2F0G12(x3, x4, Main.Succ(Main.Succ(Main.Zero)))_>=_new_pr2F0G11(x3, x4, Main.Succ(Main.Zero), Main.Zero)) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G12(x9, x10, Main.Succ(Main.Succ(Main.Succ(Main.Zero))))_>=_new_pr2F0G11(x9, x10, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.75/105.95 162.75/105.95 *(new_pr2F0G11(x126, x127, Main.Succ(Main.Zero), Main.Zero)_>=_new_pr2F0G2(x126, new_srRatio(x127), Main.Succ(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G11(x131, x132, Main.Succ(Main.Succ(Main.Zero)), Main.Zero)_>=_new_pr2F0G2(x131, new_srRatio(x132), Main.Succ(Main.Succ(Main.Zero)))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G11(x148, x149, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x153)))), Main.Zero)_>=_new_pr2F0G2(x148, new_srRatio(x149), Main.Succ(Main.Succ(Main.Succ(Main.Succ(x153)))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G11(x154, x155, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), Main.Zero)_>=_new_pr2F0G2(x154, new_srRatio(x155), Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.75/105.95 162.75/105.95 *(new_pr2F0G11(x198, x199, x200, Main.Succ(Main.Zero))_>=_new_pr2F0(x199, x200, Main.Pos(Main.Succ(Main.Zero)), x198)) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G11(x219, x220, Main.Zero, Main.Succ(Main.Zero))_>=_new_pr2F0(x220, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x219)) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.75/105.95 162.75/105.95 *(new_pr2F0(x293, x294, Main.Pos(Main.Succ(Main.Zero)), x295)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(x294, Main.Zero))), x293, Main.Succ(Main.Succ(new_primPlusNat0(x294, Main.Zero))), x295)) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0(x309, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x311)_>=_new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x309, Main.Succ(Main.Succ(new_primPlusNat0(Main.Zero, Main.Zero))), x311)) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.75/105.95 162.75/105.95 *(new_pr2F31(Main.Succ(Main.Succ(x394)), x395, Main.Succ(Main.Succ(x396)), x397)_>=_new_pr2F32(Main.Succ(x394), x395, Main.Succ(Main.Succ(x396)), new_srRatio0(x395, x397))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F31(Main.Succ(Main.Succ(x430)), x431, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), x433)_>=_new_pr2F32(Main.Succ(x430), x431, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), new_srRatio0(x431, x433))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F31(Main.Succ(Main.Succ(x437)), x438, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), x440)_>=_new_pr2F32(Main.Succ(x437), x438, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), new_srRatio0(x438, x440))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F31(Main.Succ(Main.Succ(x460)), x461, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), x463)_>=_new_pr2F32(Main.Succ(x460), x461, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), new_srRatio0(x461, x463))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F31(Main.Succ(Main.Succ(x467)), x468, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), x470)_>=_new_pr2F32(Main.Succ(x467), x468, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), new_srRatio0(x468, x470))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F31(Main.Succ(Main.Succ(x482)), x483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x488)))))))))), x485)_>=_new_pr2F32(Main.Succ(x482), x483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x488)))))))))), new_srRatio0(x483, x485))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F31(Main.Succ(Main.Succ(x490)), x491, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x493)_>=_new_pr2F32(Main.Succ(x490), x491, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), new_srRatio0(x491, x493))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F31(Main.Succ(Main.Succ(x497)), x498, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), x500)_>=_new_pr2F32(Main.Succ(x497), x498, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), new_srRatio0(x498, x500))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.75/105.95 162.75/105.95 *(new_pr2F32(x520, x521, Main.Succ(Main.Succ(Main.Zero)), x523)_>=_new_pr2F0G11(x523, x521, Main.Succ(Main.Zero), Main.Zero)) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F32(x527, x528, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), x530)_>=_new_pr2F0G11(x530, x528, Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.75/105.95 162.75/105.95 *(H(x641, x642, x643, cons_new_pr2F0G11(Main.Zero))_>=_new_pr2F0G11(x641, x642, x643, Main.Zero)) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.75/105.95 162.75/105.95 *(H(x734, x735, x736, cons_new_pr2F0G11(Main.Succ(Main.Zero)))_>=_new_pr2F0G11(x734, x735, x736, Main.Succ(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.75/105.95 162.75/105.95 *(new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x828, Main.Succ(Main.Succ(Main.Zero)), x829)_>=_new_pr2F32(Main.Succ(Main.Zero), x828, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(x828, x829))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.75/105.95 162.75/105.95 *(new_pr2F0(x888, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x889)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x888, Main.Succ(Main.Succ(Main.Zero)), x889)) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0(x900, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x901)_>=_new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), x900, Main.Succ(Main.Succ(Main.Zero)), x901)) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.75/105.95 162.75/105.95 *(new_pr2F0G12(x950, x951, Main.Succ(Main.Zero))_>=_new_pr2F0(x951, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x950)) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G12(x965, x966, Main.Succ(Main.Zero))_>=_new_pr2F0(x966, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), x965)) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1027, x1028, Main.Succ(Main.Zero))_>=_new_pr2F0G12(x1027, x1028, Main.Succ(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1087, x1088, Main.Succ(Main.Succ(Main.Zero)))_>=_new_pr2F0G12(x1087, x1088, Main.Succ(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.75/105.95 162.75/105.95 *(new_pr2F32(x1145, x1146, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), x1147)_>=_H(x1147, x1146, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.75/105.95 162.75/105.95 *(new_pr2F32(x1238, x1239, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), x1240)_>=_H(x1240, x1239, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.75/105.95 162.75/105.95 *(new_pr2F0G12(x1319, x1320, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))_>=_H(x1319, x1320, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.75/105.95 162.75/105.95 *(new_pr2F0G12(x1382, x1383, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_H(x1382, x1383, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero))))) 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1429, x1430, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x1431)))))_>=_new_pr2F0G12(x1429, x1430, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x1431), Main.Succ(Main.Zero)))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1477, x1478, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2428)))))))_>=_new_pr2F0G12(x1477, x1478, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Succ(x2428))), Main.Succ(Main.Zero)))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1477, x1478, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_new_pr2F0G12(x1477, x1478, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1482, x1483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2455)))))))_>=_new_pr2F0G12(x1482, x1483, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Succ(x2455))), Main.Succ(Main.Zero)))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1482, x1483, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_new_pr2F0G12(x1482, x1483, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1499, x1500, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2482)))))))_>=_new_pr2F0G12(x1499, x1500, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Succ(x2482))), Main.Succ(Main.Zero)))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1499, x1500, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_new_pr2F0G12(x1499, x1500, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1504, x1505, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2509)))))))_>=_new_pr2F0G12(x1504, x1505, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Succ(x2509))), Main.Succ(Main.Zero)))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1504, x1505, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_new_pr2F0G12(x1504, x1505, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1518, x1519, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2536)))))))_>=_new_pr2F0G12(x1518, x1519, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Succ(x2536))), Main.Succ(Main.Zero)))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1518, x1519, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_new_pr2F0G12(x1518, x1519, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1524, x1525, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2564)))))))_>=_new_pr2F0G12(x1524, x1525, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Succ(x2564))), Main.Succ(Main.Zero)))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1524, x1525, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_new_pr2F0G12(x1524, x1525, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1529, x1530, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2591)))))))_>=_new_pr2F0G12(x1529, x1530, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Succ(x2591))), Main.Succ(Main.Zero)))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1529, x1530, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))_>=_new_pr2F0G12(x1529, x1530, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)))))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Zero))) 162.75/105.95 162.75/105.95 *(new_pr2F0G2(x1534, x1535, Main.Succ(Main.Succ(Main.Succ(Main.Zero))))_>=_new_pr2F0G12(x1534, x1535, Main.Succ(Main.Succ(Main.Zero)))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)) 162.75/105.95 162.75/105.95 *(new_pr2F32(x1613, x1614, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), x1615)_>=_H(x1615, x1614, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.75/105.95 162.75/105.95 *(new_pr2F32(x1706, x1707, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), x1708)_>=_H(x1708, x1707, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)) 162.75/105.95 162.75/105.95 *(new_pr2F0G12(x1787, x1788, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))_>=_H(x1787, x1788, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.75/105.95 162.75/105.95 *(new_pr2F0G12(x1850, x1851, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))_>=_H(x1850, x1851, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))), new_new_pr2F0G11(x0)) 162.75/105.95 162.75/105.95 *(new_pr2F32(x1921, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2609)))))))))), x1924)_>=_H(x1924, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2609))))))))), new_new_pr2F0G11(x2609)) ==> new_pr2F32(x1921, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2609)))))))))))), x1924)_>=_H(x1924, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2609))))))))))), new_new_pr2F0G11(Main.Succ(Main.Succ(x2609))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F32(x1921, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), x1924)_>=_H(x1924, x1922, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), new_new_pr2F0G11(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F32(x1928, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2613)))))))))), x1931)_>=_H(x1931, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2613))))))))), new_new_pr2F0G11(x2613)) ==> new_pr2F32(x1928, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2613)))))))))))), x1931)_>=_H(x1931, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2613))))))))))), new_new_pr2F0G11(Main.Succ(Main.Succ(x2613))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F32(x1928, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))), x1931)_>=_H(x1931, x1929, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero)) 162.75/105.95 162.75/105.95 *(new_pr2F32(x2037, x2038, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), x2039)_>=_H(x2039, x2038, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.75/105.95 162.75/105.95 *(new_pr2F32(x2130, x2131, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), x2132)_>=_H(x2132, x2131, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))), new_new_pr2F0G11(x0)) 162.75/105.95 162.75/105.95 *(new_pr2F0G12(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2617)))))))))))_>=_H(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2617))))))))), new_new_pr2F0G11(x2617)) ==> new_pr2F0G12(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2617)))))))))))))_>=_H(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2617))))))))))), new_new_pr2F0G11(Main.Succ(Main.Succ(x2617))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G12(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))))_>=_H(x2217, x2218, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), new_new_pr2F0G11(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G12(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2620)))))))))))_>=_H(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2620))))))))), new_new_pr2F0G11(x2620)) ==> new_pr2F0G12(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2620)))))))))))))_>=_H(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2620))))))))))), new_new_pr2F0G11(Main.Succ(Main.Succ(x2620))))) 162.75/105.95 162.75/105.95 162.75/105.95 *(new_pr2F0G12(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))))_>=_H(x2223, x2224, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))), new_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero)) 162.75/105.95 162.75/105.95 *(new_pr2F0G12(x2304, x2305, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))_>=_H(x2304, x2305, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 *new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.75/105.95 162.75/105.95 *(new_pr2F0G12(x2367, x2368, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))))_>=_H(x2367, x2368, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero)))) 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 The constraints for P_> respective P_bound are constructed from P__>=_ where we just replace every occurence of "t _>=_ s" in P__>=_ by "t > s" respective "t _>=_ c". Here c stands for the fresh constant used for P_bound. 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (659) 162.75/105.95 Obligation: 162.75/105.95 Q DP problem: 162.75/105.95 The TRS P consists of the following rules: 162.75/105.95 162.75/105.95 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Succ(vx6100))) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.75/105.95 new_pr2F0G11(vx77, vx78, vx79, Main.Zero) -> new_pr2F0G2(vx77, new_srRatio(vx78), vx79) 162.75/105.95 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) -> new_pr2F0(vx78, vx79, Main.Pos(Main.Succ(Main.Zero)), vx77) 162.75/105.95 new_pr2F0(z1, z2, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z1, Main.Succ(Main.Succ(new_primPlusNat0(z2, Main.Zero))), z0) 162.75/105.95 new_pr2F31(Main.Succ(Main.Succ(y_0)), z0, Main.Succ(Main.Succ(y_1)), z2) -> new_pr2F32(Main.Succ(y_0), z0, Main.Succ(Main.Succ(y_1)), new_srRatio0(z0, z2)) 162.75/105.95 new_pr2F32(vx620, vx50, Main.Succ(Main.Succ(vx6100)), vx67) -> new_pr2F0G11(vx67, vx50, Main.Succ(vx6100), vx6100) 162.75/105.95 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Zero)) -> new_pr2F0G11(vx77, vx78, vx79, Main.Zero) 162.75/105.95 H(vx77, vx78, vx79, cons_new_pr2F0G11(Main.Succ(Main.Zero))) -> new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Zero)) 162.75/105.95 new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z0, Main.Succ(Main.Succ(Main.Zero)), z1) -> new_pr2F32(Main.Succ(Main.Zero), z0, Main.Succ(Main.Succ(Main.Zero)), new_srRatio0(z0, z1)) 162.75/105.95 new_pr2F0(z1, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), z0) -> new_pr2F31(Main.Succ(Main.Succ(Main.Zero)), z1, Main.Succ(Main.Succ(Main.Zero)), z0) 162.75/105.95 new_pr2F0G12(vx67, vx50, Main.Succ(Main.Zero)) -> new_pr2F0(vx50, Main.Zero, Main.Pos(Main.Succ(Main.Zero)), vx67) 162.75/105.95 new_pr2F0G2(y0, y1, Main.Succ(Main.Zero)) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.75/105.95 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Zero))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Zero)) 162.75/105.95 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.75/105.95 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.75/105.95 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero))), cons_new_pr2F0G11(Main.Zero)) 162.75/105.95 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.75/105.95 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(x2))))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(new_primDivNatS3(Main.Succ(x2), Main.Succ(Main.Zero))))) 162.75/105.95 new_pr2F0G2(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Zero)))) -> new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Zero))) 162.75/105.95 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)) 162.75/105.95 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.75/105.95 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))), cons_new_pr2F0G11(Main.Zero)) 162.75/105.95 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.75/105.95 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0)))))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))), new_new_pr2F0G11(x0)) 162.75/105.95 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero)) 162.75/105.95 new_pr2F32(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))), y3) -> H(y3, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.75/105.95 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(x0))))))))), new_new_pr2F0G11(x0)) 162.75/105.95 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero))))))), cons_new_pr2F0G11(Main.Zero)) 162.75/105.95 new_pr2F0G12(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))))) -> H(y0, y1, Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Succ(Main.Zero)))))))), cons_new_pr2F0G11(Main.Succ(Main.Zero))) 162.75/105.95 162.75/105.95 The TRS R consists of the following rules: 162.75/105.95 162.75/105.95 new_new_pr2F0G11(Main.Succ(Main.Succ(vx8000))) -> new_new_pr2F0G11(vx8000) 162.75/105.95 new_new_pr2F0G11(Main.Zero) -> cons_new_pr2F0G11(Main.Zero) 162.75/105.95 new_new_pr2F0G11(Main.Succ(Main.Zero)) -> cons_new_pr2F0G11(Main.Succ(Main.Zero)) 162.75/105.95 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.75/105.95 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.75/105.95 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.75/105.95 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.75/105.95 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.75/105.95 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.75/105.95 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.75/105.95 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.75/105.95 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.75/105.95 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.75/105.95 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.75/105.95 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.75/105.95 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.75/105.95 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.75/105.95 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.75/105.95 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.75/105.95 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.75/105.95 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.75/105.95 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.75/105.95 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.75/105.95 new_error0 -> Prelude.error([]) 162.75/105.95 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.75/105.95 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.75/105.95 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.75/105.95 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.75/105.95 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.75/105.95 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.75/105.95 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.75/105.95 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.75/105.95 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.75/105.95 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.75/105.95 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.75/105.95 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.75/105.95 new_error -> Prelude.error([]) 162.75/105.95 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.75/105.95 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.75/105.95 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.75/105.95 new_primMinusNatS2 -> Main.Zero 162.75/105.95 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.75/105.95 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.75/105.95 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.75/105.95 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.75/105.95 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.75/105.95 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.75/105.95 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.75/105.95 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.75/105.95 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.75/105.95 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.75/105.95 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.75/105.95 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.75/105.95 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.75/105.95 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.75/105.95 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.75/105.95 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.75/105.95 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.75/105.95 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.75/105.95 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.75/105.95 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.75/105.95 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.75/105.95 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.75/105.95 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.75/105.95 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.75/105.95 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.75/105.95 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.75/105.95 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.75/105.95 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.75/105.95 new_absReal10 -> Main.Neg(Main.Zero) 162.75/105.95 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.75/105.95 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.75/105.95 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.75/105.95 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.75/105.95 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.75/105.95 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.75/105.95 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.75/105.95 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.75/105.95 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.75/105.95 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.75/105.95 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.75/105.95 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.75/105.95 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.75/105.95 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.75/105.95 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.75/105.95 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.75/105.95 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.75/105.95 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.75/105.95 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.75/105.95 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.75/105.95 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.75/105.95 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.75/105.95 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.75/105.95 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.75/105.95 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.75/105.95 new_absMyInt0(Main.Zero) -> new_absReal10 162.75/105.95 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.75/105.95 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.75/105.95 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.75/105.95 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.75/105.95 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.75/105.95 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.75/105.95 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.75/105.95 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.75/105.95 new_primMulNat1(Main.Zero) -> Main.Zero 162.75/105.95 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.75/105.95 162.75/105.95 The set Q consists of the following terms: 162.75/105.95 162.75/105.95 new_reduce2D1(x0, x1) 162.75/105.95 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.75/105.95 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.75/105.95 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.75/105.95 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.75/105.95 new_primModNatS02(x0, x1) 162.75/105.95 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.75/105.95 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.75/105.95 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.75/105.95 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.75/105.95 new_gcd20(Main.Zero, x0, Main.Zero) 162.75/105.95 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.75/105.95 new_absReal1(x0) 162.75/105.95 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.75/105.95 new_gcd22(Main.Zero, Main.Zero) 162.75/105.95 new_primPlusNat0(Main.Zero, Main.Zero) 162.75/105.95 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.75/105.95 new_error0 162.75/105.95 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.75/105.95 new_gcd22(Main.Succ(x0), x1) 162.75/105.95 new_gcd20(Main.Succ(x0), x1, x2) 162.75/105.95 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.75/105.95 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.75/105.95 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.75/105.95 new_primDivNatS02(x0, x1) 162.75/105.95 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.75/105.95 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.75/105.95 new_primRemInt0(Main.Neg(x0), x1) 162.75/105.95 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.75/105.95 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.75/105.95 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.75/105.95 new_error 162.75/105.95 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.75/105.95 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.75/105.95 new_primModNatS1(Main.Zero, x0) 162.75/105.95 new_primRemInt(Main.Neg(x0), x1) 162.75/105.95 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.75/105.95 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.75/105.95 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.75/105.95 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.75/105.95 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.75/105.95 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.75/105.95 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.75/105.95 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.75/105.95 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.75/105.95 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.75/105.95 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.75/105.95 new_primDivNatS3(Main.Zero, x0) 162.75/105.95 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.75/105.95 new_gcd21(Main.Zero, Main.Succ(x0)) 162.75/105.95 new_absMyInt(Main.Zero) 162.75/105.95 new_primMulNat0(Main.Zero, Main.Zero) 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.75/105.95 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.75/105.95 new_absMyInt(Main.Succ(x0)) 162.75/105.95 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.75/105.95 new_gcd2(Main.Succ(x0), x1) 162.75/105.95 new_absMyInt0(Main.Zero) 162.75/105.95 new_primMulNat1(Main.Zero) 162.75/105.95 new_absReal10 162.75/105.95 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.75/105.95 new_gcd0(x0, x1) 162.75/105.95 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.75/105.95 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.75/105.95 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.75/105.95 new_gcd2(Main.Zero, Main.Zero) 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Zero) 162.75/105.95 new_reduce2D(x0, x1) 162.75/105.95 new_gcd22(Main.Zero, Main.Succ(x0)) 162.75/105.95 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.75/105.95 new_reduce2D0(x0, x1) 162.75/105.95 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.75/105.95 new_primMinusNatS2 162.75/105.95 new_gcd2(Main.Zero, Main.Succ(x0)) 162.75/105.95 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.75/105.95 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.75/105.95 new_primMulNat1(Main.Succ(x0)) 162.75/105.95 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.75/105.95 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.75/105.95 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.75/105.95 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.75/105.95 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.75/105.95 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.75/105.95 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.75/105.95 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.75/105.95 new_gcd21(Main.Succ(x0), x1) 162.75/105.95 new_absMyInt0(Main.Succ(x0)) 162.75/105.95 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.75/105.95 new_reduce2D2(x0, x1) 162.75/105.95 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.75/105.95 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.75/105.95 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.75/105.95 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.75/105.95 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.75/105.95 new_primMinusNatS1(x0) 162.75/105.95 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.75/105.95 new_primRemInt(Main.Pos(x0), x1) 162.75/105.95 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.75/105.95 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.75/105.95 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.75/105.95 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.75/105.95 new_gcd21(Main.Zero, Main.Zero) 162.75/105.95 new_primRemInt0(Main.Pos(x0), x1) 162.75/105.95 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.75/105.95 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.75/105.95 new_new_pr2F0G11(Main.Succ(Main.Succ(x0))) 162.75/105.95 new_new_pr2F0G11(Main.Zero) 162.75/105.95 new_new_pr2F0G11(Main.Succ(Main.Zero)) 162.75/105.95 162.75/105.95 We have to consider all minimal (P,Q,R)-chains. 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (660) 162.75/105.95 Obligation: 162.75/105.95 Q DP problem: 162.75/105.95 The TRS P consists of the following rules: 162.75/105.95 162.75/105.95 new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.75/105.95 162.75/105.95 R is empty. 162.75/105.95 Q is empty. 162.75/105.95 We have to consider all minimal (P,Q,R)-chains. 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (661) QDPSizeChangeProof (EQUIVALENT) 162.75/105.95 By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. 162.75/105.95 162.75/105.95 From the DPs we obtained the following set of size-change graphs: 162.75/105.95 *new_pr2F0G11(vx77, vx78, vx79, Main.Succ(Main.Succ(vx8000))) -> new_pr2F0G11(vx77, vx78, vx79, vx8000) 162.75/105.95 The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 > 4 162.75/105.95 162.75/105.95 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (662) 162.75/105.95 YES 162.75/105.95 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (663) 162.75/105.95 Obligation: 162.75/105.95 Q DP problem: 162.75/105.95 The TRS P consists of the following rules: 162.75/105.95 162.75/105.95 new_pr2F3(Main.Succ(vx740), Main.Succ(vx85000), vx73, vx72) -> new_pr2F3(vx740, vx85000, vx73, vx72) 162.75/105.95 162.75/105.95 The TRS R consists of the following rules: 162.75/105.95 162.75/105.95 new_gcd0(vx127, vx101) -> new_gcd0Gcd'0(new_absMyInt(vx127), new_absMyInt0(vx101)) 162.75/105.95 new_absReal10 -> Main.Neg(Main.Zero) 162.75/105.95 new_gcd22(Main.Zero, Main.Zero) -> new_error 162.75/105.95 new_error -> Prelude.error([]) 162.75/105.95 new_reduce2D2(vx125, vx98) -> new_gcd22(vx125, vx98) 162.75/105.95 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Succ(vx990)) -> CnPc(new_primQuotInt2(vx730, vx720, vx98), new_primQuotInt(vx97, new_gcd24(vx730, vx720, vx98))) 162.75/105.95 new_absMyInt(Main.Succ(vx980)) -> Main.Pos(Main.Succ(vx980)) 162.75/105.95 new_gcd2(Main.Zero, Main.Zero) -> new_error 162.75/105.95 new_absMyInt0(Main.Zero) -> new_absReal10 162.75/105.95 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Zero), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.75/105.95 new_primMulNat1(Main.Zero) -> Main.Zero 162.75/105.95 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(vx170000)) -> Main.Succ(Main.Zero) 162.75/105.95 new_primRemInt(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.75/105.95 new_primModNatS02(vx180, vx181) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(vx180), Main.Succ(Main.Succ(vx181))), Main.Succ(Main.Succ(vx181))) 162.75/105.95 new_primDivNatS02(vx165, vx166) -> Main.Succ(new_primDivNatS3(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166))) 162.75/105.95 new_gcd24(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.75/105.95 new_gcd24(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_gcd22(new_primMulNat0(vx7300, vx7200), vx98) 162.75/105.95 new_gcd20(Main.Zero, vx127, Main.Succ(vx1010)) -> new_gcd0(vx127, Main.Succ(vx1010)) 162.75/105.95 new_primModNatS01(vx180, vx181, Main.Zero, Main.Zero) -> new_primModNatS02(vx180, vx181) 162.75/105.95 new_gcd0Gcd'0(vx171, Main.Pos(Main.Zero)) -> vx171 162.75/105.95 new_error0 -> Prelude.error([]) 162.75/105.95 new_gcd0Gcd'0(vx171, Main.Neg(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Neg(Main.Succ(vx17000)), new_primRemInt0(vx171, vx17000)) 162.75/105.95 new_primMinusNatS2 -> Main.Zero 162.75/105.95 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Succ(vx1830)) -> new_primModNatS01(vx180, vx181, vx1820, vx1830) 162.75/105.95 new_primQuotInt0(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.75/105.95 new_primModNatS1(Main.Zero, vx17000) -> Main.Zero 162.75/105.95 new_primQuotInt0(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D0(new_primMulNat0(vx7300, vx7200), vx101)) 162.75/105.95 new_gcd2(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absMyInt(Main.Zero), new_absMyInt(Main.Succ(vx980))) 162.75/105.95 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Succ(vx1700000))) -> new_primModNatS01(Main.Succ(vx1710000), vx1700000, vx1710000, vx1700000) 162.75/105.95 new_primQuotInt(vx97, Main.Pos(Main.Succ(vx15000))) -> Main.Pos(new_primDivNatS3(vx97, vx15000)) 162.75/105.95 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(vx1710000))), Main.Succ(Main.Zero)) -> new_primModNatS1(new_primMinusNatS0(Main.Succ(Main.Succ(vx1710000)), Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.75/105.95 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Succ(vx1680)) -> Main.Zero 162.75/105.95 new_gcd0Gcd'0(vx171, Main.Neg(Main.Zero)) -> vx171 162.75/105.95 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.75/105.95 new_reduce2D(vx151, vx98) -> new_gcd2(vx151, vx98) 162.75/105.95 new_gcd22(Main.Succ(vx1250), vx98) -> new_gcd0Gcd'0(new_absReal1(vx1250), new_absMyInt(vx98)) 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.75/105.95 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Succ(vx1020)) -> CnPc(new_primQuotInt0(vx730, vx720, vx101), new_primQuotInt1(vx100, new_gcd23(vx730, vx720, vx101))) 162.75/105.95 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.75/105.95 new_primQuotInt1(vx123, Main.Neg(Main.Succ(vx12400))) -> Main.Pos(new_primDivNatS3(vx123, vx12400)) 162.75/105.95 new_gcd24(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.75/105.95 new_absMyInt(Main.Zero) -> Main.Pos(Main.Zero) 162.75/105.95 new_srRatio(CnPc(vx440, Main.Neg(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.75/105.95 new_gcd2(Main.Succ(vx1510), vx98) -> new_gcd0Gcd'0(new_absMyInt(Main.Succ(vx1510)), new_absMyInt(vx98)) 162.75/105.95 new_primPlusNat0(Main.Zero, Main.Zero) -> Main.Zero 162.75/105.95 new_primQuotInt0(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.75/105.95 new_primQuotInt0(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D1(new_primMulNat0(vx7300, vx7200), vx101)) 162.75/105.95 new_primDivNatS2(Main.Zero) -> Main.Zero 162.75/105.95 new_primRemInt(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.75/105.95 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.75/105.95 new_gcd21(Main.Zero, Main.Zero) -> new_error 162.75/105.95 new_primRemInt0(Main.Neg(vx1710), vx17000) -> Main.Neg(new_primModNatS1(vx1710, vx17000)) 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.75/105.95 new_primQuotInt(vx97, Main.Neg(Main.Zero)) -> new_error 162.75/105.95 new_reduce2Reduce10(vx730, vx720, vx101, vx100, Main.Zero) -> new_error0 162.75/105.95 new_primDivNatS1 -> Main.Zero 162.75/105.95 new_primModNatS01(vx180, vx181, Main.Zero, Main.Succ(vx1830)) -> Main.Succ(Main.Succ(vx180)) 162.75/105.95 new_gcd20(Main.Zero, vx127, Main.Zero) -> new_error 162.75/105.95 new_primDivNatS01(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS02(vx165, vx166) 162.75/105.95 new_absMyInt0(Main.Succ(vx1010)) -> new_absReal1(vx1010) 162.75/105.95 new_primPlusNat0(Main.Succ(vx4000), Main.Succ(vx5000)) -> Main.Succ(Main.Succ(new_primPlusNat0(vx4000, vx5000))) 162.75/105.95 new_reduce2Reduce1(vx730, vx720, vx98, vx97, Main.Zero) -> new_error0 162.75/105.95 new_primQuotInt1(vx123, Main.Pos(Main.Zero)) -> new_error 162.75/105.95 new_reduce2D0(vx152, vx101) -> new_gcd20(vx152, vx152, vx101) 162.75/105.95 new_gcd23(Main.Pos(vx7300), Main.Neg(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.75/105.95 new_gcd23(Main.Neg(vx7300), Main.Pos(vx7200), vx101) -> new_gcd21(new_primMulNat0(vx7300, vx7200), vx101) 162.75/105.95 new_primMulNat0(Main.Succ(vx73100), Main.Succ(vx72100)) -> new_primPlusNat0(new_primMulNat0(vx73100, Main.Succ(vx72100)), Main.Succ(vx72100)) 162.75/105.95 new_primQuotInt1(vx123, Main.Pos(Main.Succ(vx12400))) -> Main.Neg(new_primDivNatS3(vx123, vx12400)) 162.75/105.95 new_primQuotInt(vx97, Main.Neg(Main.Succ(vx15000))) -> Main.Neg(new_primDivNatS3(vx97, vx15000)) 162.75/105.95 new_primDivNatS01(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS01(vx165, vx166, vx1670, vx1680) 162.75/105.95 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(vx1700000))) -> Main.Succ(Main.Succ(Main.Zero)) 162.75/105.95 new_gcd0Gcd'0(vx171, Main.Pos(Main.Succ(vx17000))) -> new_gcd0Gcd'0(Main.Pos(Main.Succ(vx17000)), new_primRemInt(vx171, vx17000)) 162.75/105.95 new_gcd23(Main.Neg(vx7300), Main.Neg(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.75/105.95 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.75/105.95 new_gcd24(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_gcd2(new_primMulNat0(vx7300, vx7200), vx98) 162.75/105.95 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS2, Main.Zero)) 162.75/105.95 new_primPlusNat0(Main.Succ(vx4000), Main.Zero) -> Main.Succ(vx4000) 162.75/105.95 new_primPlusNat0(Main.Zero, Main.Succ(vx5000)) -> Main.Succ(vx5000) 162.75/105.95 new_primRemInt0(Main.Pos(vx1710), vx17000) -> Main.Pos(new_primModNatS1(vx1710, vx17000)) 162.75/105.95 new_reduce2D1(vx126, vx101) -> new_gcd21(vx126, vx101) 162.75/105.95 new_primMulNat1(Main.Succ(vx44100)) -> new_primPlusNat0(new_primMulNat0(vx44100, Main.Succ(vx44100)), Main.Succ(vx44100)) 162.75/105.95 new_primQuotInt2(Main.Pos(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.75/105.95 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.75/105.95 new_srRatio(CnPc(vx440, Main.Pos(vx4410))) -> new_reduce2Reduce1(vx440, vx440, new_primMulNat1(vx4410), new_primMulNat1(vx4410), new_primMulNat1(vx4410)) 162.75/105.95 new_gcd20(Main.Succ(vx1280), vx127, vx101) -> new_gcd0(vx127, vx101) 162.75/105.95 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Neg(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.75/105.95 new_srRatio0(CnPc(vx730, Main.Neg(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce10(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.75/105.95 new_primQuotInt2(Main.Pos(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.75/105.95 new_primQuotInt2(Main.Neg(vx7300), Main.Pos(vx7200), vx98) -> new_primQuotInt1(new_primMulNat0(vx7300, vx7200), new_reduce2D2(new_primMulNat0(vx7300, vx7200), vx98)) 162.75/105.95 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS01(vx12300, vx124000, vx12300, vx124000) 162.75/105.95 new_primModNatS1(Main.Succ(vx17100), Main.Zero) -> Main.Zero 162.75/105.95 new_absReal1(vx1250) -> Main.Pos(Main.Succ(vx1250)) 162.75/105.95 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(vx124000)) -> Main.Zero 162.75/105.95 new_fromIntMyInt -> Main.Pos(Main.Succ(Main.Zero)) 162.75/105.95 new_primMulNat0(Main.Succ(vx73100), Main.Zero) -> Main.Zero 162.75/105.95 new_primMulNat0(Main.Zero, Main.Succ(vx72100)) -> Main.Zero 162.75/105.95 new_primDivNatS3(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> Main.Succ(new_primDivNatS3(new_primMinusNatS1(vx12300), Main.Zero)) 162.75/105.95 new_primDivNatS2(Main.Succ(vx740)) -> new_primDivNatS01(vx740, Main.Zero, vx740, Main.Zero) 162.75/105.95 new_srRatio0(CnPc(vx730, Main.Pos(vx7310)), CnPc(vx720, Main.Pos(vx7210))) -> new_reduce2Reduce1(vx730, vx720, new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210), new_primMulNat0(vx7310, vx7210)) 162.75/105.95 new_primModNatS01(vx180, vx181, Main.Succ(vx1820), Main.Zero) -> new_primModNatS02(vx180, vx181) 162.75/105.95 new_primDivNatS3(Main.Zero, vx12400) -> Main.Zero 162.75/105.95 new_gcd21(Main.Zero, Main.Succ(vx1010)) -> new_gcd0Gcd'0(new_absMyInt0(Main.Zero), new_absMyInt0(Main.Succ(vx1010))) 162.75/105.95 new_gcd22(Main.Zero, Main.Succ(vx980)) -> new_gcd0Gcd'0(new_absReal10, new_absMyInt(Main.Succ(vx980))) 162.75/105.95 new_primQuotInt(vx97, Main.Pos(Main.Zero)) -> new_error 162.75/105.95 new_primMulNat0(Main.Zero, Main.Zero) -> Main.Zero 162.75/105.95 new_primQuotInt1(vx123, Main.Neg(Main.Zero)) -> new_error 162.75/105.95 new_gcd21(Main.Succ(vx1260), vx101) -> new_gcd0Gcd'0(new_absMyInt0(Main.Succ(vx1260)), new_absMyInt0(vx101)) 162.75/105.95 new_gcd23(Main.Pos(vx7300), Main.Pos(vx7200), vx101) -> new_gcd20(new_primMulNat0(vx7300, vx7200), new_primMulNat0(vx7300, vx7200), vx101) 162.75/105.95 new_primQuotInt2(Main.Neg(vx7300), Main.Neg(vx7200), vx98) -> new_primQuotInt(new_primMulNat0(vx7300, vx7200), new_reduce2D(new_primMulNat0(vx7300, vx7200), vx98)) 162.75/105.95 162.75/105.95 The set Q consists of the following terms: 162.75/105.95 162.75/105.95 new_reduce2D1(x0, x1) 162.75/105.95 new_primDivNatS3(Main.Succ(Main.Zero), Main.Succ(x0)) 162.75/105.95 new_fromIntMyInt 162.75/105.95 new_primModNatS01(x0, x1, Main.Zero, Main.Zero) 162.75/105.95 new_primModNatS1(Main.Succ(x0), Main.Zero) 162.75/105.95 new_gcd0Gcd'0(x0, Main.Pos(Main.Zero)) 162.75/105.95 new_primModNatS02(x0, x1) 162.75/105.95 new_primPlusNat0(Main.Succ(x0), Main.Succ(x1)) 162.75/105.95 new_gcd24(Main.Neg(x0), Main.Neg(x1), x2) 162.75/105.95 new_primModNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.75/105.95 new_primQuotInt1(x0, Main.Neg(Main.Zero)) 162.75/105.95 new_gcd20(Main.Zero, x0, Main.Zero) 162.75/105.95 new_gcd20(Main.Zero, x0, Main.Succ(x1)) 162.75/105.95 new_absReal1(x0) 162.75/105.95 new_primDivNatS01(x0, x1, Main.Zero, Main.Succ(x2)) 162.75/105.95 new_gcd22(Main.Zero, Main.Zero) 162.75/105.95 new_primPlusNat0(Main.Zero, Main.Zero) 162.75/105.95 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Succ(x0))) 162.75/105.95 new_error0 162.75/105.95 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Succ(x1)) 162.75/105.95 new_gcd22(Main.Succ(x0), x1) 162.75/105.95 new_gcd20(Main.Succ(x0), x1, x2) 162.75/105.95 new_primQuotInt1(x0, Main.Pos(Main.Zero)) 162.75/105.95 new_primQuotInt0(Main.Pos(x0), Main.Neg(x1), x2) 162.75/105.95 new_primQuotInt0(Main.Neg(x0), Main.Pos(x1), x2) 162.75/105.95 new_primDivNatS02(x0, x1) 162.75/105.95 new_primModNatS1(Main.Succ(Main.Succ(Main.Zero)), Main.Succ(Main.Zero)) 162.75/105.95 new_primModNatS1(Main.Succ(Main.Zero), Main.Succ(x0)) 162.75/105.95 new_primRemInt0(Main.Neg(x0), x1) 162.75/105.95 new_primPlusNat0(Main.Zero, Main.Succ(x0)) 162.75/105.95 new_reduce2Reduce10(x0, x1, x2, x3, Main.Succ(x4)) 162.75/105.95 new_primQuotInt2(Main.Neg(x0), Main.Neg(x1), x2) 162.75/105.95 new_error 162.75/105.95 new_primDivNatS01(x0, x1, Main.Zero, Main.Zero) 162.75/105.95 new_gcd24(Main.Pos(x0), Main.Pos(x1), x2) 162.75/105.95 new_primModNatS1(Main.Zero, x0) 162.75/105.95 new_primRemInt(Main.Neg(x0), x1) 162.75/105.95 new_gcd0Gcd'0(x0, Main.Pos(Main.Succ(x1))) 162.75/105.95 new_primQuotInt(x0, Main.Neg(Main.Succ(x1))) 162.75/105.95 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Pos(x3))) 162.75/105.95 new_primMulNat0(Main.Zero, Main.Succ(x0)) 162.75/105.95 new_reduce2Reduce1(x0, x1, x2, x3, Main.Succ(x4)) 162.75/105.95 new_srRatio(CnPc(x0, Main.Pos(x1))) 162.75/105.95 new_reduce2Reduce1(x0, x1, x2, x3, Main.Zero) 162.75/105.95 new_reduce2Reduce10(x0, x1, x2, x3, Main.Zero) 162.75/105.95 new_gcd23(Main.Pos(x0), Main.Neg(x1), x2) 162.75/105.95 new_gcd23(Main.Neg(x0), Main.Pos(x1), x2) 162.75/105.95 new_gcd0Gcd'0(x0, Main.Neg(Main.Zero)) 162.75/105.95 new_primDivNatS3(Main.Zero, x0) 162.75/105.95 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.75/105.95 new_gcd21(Main.Zero, Main.Succ(x0)) 162.75/105.95 new_absMyInt(Main.Zero) 162.75/105.95 new_primMulNat0(Main.Zero, Main.Zero) 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.75/105.95 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Zero)) 162.75/105.95 new_absMyInt(Main.Succ(x0)) 162.75/105.95 new_primQuotInt(x0, Main.Neg(Main.Zero)) 162.75/105.95 new_gcd2(Main.Succ(x0), x1) 162.75/105.95 new_absMyInt0(Main.Zero) 162.75/105.95 new_primMulNat1(Main.Zero) 162.75/105.95 new_absReal10 162.75/105.95 new_primModNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.75/105.95 new_gcd0(x0, x1) 162.75/105.95 new_primQuotInt(x0, Main.Pos(Main.Zero)) 162.75/105.95 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Neg(x3))) 162.75/105.95 new_primQuotInt1(x0, Main.Neg(Main.Succ(x1))) 162.75/105.95 new_gcd2(Main.Zero, Main.Zero) 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Zero) 162.75/105.95 new_reduce2D(x0, x1) 162.75/105.95 new_gcd22(Main.Zero, Main.Succ(x0)) 162.75/105.95 new_primDivNatS3(Main.Succ(Main.Zero), Main.Zero) 162.75/105.95 new_reduce2D0(x0, x1) 162.75/105.95 new_primQuotInt1(x0, Main.Pos(Main.Succ(x1))) 162.75/105.95 new_primMinusNatS2 162.75/105.95 new_primDivNatS1 162.75/105.95 new_gcd2(Main.Zero, Main.Succ(x0)) 162.75/105.95 new_primQuotInt2(Main.Pos(x0), Main.Neg(x1), x2) 162.75/105.95 new_primQuotInt2(Main.Neg(x0), Main.Pos(x1), x2) 162.75/105.95 new_primDivNatS2(Main.Succ(x0)) 162.75/105.95 new_primMulNat1(Main.Succ(x0)) 162.75/105.95 new_primQuotInt0(Main.Pos(x0), Main.Pos(x1), x2) 162.75/105.95 new_gcd23(Main.Pos(x0), Main.Pos(x1), x2) 162.75/105.95 new_primQuotInt2(Main.Pos(x0), Main.Pos(x1), x2) 162.75/105.95 new_primQuotInt0(Main.Neg(x0), Main.Neg(x1), x2) 162.75/105.95 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Zero) 162.75/105.95 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.75/105.95 new_primDivNatS01(x0, x1, Main.Succ(x2), Main.Succ(x3)) 162.75/105.95 new_primMulNat0(Main.Succ(x0), Main.Succ(x1)) 162.75/105.95 new_primDivNatS2(Main.Zero) 162.75/105.95 new_gcd21(Main.Succ(x0), x1) 162.75/105.95 new_absMyInt0(Main.Succ(x0)) 162.75/105.95 new_primDivNatS3(Main.Succ(Main.Succ(x0)), Main.Zero) 162.75/105.95 new_reduce2D2(x0, x1) 162.75/105.95 new_srRatio(CnPc(x0, Main.Neg(x1))) 162.75/105.95 new_primModNatS1(Main.Succ(Main.Succ(Main.Succ(x0))), Main.Succ(Main.Succ(x1))) 162.75/105.95 new_gcd23(Main.Neg(x0), Main.Neg(x1), x2) 162.75/105.95 new_srRatio0(CnPc(x0, Main.Pos(x1)), CnPc(x2, Main.Neg(x3))) 162.75/105.95 new_srRatio0(CnPc(x0, Main.Neg(x1)), CnPc(x2, Main.Pos(x3))) 162.75/105.95 new_primMinusNatS1(x0) 162.75/105.95 new_primMulNat0(Main.Succ(x0), Main.Zero) 162.75/105.95 new_primRemInt(Main.Pos(x0), x1) 162.75/105.95 new_primQuotInt(x0, Main.Pos(Main.Succ(x1))) 162.75/105.95 new_gcd24(Main.Pos(x0), Main.Neg(x1), x2) 162.75/105.95 new_gcd24(Main.Neg(x0), Main.Pos(x1), x2) 162.75/105.95 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.75/105.95 new_gcd21(Main.Zero, Main.Zero) 162.75/105.95 new_primRemInt0(Main.Pos(x0), x1) 162.75/105.95 new_gcd0Gcd'0(x0, Main.Neg(Main.Succ(x1))) 162.75/105.95 new_primPlusNat0(Main.Succ(x0), Main.Zero) 162.75/105.95 162.75/105.95 We have to consider all minimal (P,Q,R)-chains. 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (664) QDPSizeChangeProof (EQUIVALENT) 162.75/105.95 By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. 162.75/105.95 162.75/105.95 From the DPs we obtained the following set of size-change graphs: 162.75/105.95 *new_pr2F3(Main.Succ(vx740), Main.Succ(vx85000), vx73, vx72) -> new_pr2F3(vx740, vx85000, vx73, vx72) 162.75/105.95 The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3, 4 >= 4 162.75/105.95 162.75/105.95 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (665) 162.75/105.95 YES 162.75/105.95 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (666) 162.75/105.95 Obligation: 162.75/105.95 Q DP problem: 162.75/105.95 The TRS P consists of the following rules: 162.75/105.95 162.75/105.95 new_primPlusNat(Main.Succ(vx4000), Main.Succ(vx5000)) -> new_primPlusNat(vx4000, vx5000) 162.75/105.95 162.75/105.95 R is empty. 162.75/105.95 Q is empty. 162.75/105.95 We have to consider all minimal (P,Q,R)-chains. 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (667) QDPSizeChangeProof (EQUIVALENT) 162.75/105.95 By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. 162.75/105.95 162.75/105.95 From the DPs we obtained the following set of size-change graphs: 162.75/105.95 *new_primPlusNat(Main.Succ(vx4000), Main.Succ(vx5000)) -> new_primPlusNat(vx4000, vx5000) 162.75/105.95 The graph contains the following edges 1 > 1, 2 > 2 162.75/105.95 162.75/105.95 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (668) 162.75/105.95 YES 162.75/105.95 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (669) 162.75/105.95 Obligation: 162.75/105.95 Q DP problem: 162.75/105.95 The TRS P consists of the following rules: 162.75/105.95 162.75/105.95 new_primMinusNatS(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS(vx1650, vx1660) 162.75/105.95 162.75/105.95 R is empty. 162.75/105.95 Q is empty. 162.75/105.95 We have to consider all minimal (P,Q,R)-chains. 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (670) QDPSizeChangeProof (EQUIVALENT) 162.75/105.95 By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem. 162.75/105.95 162.75/105.95 From the DPs we obtained the following set of size-change graphs: 162.75/105.95 *new_primMinusNatS(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS(vx1650, vx1660) 162.75/105.95 The graph contains the following edges 1 > 1, 2 > 2 162.75/105.95 162.75/105.95 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (671) 162.75/105.95 YES 162.75/105.95 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (672) 162.75/105.95 Obligation: 162.75/105.95 Q DP problem: 162.75/105.95 The TRS P consists of the following rules: 162.75/105.95 162.75/105.95 new_primDivNatS(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> new_primDivNatS(new_primMinusNatS1(vx12300), Main.Zero) 162.75/105.95 new_primDivNatS0(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS0(vx165, vx166, vx1670, vx1680) 162.75/105.95 new_primDivNatS00(vx165, vx166) -> new_primDivNatS(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166)) 162.75/105.95 new_primDivNatS0(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS00(vx165, vx166) 162.75/105.95 new_primDivNatS(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS0(vx12300, vx124000, vx12300, vx124000) 162.75/105.95 new_primDivNatS0(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166)) 162.75/105.95 new_primDivNatS(Main.Succ(Main.Zero), Main.Zero) -> new_primDivNatS(new_primMinusNatS2, Main.Zero) 162.75/105.95 162.75/105.95 The TRS R consists of the following rules: 162.75/105.95 162.75/105.95 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.75/105.95 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.75/105.95 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.75/105.95 new_primMinusNatS2 -> Main.Zero 162.75/105.95 162.75/105.95 The set Q consists of the following terms: 162.75/105.95 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Zero) 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.75/105.95 new_primMinusNatS2 162.75/105.95 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.75/105.95 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.75/105.95 new_primMinusNatS1(x0) 162.75/105.95 162.75/105.95 We have to consider all minimal (P,Q,R)-chains. 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (673) DependencyGraphProof (EQUIVALENT) 162.75/105.95 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 1 less node. 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (674) 162.75/105.95 Complex Obligation (AND) 162.75/105.95 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (675) 162.75/105.95 Obligation: 162.75/105.95 Q DP problem: 162.75/105.95 The TRS P consists of the following rules: 162.75/105.95 162.75/105.95 new_primDivNatS0(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS00(vx165, vx166) 162.75/105.95 new_primDivNatS00(vx165, vx166) -> new_primDivNatS(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166)) 162.75/105.95 new_primDivNatS(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS0(vx12300, vx124000, vx12300, vx124000) 162.75/105.95 new_primDivNatS0(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS0(vx165, vx166, vx1670, vx1680) 162.75/105.95 new_primDivNatS0(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166)) 162.75/105.95 162.75/105.95 The TRS R consists of the following rules: 162.75/105.95 162.75/105.95 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.75/105.95 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.75/105.95 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.75/105.95 new_primMinusNatS2 -> Main.Zero 162.75/105.95 162.75/105.95 The set Q consists of the following terms: 162.75/105.95 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Zero) 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.75/105.95 new_primMinusNatS2 162.75/105.95 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.75/105.95 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.75/105.95 new_primMinusNatS1(x0) 162.75/105.95 162.75/105.95 We have to consider all minimal (P,Q,R)-chains. 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (676) QDPSizeChangeProof (EQUIVALENT) 162.75/105.95 We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. 162.75/105.95 162.75/105.95 Order:Polynomial interpretation [POLO]: 162.75/105.95 162.75/105.95 POL(Main.Succ(x_1)) = 1 + x_1 162.75/105.95 POL(Main.Zero) = 1 162.75/105.95 POL(new_primMinusNatS0(x_1, x_2)) = x_1 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 From the DPs we obtained the following set of size-change graphs: 162.75/105.95 *new_primDivNatS00(vx165, vx166) -> new_primDivNatS(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166)) (allowed arguments on rhs = {1, 2}) 162.75/105.95 The graph contains the following edges 1 >= 1 162.75/105.95 162.75/105.95 162.75/105.95 *new_primDivNatS(Main.Succ(Main.Succ(vx12300)), Main.Succ(vx124000)) -> new_primDivNatS0(vx12300, vx124000, vx12300, vx124000) (allowed arguments on rhs = {1, 2, 3, 4}) 162.75/105.95 The graph contains the following edges 1 > 1, 2 > 2, 1 > 3, 2 > 4 162.75/105.95 162.75/105.95 162.75/105.95 *new_primDivNatS0(vx165, vx166, Main.Succ(vx1670), Main.Succ(vx1680)) -> new_primDivNatS0(vx165, vx166, vx1670, vx1680) (allowed arguments on rhs = {1, 2, 3, 4}) 162.75/105.95 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4 162.75/105.95 162.75/105.95 162.75/105.95 *new_primDivNatS0(vx165, vx166, Main.Zero, Main.Zero) -> new_primDivNatS00(vx165, vx166) (allowed arguments on rhs = {1, 2}) 162.75/105.95 The graph contains the following edges 1 >= 1, 2 >= 2 162.75/105.95 162.75/105.95 162.75/105.95 *new_primDivNatS0(vx165, vx166, Main.Succ(vx1670), Main.Zero) -> new_primDivNatS(new_primMinusNatS0(vx165, vx166), Main.Succ(vx166)) (allowed arguments on rhs = {1, 2}) 162.75/105.95 The graph contains the following edges 1 >= 1 162.75/105.95 162.75/105.95 162.75/105.95 162.75/105.95 We oriented the following set of usable rules [AAECC05,FROCOS05]. 162.75/105.95 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.75/105.95 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.75/105.95 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.75/105.95 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (677) 162.75/105.95 YES 162.75/105.95 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (678) 162.75/105.95 Obligation: 162.75/105.95 Q DP problem: 162.75/105.95 The TRS P consists of the following rules: 162.75/105.95 162.75/105.95 new_primDivNatS(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> new_primDivNatS(new_primMinusNatS1(vx12300), Main.Zero) 162.75/105.95 162.75/105.95 The TRS R consists of the following rules: 162.75/105.95 162.75/105.95 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.75/105.95 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.75/105.95 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.75/105.95 new_primMinusNatS2 -> Main.Zero 162.75/105.95 162.75/105.95 The set Q consists of the following terms: 162.75/105.95 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Zero) 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.75/105.95 new_primMinusNatS2 162.75/105.95 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.75/105.95 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.75/105.95 new_primMinusNatS1(x0) 162.75/105.95 162.75/105.95 We have to consider all minimal (P,Q,R)-chains. 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (679) MRRProof (EQUIVALENT) 162.75/105.95 By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. 162.75/105.95 162.75/105.95 Strictly oriented dependency pairs: 162.75/105.95 162.75/105.95 new_primDivNatS(Main.Succ(Main.Succ(vx12300)), Main.Zero) -> new_primDivNatS(new_primMinusNatS1(vx12300), Main.Zero) 162.75/105.95 162.75/105.95 Strictly oriented rules of the TRS R: 162.75/105.95 162.75/105.95 new_primMinusNatS0(Main.Succ(vx1650), Main.Succ(vx1660)) -> new_primMinusNatS0(vx1650, vx1660) 162.75/105.95 new_primMinusNatS0(Main.Succ(vx1650), Main.Zero) -> Main.Succ(vx1650) 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Zero) -> Main.Zero 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Succ(vx1660)) -> Main.Zero 162.75/105.95 162.75/105.95 Used ordering: Polynomial interpretation [POLO]: 162.75/105.95 162.75/105.95 POL(Main.Succ(x_1)) = 1 + x_1 162.75/105.95 POL(Main.Zero) = 2 162.75/105.95 POL(new_primDivNatS(x_1, x_2)) = x_1 + x_2 162.75/105.95 POL(new_primMinusNatS0(x_1, x_2)) = 1 + 2*x_1 + 2*x_2 162.75/105.95 POL(new_primMinusNatS1(x_1)) = 1 + x_1 162.75/105.95 POL(new_primMinusNatS2) = 2 162.75/105.95 162.75/105.95 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (680) 162.75/105.95 Obligation: 162.75/105.95 Q DP problem: 162.75/105.95 P is empty. 162.75/105.95 The TRS R consists of the following rules: 162.75/105.95 162.75/105.95 new_primMinusNatS1(vx12300) -> Main.Succ(vx12300) 162.75/105.95 new_primMinusNatS2 -> Main.Zero 162.75/105.95 162.75/105.95 The set Q consists of the following terms: 162.75/105.95 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Zero) 162.75/105.95 new_primMinusNatS0(Main.Zero, Main.Succ(x0)) 162.75/105.95 new_primMinusNatS2 162.75/105.95 new_primMinusNatS0(Main.Succ(x0), Main.Zero) 162.75/105.95 new_primMinusNatS0(Main.Succ(x0), Main.Succ(x1)) 162.75/105.95 new_primMinusNatS1(x0) 162.75/105.95 162.75/105.95 We have to consider all minimal (P,Q,R)-chains. 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (681) PisEmptyProof (EQUIVALENT) 162.75/105.95 The TRS P is empty. Hence, there is no (P,Q,R) chain. 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (682) 162.75/105.95 YES 162.75/105.95 162.75/105.95 ---------------------------------------- 162.75/105.95 162.75/105.95 (683) Narrow (COMPLETE) 162.75/105.95 Haskell To QDPs 162.75/105.95 162.75/105.95 digraph dp_graph { 162.75/105.95 node [outthreshold=100, inthreshold=100];1[label="pr",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 162.75/105.95 3[label="pr vx3",fontsize=16,color="grey",shape="box"];3 -> 4[label="",style="dashed", color="grey", weight=3]; 162.75/105.95 4[label="pr vx3 vx4",fontsize=16,color="black",shape="triangle"];4 -> 5[label="",style="solid", color="black", weight=3]; 162.75/105.95 5[label="pr4 vx3 vx4",fontsize=16,color="black",shape="box"];5 -> 6[label="",style="solid", color="black", weight=3]; 162.75/105.95 6[label="pr3 (esEsMyInt vx4 (fromIntMyInt (Pos Zero))) vx3 vx4",fontsize=16,color="black",shape="box"];6 -> 7[label="",style="solid", color="black", weight=3]; 162.75/105.95 7[label="pr3 (primEqInt vx4 (fromIntMyInt (Pos Zero))) vx3 vx4",fontsize=16,color="burlywood",shape="box"];3969[label="vx4/Pos vx40",fontsize=10,color="white",style="solid",shape="box"];7 -> 3969[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3969 -> 8[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 3970[label="vx4/Neg vx40",fontsize=10,color="white",style="solid",shape="box"];7 -> 3970[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3970 -> 9[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 8[label="pr3 (primEqInt (Pos vx40) (fromIntMyInt (Pos Zero))) vx3 (Pos vx40)",fontsize=16,color="burlywood",shape="box"];3971[label="vx40/Succ vx400",fontsize=10,color="white",style="solid",shape="box"];8 -> 3971[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3971 -> 10[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 3972[label="vx40/Zero",fontsize=10,color="white",style="solid",shape="box"];8 -> 3972[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3972 -> 11[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 9[label="pr3 (primEqInt (Neg vx40) (fromIntMyInt (Pos Zero))) vx3 (Neg vx40)",fontsize=16,color="burlywood",shape="box"];3973[label="vx40/Succ vx400",fontsize=10,color="white",style="solid",shape="box"];9 -> 3973[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3973 -> 12[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 3974[label="vx40/Zero",fontsize=10,color="white",style="solid",shape="box"];9 -> 3974[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3974 -> 13[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 10[label="pr3 (primEqInt (Pos (Succ vx400)) (fromIntMyInt (Pos Zero))) vx3 (Pos (Succ vx400))",fontsize=16,color="black",shape="box"];10 -> 14[label="",style="solid", color="black", weight=3]; 162.75/105.95 11[label="pr3 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) vx3 (Pos Zero)",fontsize=16,color="black",shape="box"];11 -> 15[label="",style="solid", color="black", weight=3]; 162.75/105.95 12[label="pr3 (primEqInt (Neg (Succ vx400)) (fromIntMyInt (Pos Zero))) vx3 (Neg (Succ vx400))",fontsize=16,color="black",shape="box"];12 -> 16[label="",style="solid", color="black", weight=3]; 162.75/105.95 13[label="pr3 (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero))) vx3 (Neg Zero)",fontsize=16,color="black",shape="box"];13 -> 17[label="",style="solid", color="black", weight=3]; 162.75/105.95 14[label="pr3 (primEqInt (Pos (Succ vx400)) (Pos Zero)) vx3 (Pos (Succ vx400))",fontsize=16,color="black",shape="box"];14 -> 18[label="",style="solid", color="black", weight=3]; 162.75/105.95 15[label="pr3 (primEqInt (Pos Zero) (Pos Zero)) vx3 (Pos Zero)",fontsize=16,color="black",shape="box"];15 -> 19[label="",style="solid", color="black", weight=3]; 162.75/105.95 16[label="pr3 (primEqInt (Neg (Succ vx400)) (Pos Zero)) vx3 (Neg (Succ vx400))",fontsize=16,color="black",shape="box"];16 -> 20[label="",style="solid", color="black", weight=3]; 162.75/105.95 17[label="pr3 (primEqInt (Neg Zero) (Pos Zero)) vx3 (Neg Zero)",fontsize=16,color="black",shape="box"];17 -> 21[label="",style="solid", color="black", weight=3]; 162.75/105.95 18[label="pr3 MyFalse vx3 (Pos (Succ vx400))",fontsize=16,color="black",shape="box"];18 -> 22[label="",style="solid", color="black", weight=3]; 162.75/105.95 19[label="pr3 MyTrue vx3 (Pos Zero)",fontsize=16,color="black",shape="box"];19 -> 23[label="",style="solid", color="black", weight=3]; 162.75/105.95 20[label="pr3 MyFalse vx3 (Neg (Succ vx400))",fontsize=16,color="black",shape="box"];20 -> 24[label="",style="solid", color="black", weight=3]; 162.75/105.95 21[label="pr3 MyTrue vx3 (Neg Zero)",fontsize=16,color="black",shape="box"];21 -> 25[label="",style="solid", color="black", weight=3]; 162.75/105.95 22[label="pr2 vx3 (Pos (Succ vx400))",fontsize=16,color="black",shape="box"];22 -> 26[label="",style="solid", color="black", weight=3]; 162.75/105.95 23[label="fromIntRatio (Pos (Succ Zero))",fontsize=16,color="black",shape="triangle"];23 -> 27[label="",style="solid", color="black", weight=3]; 162.75/105.95 24[label="pr2 vx3 (Neg (Succ vx400))",fontsize=16,color="black",shape="box"];24 -> 28[label="",style="solid", color="black", weight=3]; 162.75/105.95 25 -> 23[label="",style="dashed", color="red", weight=0]; 162.75/105.95 25[label="fromIntRatio (Pos (Succ Zero))",fontsize=16,color="magenta"];26[label="pr2Pr1 vx3 (Pos (Succ vx400)) (gtMyInt (Pos (Succ vx400)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];26 -> 29[label="",style="solid", color="black", weight=3]; 162.75/105.95 27[label="intToRatio (Pos (Succ Zero))",fontsize=16,color="black",shape="box"];27 -> 30[label="",style="solid", color="black", weight=3]; 162.75/105.95 28[label="pr2Pr1 vx3 (Neg (Succ vx400)) (gtMyInt (Neg (Succ vx400)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];28 -> 31[label="",style="solid", color="black", weight=3]; 162.75/105.95 29[label="pr2Pr1 vx3 (Pos (Succ vx400)) (esEsOrdering (compareMyInt (Pos (Succ vx400)) (fromIntMyInt (Pos Zero))) GT)",fontsize=16,color="black",shape="box"];29 -> 32[label="",style="solid", color="black", weight=3]; 162.75/105.95 30[label="CnPc (fromIntMyInt (Pos (Succ Zero))) (fromIntMyInt (Pos (Succ Zero)))",fontsize=16,color="green",shape="box"];30 -> 33[label="",style="dashed", color="green", weight=3]; 162.75/105.95 30 -> 34[label="",style="dashed", color="green", weight=3]; 162.75/105.95 31[label="pr2Pr1 vx3 (Neg (Succ vx400)) (esEsOrdering (compareMyInt (Neg (Succ vx400)) (fromIntMyInt (Pos Zero))) GT)",fontsize=16,color="black",shape="box"];31 -> 35[label="",style="solid", color="black", weight=3]; 162.75/105.95 32[label="pr2Pr1 vx3 (Pos (Succ vx400)) (esEsOrdering (primCmpInt (Pos (Succ vx400)) (fromIntMyInt (Pos Zero))) GT)",fontsize=16,color="black",shape="box"];32 -> 36[label="",style="solid", color="black", weight=3]; 162.75/105.95 33[label="fromIntMyInt (Pos (Succ Zero))",fontsize=16,color="black",shape="triangle"];33 -> 37[label="",style="solid", color="black", weight=3]; 162.75/105.95 34 -> 33[label="",style="dashed", color="red", weight=0]; 162.75/105.95 34[label="fromIntMyInt (Pos (Succ Zero))",fontsize=16,color="magenta"];35[label="pr2Pr1 vx3 (Neg (Succ vx400)) (esEsOrdering (primCmpInt (Neg (Succ vx400)) (fromIntMyInt (Pos Zero))) GT)",fontsize=16,color="black",shape="box"];35 -> 38[label="",style="solid", color="black", weight=3]; 162.75/105.95 36[label="pr2Pr1 vx3 (Pos (Succ vx400)) (esEsOrdering (primCmpInt (Pos (Succ vx400)) (Pos Zero)) GT)",fontsize=16,color="black",shape="box"];36 -> 39[label="",style="solid", color="black", weight=3]; 162.75/105.95 37[label="Pos (Succ Zero)",fontsize=16,color="green",shape="box"];38[label="pr2Pr1 vx3 (Neg (Succ vx400)) (esEsOrdering (primCmpInt (Neg (Succ vx400)) (Pos Zero)) GT)",fontsize=16,color="black",shape="box"];38 -> 40[label="",style="solid", color="black", weight=3]; 162.75/105.95 39[label="pr2Pr1 vx3 (Pos (Succ vx400)) (esEsOrdering (primCmpNat (Succ vx400) Zero) GT)",fontsize=16,color="black",shape="box"];39 -> 41[label="",style="solid", color="black", weight=3]; 162.75/105.95 40[label="pr2Pr1 vx3 (Neg (Succ vx400)) (esEsOrdering LT GT)",fontsize=16,color="black",shape="box"];40 -> 42[label="",style="solid", color="black", weight=3]; 162.75/105.95 41[label="pr2Pr1 vx3 (Pos (Succ vx400)) (esEsOrdering GT GT)",fontsize=16,color="black",shape="box"];41 -> 43[label="",style="solid", color="black", weight=3]; 162.75/105.95 42[label="pr2Pr1 vx3 (Neg (Succ vx400)) MyFalse",fontsize=16,color="black",shape="box"];42 -> 44[label="",style="solid", color="black", weight=3]; 162.75/105.95 43[label="pr2Pr1 vx3 (Pos (Succ vx400)) MyTrue",fontsize=16,color="black",shape="box"];43 -> 45[label="",style="solid", color="black", weight=3]; 162.75/105.95 44[label="pr0 vx3 (Neg (Succ vx400))",fontsize=16,color="black",shape="box"];44 -> 46[label="",style="solid", color="black", weight=3]; 162.75/105.95 45 -> 47[label="",style="dashed", color="red", weight=0]; 162.75/105.95 45[label="pr2F vx3 (msMyInt (Pos (Succ vx400)) (fromIntMyInt (Pos (Succ Zero)))) vx3",fontsize=16,color="magenta"];45 -> 48[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 46[label="error",fontsize=16,color="black",shape="triangle"];46 -> 49[label="",style="solid", color="black", weight=3]; 162.75/105.95 48 -> 33[label="",style="dashed", color="red", weight=0]; 162.75/105.95 48[label="fromIntMyInt (Pos (Succ Zero))",fontsize=16,color="magenta"];47[label="pr2F vx3 (msMyInt (Pos (Succ vx400)) vx5) vx3",fontsize=16,color="black",shape="triangle"];47 -> 50[label="",style="solid", color="black", weight=3]; 162.75/105.95 49[label="stop MyTrue",fontsize=16,color="black",shape="box"];49 -> 51[label="",style="solid", color="black", weight=3]; 162.75/105.95 50[label="pr2F4 vx3 (msMyInt (Pos (Succ vx400)) vx5) vx3",fontsize=16,color="black",shape="box"];50 -> 52[label="",style="solid", color="black", weight=3]; 162.75/105.95 51[label="error []",fontsize=16,color="red",shape="box"];52[label="pr2F3 (esEsMyInt (msMyInt (Pos (Succ vx400)) vx5) (fromIntMyInt (Pos Zero))) vx3 (msMyInt (Pos (Succ vx400)) vx5) vx3",fontsize=16,color="black",shape="box"];52 -> 53[label="",style="solid", color="black", weight=3]; 162.75/105.95 53[label="pr2F3 (primEqInt (msMyInt (Pos (Succ vx400)) vx5) (fromIntMyInt (Pos Zero))) vx3 (msMyInt (Pos (Succ vx400)) vx5) vx3",fontsize=16,color="black",shape="box"];53 -> 54[label="",style="solid", color="black", weight=3]; 162.75/105.95 54[label="pr2F3 (primEqInt (primMinusInt (Pos (Succ vx400)) vx5) (fromIntMyInt (Pos Zero))) vx3 (primMinusInt (Pos (Succ vx400)) vx5) vx3",fontsize=16,color="burlywood",shape="box"];3975[label="vx5/Pos vx50",fontsize=10,color="white",style="solid",shape="box"];54 -> 3975[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3975 -> 55[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 3976[label="vx5/Neg vx50",fontsize=10,color="white",style="solid",shape="box"];54 -> 3976[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3976 -> 56[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 55[label="pr2F3 (primEqInt (primMinusInt (Pos (Succ vx400)) (Pos vx50)) (fromIntMyInt (Pos Zero))) vx3 (primMinusInt (Pos (Succ vx400)) (Pos vx50)) vx3",fontsize=16,color="black",shape="box"];55 -> 57[label="",style="solid", color="black", weight=3]; 162.75/105.95 56[label="pr2F3 (primEqInt (primMinusInt (Pos (Succ vx400)) (Neg vx50)) (fromIntMyInt (Pos Zero))) vx3 (primMinusInt (Pos (Succ vx400)) (Neg vx50)) vx3",fontsize=16,color="black",shape="box"];56 -> 58[label="",style="solid", color="black", weight=3]; 162.75/105.95 57[label="pr2F3 (primEqInt (primMinusNat (Succ vx400) vx50) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat (Succ vx400) vx50) vx3",fontsize=16,color="burlywood",shape="box"];3977[label="vx50/Succ vx500",fontsize=10,color="white",style="solid",shape="box"];57 -> 3977[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3977 -> 59[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 3978[label="vx50/Zero",fontsize=10,color="white",style="solid",shape="box"];57 -> 3978[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3978 -> 60[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 58[label="pr2F3 (primEqInt (Pos (primPlusNat (Succ vx400) vx50)) (fromIntMyInt (Pos Zero))) vx3 (Pos (primPlusNat (Succ vx400) vx50)) vx3",fontsize=16,color="burlywood",shape="box"];3979[label="vx50/Succ vx500",fontsize=10,color="white",style="solid",shape="box"];58 -> 3979[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3979 -> 61[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 3980[label="vx50/Zero",fontsize=10,color="white",style="solid",shape="box"];58 -> 3980[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3980 -> 62[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 59[label="pr2F3 (primEqInt (primMinusNat (Succ vx400) (Succ vx500)) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat (Succ vx400) (Succ vx500)) vx3",fontsize=16,color="black",shape="box"];59 -> 63[label="",style="solid", color="black", weight=3]; 162.75/105.95 60[label="pr2F3 (primEqInt (primMinusNat (Succ vx400) Zero) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat (Succ vx400) Zero) vx3",fontsize=16,color="black",shape="box"];60 -> 64[label="",style="solid", color="black", weight=3]; 162.75/105.95 61[label="pr2F3 (primEqInt (Pos (primPlusNat (Succ vx400) (Succ vx500))) (fromIntMyInt (Pos Zero))) vx3 (Pos (primPlusNat (Succ vx400) (Succ vx500))) vx3",fontsize=16,color="black",shape="box"];61 -> 65[label="",style="solid", color="black", weight=3]; 162.75/105.95 62[label="pr2F3 (primEqInt (Pos (primPlusNat (Succ vx400) Zero)) (fromIntMyInt (Pos Zero))) vx3 (Pos (primPlusNat (Succ vx400) Zero)) vx3",fontsize=16,color="black",shape="box"];62 -> 66[label="",style="solid", color="black", weight=3]; 162.75/105.95 63[label="pr2F3 (primEqInt (primMinusNat vx400 vx500) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat vx400 vx500) vx3",fontsize=16,color="burlywood",shape="triangle"];3981[label="vx400/Succ vx4000",fontsize=10,color="white",style="solid",shape="box"];63 -> 3981[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3981 -> 67[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 3982[label="vx400/Zero",fontsize=10,color="white",style="solid",shape="box"];63 -> 3982[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3982 -> 68[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 64 -> 418[label="",style="dashed", color="red", weight=0]; 162.75/105.95 64[label="pr2F3 (primEqInt (Pos (Succ vx400)) (fromIntMyInt (Pos Zero))) vx3 (Pos (Succ vx400)) vx3",fontsize=16,color="magenta"];64 -> 419[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 64 -> 420[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 64 -> 421[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 65 -> 418[label="",style="dashed", color="red", weight=0]; 162.75/105.95 65[label="pr2F3 (primEqInt (Pos (Succ (Succ (primPlusNat vx400 vx500)))) (fromIntMyInt (Pos Zero))) vx3 (Pos (Succ (Succ (primPlusNat vx400 vx500)))) vx3",fontsize=16,color="magenta"];65 -> 422[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 65 -> 423[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 65 -> 424[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 66 -> 418[label="",style="dashed", color="red", weight=0]; 162.75/105.95 66[label="pr2F3 (primEqInt (Pos (Succ vx400)) (fromIntMyInt (Pos Zero))) vx3 (Pos (Succ vx400)) vx3",fontsize=16,color="magenta"];66 -> 425[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 66 -> 426[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 66 -> 427[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 67[label="pr2F3 (primEqInt (primMinusNat (Succ vx4000) vx500) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat (Succ vx4000) vx500) vx3",fontsize=16,color="burlywood",shape="box"];3983[label="vx500/Succ vx5000",fontsize=10,color="white",style="solid",shape="box"];67 -> 3983[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3983 -> 71[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 3984[label="vx500/Zero",fontsize=10,color="white",style="solid",shape="box"];67 -> 3984[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3984 -> 72[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 68[label="pr2F3 (primEqInt (primMinusNat Zero vx500) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat Zero vx500) vx3",fontsize=16,color="burlywood",shape="box"];3985[label="vx500/Succ vx5000",fontsize=10,color="white",style="solid",shape="box"];68 -> 3985[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3985 -> 73[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 3986[label="vx500/Zero",fontsize=10,color="white",style="solid",shape="box"];68 -> 3986[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3986 -> 74[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 419[label="vx400",fontsize=16,color="green",shape="box"];420[label="vx3",fontsize=16,color="green",shape="box"];421[label="vx3",fontsize=16,color="green",shape="box"];418[label="pr2F3 (primEqInt (Pos (Succ vx23000)) (fromIntMyInt (Pos Zero))) vx12 (Pos (Succ vx23000)) vx33",fontsize=16,color="black",shape="triangle"];418 -> 432[label="",style="solid", color="black", weight=3]; 162.75/105.95 422[label="Succ (primPlusNat vx400 vx500)",fontsize=16,color="green",shape="box"];422 -> 433[label="",style="dashed", color="green", weight=3]; 162.75/105.95 423[label="vx3",fontsize=16,color="green",shape="box"];424[label="vx3",fontsize=16,color="green",shape="box"];425[label="vx400",fontsize=16,color="green",shape="box"];426[label="vx3",fontsize=16,color="green",shape="box"];427[label="vx3",fontsize=16,color="green",shape="box"];71[label="pr2F3 (primEqInt (primMinusNat (Succ vx4000) (Succ vx5000)) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat (Succ vx4000) (Succ vx5000)) vx3",fontsize=16,color="black",shape="box"];71 -> 77[label="",style="solid", color="black", weight=3]; 162.75/105.95 72[label="pr2F3 (primEqInt (primMinusNat (Succ vx4000) Zero) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat (Succ vx4000) Zero) vx3",fontsize=16,color="black",shape="box"];72 -> 78[label="",style="solid", color="black", weight=3]; 162.75/105.95 73[label="pr2F3 (primEqInt (primMinusNat Zero (Succ vx5000)) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat Zero (Succ vx5000)) vx3",fontsize=16,color="black",shape="box"];73 -> 79[label="",style="solid", color="black", weight=3]; 162.75/105.95 74[label="pr2F3 (primEqInt (primMinusNat Zero Zero) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat Zero Zero) vx3",fontsize=16,color="black",shape="box"];74 -> 80[label="",style="solid", color="black", weight=3]; 162.75/105.95 432[label="pr2F3 (primEqInt (Pos (Succ vx23000)) (Pos Zero)) vx12 (Pos (Succ vx23000)) vx33",fontsize=16,color="black",shape="box"];432 -> 440[label="",style="solid", color="black", weight=3]; 162.75/105.95 433 -> 76[label="",style="dashed", color="red", weight=0]; 162.75/105.95 433[label="primPlusNat vx400 vx500",fontsize=16,color="magenta"];77 -> 63[label="",style="dashed", color="red", weight=0]; 162.75/105.95 77[label="pr2F3 (primEqInt (primMinusNat vx4000 vx5000) (fromIntMyInt (Pos Zero))) vx3 (primMinusNat vx4000 vx5000) vx3",fontsize=16,color="magenta"];77 -> 84[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 77 -> 85[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 78 -> 418[label="",style="dashed", color="red", weight=0]; 162.75/105.95 78[label="pr2F3 (primEqInt (Pos (Succ vx4000)) (fromIntMyInt (Pos Zero))) vx3 (Pos (Succ vx4000)) vx3",fontsize=16,color="magenta"];78 -> 428[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 78 -> 429[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 78 -> 430[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 79[label="pr2F3 (primEqInt (Neg (Succ vx5000)) (fromIntMyInt (Pos Zero))) vx3 (Neg (Succ vx5000)) vx3",fontsize=16,color="black",shape="box"];79 -> 87[label="",style="solid", color="black", weight=3]; 162.75/105.95 80 -> 436[label="",style="dashed", color="red", weight=0]; 162.75/105.95 80[label="pr2F3 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) vx3 (Pos Zero) vx3",fontsize=16,color="magenta"];80 -> 437[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 80 -> 438[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 440[label="pr2F3 MyFalse vx12 (Pos (Succ vx23000)) vx33",fontsize=16,color="black",shape="box"];440 -> 444[label="",style="solid", color="black", weight=3]; 162.75/105.95 76[label="primPlusNat vx400 vx500",fontsize=16,color="burlywood",shape="triangle"];3987[label="vx400/Succ vx4000",fontsize=10,color="white",style="solid",shape="box"];76 -> 3987[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3987 -> 82[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 3988[label="vx400/Zero",fontsize=10,color="white",style="solid",shape="box"];76 -> 3988[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3988 -> 83[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 84[label="vx5000",fontsize=16,color="green",shape="box"];85[label="vx4000",fontsize=16,color="green",shape="box"];428[label="vx4000",fontsize=16,color="green",shape="box"];429[label="vx3",fontsize=16,color="green",shape="box"];430[label="vx3",fontsize=16,color="green",shape="box"];87 -> 775[label="",style="dashed", color="red", weight=0]; 162.75/105.95 87[label="pr2F3 (primEqInt (Neg (Succ vx5000)) (Pos Zero)) vx3 (Neg (Succ vx5000)) vx3",fontsize=16,color="magenta"];87 -> 776[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 87 -> 777[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 87 -> 778[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 87 -> 779[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 437[label="vx3",fontsize=16,color="green",shape="box"];438[label="vx3",fontsize=16,color="green",shape="box"];436[label="pr2F3 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) vx12 (Pos Zero) vx34",fontsize=16,color="black",shape="triangle"];436 -> 441[label="",style="solid", color="black", weight=3]; 162.75/105.95 444[label="pr2F0 vx12 (Pos (Succ vx23000)) vx33",fontsize=16,color="black",shape="box"];444 -> 448[label="",style="solid", color="black", weight=3]; 162.75/105.95 82[label="primPlusNat (Succ vx4000) vx500",fontsize=16,color="burlywood",shape="box"];3989[label="vx500/Succ vx5000",fontsize=10,color="white",style="solid",shape="box"];82 -> 3989[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3989 -> 90[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 3990[label="vx500/Zero",fontsize=10,color="white",style="solid",shape="box"];82 -> 3990[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3990 -> 91[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 83[label="primPlusNat Zero vx500",fontsize=16,color="burlywood",shape="box"];3991[label="vx500/Succ vx5000",fontsize=10,color="white",style="solid",shape="box"];83 -> 3991[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3991 -> 92[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 3992[label="vx500/Zero",fontsize=10,color="white",style="solid",shape="box"];83 -> 3992[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3992 -> 93[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 776[label="vx3",fontsize=16,color="green",shape="box"];777[label="vx5000",fontsize=16,color="green",shape="box"];778[label="vx3",fontsize=16,color="green",shape="box"];779[label="Succ vx5000",fontsize=16,color="green",shape="box"];775[label="pr2F3 (primEqInt (Neg (Succ vx620)) (Pos Zero)) vx50 (Neg vx61) vx67",fontsize=16,color="black",shape="triangle"];775 -> 781[label="",style="solid", color="black", weight=3]; 162.75/105.95 441[label="pr2F3 (primEqInt (Pos Zero) (Pos Zero)) vx12 (Pos Zero) vx34",fontsize=16,color="black",shape="box"];441 -> 445[label="",style="solid", color="black", weight=3]; 162.75/105.95 448 -> 792[label="",style="dashed", color="red", weight=0]; 162.75/105.95 448[label="pr2F0G vx33 vx12 (Pos (Succ vx23000))",fontsize=16,color="magenta"];448 -> 793[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 448 -> 794[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 448 -> 795[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 90[label="primPlusNat (Succ vx4000) (Succ vx5000)",fontsize=16,color="black",shape="box"];90 -> 97[label="",style="solid", color="black", weight=3]; 162.75/105.95 91[label="primPlusNat (Succ vx4000) Zero",fontsize=16,color="black",shape="box"];91 -> 98[label="",style="solid", color="black", weight=3]; 162.75/105.95 92[label="primPlusNat Zero (Succ vx5000)",fontsize=16,color="black",shape="box"];92 -> 99[label="",style="solid", color="black", weight=3]; 162.75/105.95 93[label="primPlusNat Zero Zero",fontsize=16,color="black",shape="box"];93 -> 100[label="",style="solid", color="black", weight=3]; 162.75/105.95 781[label="pr2F3 MyFalse vx50 (Neg vx61) vx67",fontsize=16,color="black",shape="box"];781 -> 797[label="",style="solid", color="black", weight=3]; 162.75/105.95 445[label="pr2F3 MyTrue vx12 (Pos Zero) vx34",fontsize=16,color="black",shape="box"];445 -> 449[label="",style="solid", color="black", weight=3]; 162.75/105.95 793[label="Succ vx23000",fontsize=16,color="green",shape="box"];794[label="vx12",fontsize=16,color="green",shape="box"];795[label="vx33",fontsize=16,color="green",shape="box"];792[label="pr2F0G vx68 vx44 (Pos vx59)",fontsize=16,color="black",shape="triangle"];792 -> 798[label="",style="solid", color="black", weight=3]; 162.75/105.95 97[label="Succ (Succ (primPlusNat vx4000 vx5000))",fontsize=16,color="green",shape="box"];97 -> 104[label="",style="dashed", color="green", weight=3]; 162.75/105.95 98[label="Succ vx4000",fontsize=16,color="green",shape="box"];99[label="Succ vx5000",fontsize=16,color="green",shape="box"];100[label="Zero",fontsize=16,color="green",shape="box"];797[label="pr2F0 vx50 (Neg vx61) vx67",fontsize=16,color="black",shape="box"];797 -> 799[label="",style="solid", color="black", weight=3]; 162.75/105.95 449[label="vx34",fontsize=16,color="green",shape="box"];798[label="pr2F0G2 vx68 vx44 (Pos vx59)",fontsize=16,color="black",shape="box"];798 -> 800[label="",style="solid", color="black", weight=3]; 162.75/105.95 104 -> 76[label="",style="dashed", color="red", weight=0]; 162.75/105.95 104[label="primPlusNat vx4000 vx5000",fontsize=16,color="magenta"];104 -> 107[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 104 -> 108[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 799[label="pr2F0G vx67 vx50 (Neg vx61)",fontsize=16,color="black",shape="box"];799 -> 801[label="",style="solid", color="black", weight=3]; 162.75/105.95 800[label="pr2F0G1 vx68 vx44 (Pos vx59) (evenMyInt (Pos vx59))",fontsize=16,color="black",shape="box"];800 -> 802[label="",style="solid", color="black", weight=3]; 162.75/105.95 107[label="vx5000",fontsize=16,color="green",shape="box"];108[label="vx4000",fontsize=16,color="green",shape="box"];801[label="pr2F0G2 vx67 vx50 (Neg vx61)",fontsize=16,color="black",shape="box"];801 -> 803[label="",style="solid", color="black", weight=3]; 162.75/105.95 802[label="pr2F0G1 vx68 vx44 (Pos vx59) (primEvenInt (Pos vx59))",fontsize=16,color="black",shape="triangle"];802 -> 804[label="",style="solid", color="black", weight=3]; 162.75/105.95 803[label="pr2F0G1 vx67 vx50 (Neg vx61) (evenMyInt (Neg vx61))",fontsize=16,color="black",shape="box"];803 -> 805[label="",style="solid", color="black", weight=3]; 162.75/105.95 804[label="pr2F0G1 vx68 vx44 (Pos vx59) (primEvenNat vx59)",fontsize=16,color="burlywood",shape="box"];3993[label="vx59/Succ vx590",fontsize=10,color="white",style="solid",shape="box"];804 -> 3993[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3993 -> 806[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 3994[label="vx59/Zero",fontsize=10,color="white",style="solid",shape="box"];804 -> 3994[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3994 -> 807[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 805[label="pr2F0G1 vx67 vx50 (Neg vx61) (primEvenInt (Neg vx61))",fontsize=16,color="black",shape="triangle"];805 -> 808[label="",style="solid", color="black", weight=3]; 162.75/105.95 806[label="pr2F0G1 vx68 vx44 (Pos (Succ vx590)) (primEvenNat (Succ vx590))",fontsize=16,color="burlywood",shape="box"];3995[label="vx590/Succ vx5900",fontsize=10,color="white",style="solid",shape="box"];806 -> 3995[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3995 -> 809[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 3996[label="vx590/Zero",fontsize=10,color="white",style="solid",shape="box"];806 -> 3996[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3996 -> 810[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 807[label="pr2F0G1 vx68 vx44 (Pos Zero) (primEvenNat Zero)",fontsize=16,color="black",shape="box"];807 -> 811[label="",style="solid", color="black", weight=3]; 162.75/105.95 808[label="pr2F0G1 vx67 vx50 (Neg vx61) (primEvenNat vx61)",fontsize=16,color="burlywood",shape="box"];3997[label="vx61/Succ vx610",fontsize=10,color="white",style="solid",shape="box"];808 -> 3997[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3997 -> 812[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 3998[label="vx61/Zero",fontsize=10,color="white",style="solid",shape="box"];808 -> 3998[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3998 -> 813[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 809[label="pr2F0G1 vx68 vx44 (Pos (Succ (Succ vx5900))) (primEvenNat (Succ (Succ vx5900)))",fontsize=16,color="black",shape="box"];809 -> 814[label="",style="solid", color="black", weight=3]; 162.75/105.95 810[label="pr2F0G1 vx68 vx44 (Pos (Succ Zero)) (primEvenNat (Succ Zero))",fontsize=16,color="black",shape="box"];810 -> 815[label="",style="solid", color="black", weight=3]; 162.75/105.95 811[label="pr2F0G1 vx68 vx44 (Pos Zero) MyTrue",fontsize=16,color="black",shape="box"];811 -> 816[label="",style="solid", color="black", weight=3]; 162.75/105.95 812[label="pr2F0G1 vx67 vx50 (Neg (Succ vx610)) (primEvenNat (Succ vx610))",fontsize=16,color="burlywood",shape="box"];3999[label="vx610/Succ vx6100",fontsize=10,color="white",style="solid",shape="box"];812 -> 3999[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 3999 -> 817[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 4000[label="vx610/Zero",fontsize=10,color="white",style="solid",shape="box"];812 -> 4000[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4000 -> 818[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 813[label="pr2F0G1 vx67 vx50 (Neg Zero) (primEvenNat Zero)",fontsize=16,color="black",shape="box"];813 -> 819[label="",style="solid", color="black", weight=3]; 162.75/105.95 814 -> 886[label="",style="dashed", color="red", weight=0]; 162.75/105.95 814[label="pr2F0G1 vx68 vx44 (Pos (Succ (Succ vx5900))) (primEvenNat vx5900)",fontsize=16,color="magenta"];814 -> 887[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 814 -> 888[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 814 -> 889[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 814 -> 890[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 815[label="pr2F0G1 vx68 vx44 (Pos (Succ Zero)) MyFalse",fontsize=16,color="black",shape="box"];815 -> 822[label="",style="solid", color="black", weight=3]; 162.75/105.95 816[label="pr2F0G vx68 (srRatio vx44 vx44) (quotMyInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];816 -> 823[label="",style="solid", color="black", weight=3]; 162.75/105.95 817[label="pr2F0G1 vx67 vx50 (Neg (Succ (Succ vx6100))) (primEvenNat (Succ (Succ vx6100)))",fontsize=16,color="black",shape="box"];817 -> 824[label="",style="solid", color="black", weight=3]; 162.75/105.95 818[label="pr2F0G1 vx67 vx50 (Neg (Succ Zero)) (primEvenNat (Succ Zero))",fontsize=16,color="black",shape="box"];818 -> 825[label="",style="solid", color="black", weight=3]; 162.75/105.95 819[label="pr2F0G1 vx67 vx50 (Neg Zero) MyTrue",fontsize=16,color="black",shape="box"];819 -> 826[label="",style="solid", color="black", weight=3]; 162.75/105.95 887[label="vx68",fontsize=16,color="green",shape="box"];888[label="vx44",fontsize=16,color="green",shape="box"];889[label="vx5900",fontsize=16,color="green",shape="box"];890[label="Succ vx5900",fontsize=16,color="green",shape="box"];886[label="pr2F0G1 vx72 vx73 (Pos (Succ vx74)) (primEvenNat vx75)",fontsize=16,color="burlywood",shape="triangle"];4001[label="vx75/Succ vx750",fontsize=10,color="white",style="solid",shape="box"];886 -> 4001[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4001 -> 899[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 4002[label="vx75/Zero",fontsize=10,color="white",style="solid",shape="box"];886 -> 4002[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4002 -> 900[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 822[label="pr2F0G0 vx68 vx44 (Pos (Succ Zero)) otherwise",fontsize=16,color="black",shape="box"];822 -> 830[label="",style="solid", color="black", weight=3]; 162.75/105.95 823[label="pr2F0G2 vx68 (srRatio vx44 vx44) (quotMyInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];823 -> 831[label="",style="solid", color="black", weight=3]; 162.75/105.95 824 -> 917[label="",style="dashed", color="red", weight=0]; 162.75/105.95 824[label="pr2F0G1 vx67 vx50 (Neg (Succ (Succ vx6100))) (primEvenNat vx6100)",fontsize=16,color="magenta"];824 -> 918[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 824 -> 919[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 824 -> 920[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 824 -> 921[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 825[label="pr2F0G1 vx67 vx50 (Neg (Succ Zero)) MyFalse",fontsize=16,color="black",shape="box"];825 -> 834[label="",style="solid", color="black", weight=3]; 162.75/105.95 826[label="pr2F0G vx67 (srRatio vx50 vx50) (quotMyInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];826 -> 835[label="",style="solid", color="black", weight=3]; 162.75/105.95 899[label="pr2F0G1 vx72 vx73 (Pos (Succ vx74)) (primEvenNat (Succ vx750))",fontsize=16,color="burlywood",shape="box"];4003[label="vx750/Succ vx7500",fontsize=10,color="white",style="solid",shape="box"];899 -> 4003[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4003 -> 911[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 4004[label="vx750/Zero",fontsize=10,color="white",style="solid",shape="box"];899 -> 4004[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4004 -> 912[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 900[label="pr2F0G1 vx72 vx73 (Pos (Succ vx74)) (primEvenNat Zero)",fontsize=16,color="black",shape="box"];900 -> 913[label="",style="solid", color="black", weight=3]; 162.75/105.95 830[label="pr2F0G0 vx68 vx44 (Pos (Succ Zero)) MyTrue",fontsize=16,color="black",shape="box"];830 -> 839[label="",style="solid", color="black", weight=3]; 162.75/105.95 831[label="pr2F0G1 vx68 (srRatio vx44 vx44) (quotMyInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))) (evenMyInt (quotMyInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];831 -> 840[label="",style="solid", color="black", weight=3]; 162.75/105.95 918[label="vx67",fontsize=16,color="green",shape="box"];919[label="vx6100",fontsize=16,color="green",shape="box"];920[label="Succ vx6100",fontsize=16,color="green",shape="box"];921[label="vx50",fontsize=16,color="green",shape="box"];917[label="pr2F0G1 vx77 vx78 (Neg (Succ vx79)) (primEvenNat vx80)",fontsize=16,color="burlywood",shape="triangle"];4005[label="vx80/Succ vx800",fontsize=10,color="white",style="solid",shape="box"];917 -> 4005[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4005 -> 930[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 4006[label="vx80/Zero",fontsize=10,color="white",style="solid",shape="box"];917 -> 4006[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4006 -> 931[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 834[label="pr2F0G0 vx67 vx50 (Neg (Succ Zero)) otherwise",fontsize=16,color="black",shape="box"];834 -> 844[label="",style="solid", color="black", weight=3]; 162.75/105.95 835[label="pr2F0G2 vx67 (srRatio vx50 vx50) (quotMyInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];835 -> 845[label="",style="solid", color="black", weight=3]; 162.75/105.95 911[label="pr2F0G1 vx72 vx73 (Pos (Succ vx74)) (primEvenNat (Succ (Succ vx7500)))",fontsize=16,color="black",shape="box"];911 -> 932[label="",style="solid", color="black", weight=3]; 162.75/105.95 912[label="pr2F0G1 vx72 vx73 (Pos (Succ vx74)) (primEvenNat (Succ Zero))",fontsize=16,color="black",shape="box"];912 -> 933[label="",style="solid", color="black", weight=3]; 162.75/105.95 913[label="pr2F0G1 vx72 vx73 (Pos (Succ vx74)) MyTrue",fontsize=16,color="black",shape="box"];913 -> 934[label="",style="solid", color="black", weight=3]; 162.75/105.95 839 -> 976[label="",style="dashed", color="red", weight=0]; 162.75/105.95 839[label="pr2F vx44 (msMyInt (Pos (Succ Zero)) (fromIntMyInt (Pos (Succ Zero)))) (srRatio vx44 vx68)",fontsize=16,color="magenta"];839 -> 977[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 839 -> 978[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 839 -> 979[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 839 -> 980[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 840[label="pr2F0G1 vx68 (srRatio vx44 vx44) (quotMyInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))) (primEvenInt (quotMyInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];840 -> 852[label="",style="solid", color="black", weight=3]; 162.75/105.95 930[label="pr2F0G1 vx77 vx78 (Neg (Succ vx79)) (primEvenNat (Succ vx800))",fontsize=16,color="burlywood",shape="box"];4007[label="vx800/Succ vx8000",fontsize=10,color="white",style="solid",shape="box"];930 -> 4007[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4007 -> 941[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 4008[label="vx800/Zero",fontsize=10,color="white",style="solid",shape="box"];930 -> 4008[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4008 -> 942[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 931[label="pr2F0G1 vx77 vx78 (Neg (Succ vx79)) (primEvenNat Zero)",fontsize=16,color="black",shape="box"];931 -> 943[label="",style="solid", color="black", weight=3]; 162.75/105.95 844[label="pr2F0G0 vx67 vx50 (Neg (Succ Zero)) MyTrue",fontsize=16,color="black",shape="box"];844 -> 856[label="",style="solid", color="black", weight=3]; 162.75/105.95 845[label="pr2F0G1 vx67 (srRatio vx50 vx50) (quotMyInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))) (evenMyInt (quotMyInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];845 -> 857[label="",style="solid", color="black", weight=3]; 162.75/105.95 932 -> 886[label="",style="dashed", color="red", weight=0]; 162.75/105.95 932[label="pr2F0G1 vx72 vx73 (Pos (Succ vx74)) (primEvenNat vx7500)",fontsize=16,color="magenta"];932 -> 944[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 933[label="pr2F0G1 vx72 vx73 (Pos (Succ vx74)) MyFalse",fontsize=16,color="black",shape="box"];933 -> 945[label="",style="solid", color="black", weight=3]; 162.75/105.95 934 -> 946[label="",style="dashed", color="red", weight=0]; 162.75/105.95 934[label="pr2F0G vx72 (srRatio vx73 vx73) (quotMyInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="magenta"];934 -> 947[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 977 -> 33[label="",style="dashed", color="red", weight=0]; 162.75/105.95 977[label="fromIntMyInt (Pos (Succ Zero))",fontsize=16,color="magenta"];978[label="vx68",fontsize=16,color="green",shape="box"];979[label="vx44",fontsize=16,color="green",shape="box"];980[label="Zero",fontsize=16,color="green",shape="box"];976[label="pr2F vx73 (msMyInt (Pos (Succ vx74)) vx85) (srRatio vx73 vx72)",fontsize=16,color="black",shape="triangle"];976 -> 986[label="",style="solid", color="black", weight=3]; 162.75/105.95 852[label="pr2F0G1 vx68 (srRatio vx44 vx44) (primQuotInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))) (primEvenInt (primQuotInt (Pos Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];852 -> 864[label="",style="solid", color="black", weight=3]; 162.75/105.95 941[label="pr2F0G1 vx77 vx78 (Neg (Succ vx79)) (primEvenNat (Succ (Succ vx8000)))",fontsize=16,color="black",shape="box"];941 -> 948[label="",style="solid", color="black", weight=3]; 162.75/105.95 942[label="pr2F0G1 vx77 vx78 (Neg (Succ vx79)) (primEvenNat (Succ Zero))",fontsize=16,color="black",shape="box"];942 -> 949[label="",style="solid", color="black", weight=3]; 162.75/105.95 943[label="pr2F0G1 vx77 vx78 (Neg (Succ vx79)) MyTrue",fontsize=16,color="black",shape="box"];943 -> 950[label="",style="solid", color="black", weight=3]; 162.75/105.95 856 -> 995[label="",style="dashed", color="red", weight=0]; 162.75/105.95 856[label="pr2F vx50 (msMyInt (Neg (Succ Zero)) (fromIntMyInt (Pos (Succ Zero)))) (srRatio vx50 vx67)",fontsize=16,color="magenta"];856 -> 996[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 856 -> 997[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 856 -> 998[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 856 -> 999[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 857[label="pr2F0G1 vx67 (srRatio vx50 vx50) (quotMyInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))) (primEvenInt (quotMyInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];857 -> 871[label="",style="solid", color="black", weight=3]; 162.75/105.95 944[label="vx7500",fontsize=16,color="green",shape="box"];945[label="pr2F0G0 vx72 vx73 (Pos (Succ vx74)) otherwise",fontsize=16,color="black",shape="box"];945 -> 951[label="",style="solid", color="black", weight=3]; 162.75/105.95 947 -> 903[label="",style="dashed", color="red", weight=0]; 162.75/105.95 947[label="srRatio vx73 vx73",fontsize=16,color="magenta"];947 -> 952[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 946[label="pr2F0G vx72 vx81 (quotMyInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="triangle"];946 -> 953[label="",style="solid", color="black", weight=3]; 162.75/105.95 986[label="pr2F4 vx73 (msMyInt (Pos (Succ vx74)) vx85) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];986 -> 993[label="",style="solid", color="black", weight=3]; 162.75/105.95 864[label="pr2F0G1 vx68 (srRatio vx44 vx44) (primQuotInt (Pos Zero) (Pos (Succ (Succ Zero)))) (primEvenInt (primQuotInt (Pos Zero) (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];864 -> 878[label="",style="solid", color="black", weight=3]; 162.75/105.95 948 -> 917[label="",style="dashed", color="red", weight=0]; 162.75/105.95 948[label="pr2F0G1 vx77 vx78 (Neg (Succ vx79)) (primEvenNat vx8000)",fontsize=16,color="magenta"];948 -> 959[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 949[label="pr2F0G1 vx77 vx78 (Neg (Succ vx79)) MyFalse",fontsize=16,color="black",shape="box"];949 -> 960[label="",style="solid", color="black", weight=3]; 162.75/105.95 950 -> 961[label="",style="dashed", color="red", weight=0]; 162.75/105.95 950[label="pr2F0G vx77 (srRatio vx78 vx78) (quotMyInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="magenta"];950 -> 962[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 996[label="vx67",fontsize=16,color="green",shape="box"];997[label="Zero",fontsize=16,color="green",shape="box"];998 -> 33[label="",style="dashed", color="red", weight=0]; 162.75/105.95 998[label="fromIntMyInt (Pos (Succ Zero))",fontsize=16,color="magenta"];999[label="vx50",fontsize=16,color="green",shape="box"];995[label="pr2F vx78 (msMyInt (Neg (Succ vx79)) vx86) (srRatio vx78 vx77)",fontsize=16,color="black",shape="triangle"];995 -> 1005[label="",style="solid", color="black", weight=3]; 162.75/105.95 871[label="pr2F0G1 vx67 (srRatio vx50 vx50) (primQuotInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))) (primEvenInt (primQuotInt (Neg Zero) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];871 -> 885[label="",style="solid", color="black", weight=3]; 162.75/105.95 951[label="pr2F0G0 vx72 vx73 (Pos (Succ vx74)) MyTrue",fontsize=16,color="black",shape="box"];951 -> 963[label="",style="solid", color="black", weight=3]; 162.75/105.95 952[label="vx73",fontsize=16,color="green",shape="box"];903[label="srRatio vx44 vx44",fontsize=16,color="burlywood",shape="triangle"];4009[label="vx44/CnPc vx440 vx441",fontsize=10,color="white",style="solid",shape="box"];903 -> 4009[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4009 -> 916[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 953[label="pr2F0G2 vx72 vx81 (quotMyInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];953 -> 964[label="",style="solid", color="black", weight=3]; 162.75/105.95 993[label="pr2F3 (esEsMyInt (msMyInt (Pos (Succ vx74)) vx85) (fromIntMyInt (Pos Zero))) vx73 (msMyInt (Pos (Succ vx74)) vx85) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];993 -> 1006[label="",style="solid", color="black", weight=3]; 162.75/105.95 878 -> 802[label="",style="dashed", color="red", weight=0]; 162.75/105.95 878[label="pr2F0G1 vx68 (srRatio vx44 vx44) (Pos (primDivNatS Zero (Succ (Succ Zero)))) (primEvenInt (Pos (primDivNatS Zero (Succ (Succ Zero)))))",fontsize=16,color="magenta"];878 -> 902[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 878 -> 903[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 959[label="vx8000",fontsize=16,color="green",shape="box"];960[label="pr2F0G0 vx77 vx78 (Neg (Succ vx79)) otherwise",fontsize=16,color="black",shape="box"];960 -> 965[label="",style="solid", color="black", weight=3]; 162.75/105.95 962 -> 903[label="",style="dashed", color="red", weight=0]; 162.75/105.95 962[label="srRatio vx78 vx78",fontsize=16,color="magenta"];962 -> 966[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 961[label="pr2F0G vx77 vx82 (quotMyInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="triangle"];961 -> 967[label="",style="solid", color="black", weight=3]; 162.75/105.95 1005[label="pr2F4 vx78 (msMyInt (Neg (Succ vx79)) vx86) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1005 -> 1010[label="",style="solid", color="black", weight=3]; 162.75/105.95 885[label="pr2F0G1 vx67 (srRatio vx50 vx50) (primQuotInt (Neg Zero) (Pos (Succ (Succ Zero)))) (primEvenInt (primQuotInt (Neg Zero) (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];885 -> 910[label="",style="solid", color="black", weight=3]; 162.75/105.95 963 -> 976[label="",style="dashed", color="red", weight=0]; 162.75/105.95 963[label="pr2F vx73 (msMyInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ Zero)))) (srRatio vx73 vx72)",fontsize=16,color="magenta"];963 -> 985[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 916[label="srRatio (CnPc vx440 vx441) (CnPc vx440 vx441)",fontsize=16,color="black",shape="box"];916 -> 940[label="",style="solid", color="black", weight=3]; 162.75/105.95 964[label="pr2F0G1 vx72 vx81 (quotMyInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero))))) (evenMyInt (quotMyInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];964 -> 987[label="",style="solid", color="black", weight=3]; 162.75/105.95 1006[label="pr2F3 (primEqInt (msMyInt (Pos (Succ vx74)) vx85) (fromIntMyInt (Pos Zero))) vx73 (msMyInt (Pos (Succ vx74)) vx85) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1006 -> 1011[label="",style="solid", color="black", weight=3]; 162.75/105.95 902[label="primDivNatS Zero (Succ (Succ Zero))",fontsize=16,color="black",shape="triangle"];902 -> 915[label="",style="solid", color="black", weight=3]; 162.75/105.95 965[label="pr2F0G0 vx77 vx78 (Neg (Succ vx79)) MyTrue",fontsize=16,color="black",shape="box"];965 -> 988[label="",style="solid", color="black", weight=3]; 162.75/105.95 966[label="vx78",fontsize=16,color="green",shape="box"];967[label="pr2F0G2 vx77 vx82 (quotMyInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];967 -> 989[label="",style="solid", color="black", weight=3]; 162.75/105.95 1010[label="pr2F3 (esEsMyInt (msMyInt (Neg (Succ vx79)) vx86) (fromIntMyInt (Pos Zero))) vx78 (msMyInt (Neg (Succ vx79)) vx86) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1010 -> 1016[label="",style="solid", color="black", weight=3]; 162.75/105.95 910 -> 805[label="",style="dashed", color="red", weight=0]; 162.75/105.95 910[label="pr2F0G1 vx67 (srRatio vx50 vx50) (Neg (primDivNatS Zero (Succ (Succ Zero)))) (primEvenInt (Neg (primDivNatS Zero (Succ (Succ Zero)))))",fontsize=16,color="magenta"];910 -> 936[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 910 -> 937[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 985 -> 33[label="",style="dashed", color="red", weight=0]; 162.75/105.95 985[label="fromIntMyInt (Pos (Succ Zero))",fontsize=16,color="magenta"];940[label="reduce (srMyInt vx440 vx440) (srMyInt vx441 vx441)",fontsize=16,color="black",shape="box"];940 -> 958[label="",style="solid", color="black", weight=3]; 162.75/105.95 987[label="pr2F0G1 vx72 vx81 (quotMyInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero))))) (primEvenInt (quotMyInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];987 -> 994[label="",style="solid", color="black", weight=3]; 162.75/105.95 1011[label="pr2F3 (primEqInt (primMinusInt (Pos (Succ vx74)) vx85) (fromIntMyInt (Pos Zero))) vx73 (primMinusInt (Pos (Succ vx74)) vx85) (srRatio vx73 vx72)",fontsize=16,color="burlywood",shape="box"];4010[label="vx85/Pos vx850",fontsize=10,color="white",style="solid",shape="box"];1011 -> 4010[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4010 -> 1017[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 4011[label="vx85/Neg vx850",fontsize=10,color="white",style="solid",shape="box"];1011 -> 4011[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4011 -> 1018[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 915[label="Zero",fontsize=16,color="green",shape="box"];988 -> 995[label="",style="dashed", color="red", weight=0]; 162.75/105.95 988[label="pr2F vx78 (msMyInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ Zero)))) (srRatio vx78 vx77)",fontsize=16,color="magenta"];988 -> 1004[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 989[label="pr2F0G1 vx77 vx82 (quotMyInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero))))) (evenMyInt (quotMyInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];989 -> 1007[label="",style="solid", color="black", weight=3]; 162.75/105.95 1016[label="pr2F3 (primEqInt (msMyInt (Neg (Succ vx79)) vx86) (fromIntMyInt (Pos Zero))) vx78 (msMyInt (Neg (Succ vx79)) vx86) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1016 -> 1025[label="",style="solid", color="black", weight=3]; 162.75/105.95 936 -> 903[label="",style="dashed", color="red", weight=0]; 162.75/105.95 936[label="srRatio vx50 vx50",fontsize=16,color="magenta"];936 -> 955[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 937 -> 902[label="",style="dashed", color="red", weight=0]; 162.75/105.95 937[label="primDivNatS Zero (Succ (Succ Zero))",fontsize=16,color="magenta"];958[label="reduce2 (srMyInt vx440 vx440) (srMyInt vx441 vx441)",fontsize=16,color="black",shape="box"];958 -> 968[label="",style="solid", color="black", weight=3]; 162.75/105.95 994[label="pr2F0G1 vx72 vx81 (primQuotInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero))))) (primEvenInt (primQuotInt (Pos (Succ vx74)) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];994 -> 1008[label="",style="solid", color="black", weight=3]; 162.75/105.95 1017[label="pr2F3 (primEqInt (primMinusInt (Pos (Succ vx74)) (Pos vx850)) (fromIntMyInt (Pos Zero))) vx73 (primMinusInt (Pos (Succ vx74)) (Pos vx850)) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1017 -> 1026[label="",style="solid", color="black", weight=3]; 162.75/105.95 1018[label="pr2F3 (primEqInt (primMinusInt (Pos (Succ vx74)) (Neg vx850)) (fromIntMyInt (Pos Zero))) vx73 (primMinusInt (Pos (Succ vx74)) (Neg vx850)) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1018 -> 1027[label="",style="solid", color="black", weight=3]; 162.75/105.95 1004 -> 33[label="",style="dashed", color="red", weight=0]; 162.75/105.95 1004[label="fromIntMyInt (Pos (Succ Zero))",fontsize=16,color="magenta"];1007[label="pr2F0G1 vx77 vx82 (quotMyInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero))))) (primEvenInt (quotMyInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];1007 -> 1012[label="",style="solid", color="black", weight=3]; 162.75/105.95 1025[label="pr2F3 (primEqInt (primMinusInt (Neg (Succ vx79)) vx86) (fromIntMyInt (Pos Zero))) vx78 (primMinusInt (Neg (Succ vx79)) vx86) (srRatio vx78 vx77)",fontsize=16,color="burlywood",shape="box"];4012[label="vx86/Pos vx860",fontsize=10,color="white",style="solid",shape="box"];1025 -> 4012[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4012 -> 1033[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 4013[label="vx86/Neg vx860",fontsize=10,color="white",style="solid",shape="box"];1025 -> 4013[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4013 -> 1034[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 955[label="vx50",fontsize=16,color="green",shape="box"];968[label="reduce2Reduce1 (srMyInt vx440 vx440) (srMyInt vx441 vx441) (srMyInt vx440 vx440) (srMyInt vx441 vx441) (esEsMyInt (srMyInt vx441 vx441) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];968 -> 990[label="",style="solid", color="black", weight=3]; 162.75/105.95 1008[label="pr2F0G1 vx72 vx81 (primQuotInt (Pos (Succ vx74)) (Pos (Succ (Succ Zero)))) (primEvenInt (primQuotInt (Pos (Succ vx74)) (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];1008 -> 1013[label="",style="solid", color="black", weight=3]; 162.75/105.95 1026[label="pr2F3 (primEqInt (primMinusNat (Succ vx74) vx850) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat (Succ vx74) vx850) (srRatio vx73 vx72)",fontsize=16,color="burlywood",shape="box"];4014[label="vx850/Succ vx8500",fontsize=10,color="white",style="solid",shape="box"];1026 -> 4014[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4014 -> 1035[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 4015[label="vx850/Zero",fontsize=10,color="white",style="solid",shape="box"];1026 -> 4015[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4015 -> 1036[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 1027 -> 1037[label="",style="dashed", color="red", weight=0]; 162.75/105.95 1027[label="pr2F3 (primEqInt (Pos (primPlusNat (Succ vx74) vx850)) (fromIntMyInt (Pos Zero))) vx73 (Pos (primPlusNat (Succ vx74) vx850)) (srRatio vx73 vx72)",fontsize=16,color="magenta"];1027 -> 1038[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1027 -> 1039[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1012[label="pr2F0G1 vx77 vx82 (primQuotInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero))))) (primEvenInt (primQuotInt (Neg (Succ vx79)) (fromIntMyInt (Pos (Succ (Succ Zero))))))",fontsize=16,color="black",shape="box"];1012 -> 1019[label="",style="solid", color="black", weight=3]; 162.75/105.95 1033[label="pr2F3 (primEqInt (primMinusInt (Neg (Succ vx79)) (Pos vx860)) (fromIntMyInt (Pos Zero))) vx78 (primMinusInt (Neg (Succ vx79)) (Pos vx860)) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1033 -> 1040[label="",style="solid", color="black", weight=3]; 162.75/105.95 1034[label="pr2F3 (primEqInt (primMinusInt (Neg (Succ vx79)) (Neg vx860)) (fromIntMyInt (Pos Zero))) vx78 (primMinusInt (Neg (Succ vx79)) (Neg vx860)) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1034 -> 1041[label="",style="solid", color="black", weight=3]; 162.75/105.95 990[label="reduce2Reduce1 (srMyInt vx440 vx440) (srMyInt vx441 vx441) (srMyInt vx440 vx440) (srMyInt vx441 vx441) (primEqInt (srMyInt vx441 vx441) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];990 -> 1009[label="",style="solid", color="black", weight=3]; 162.75/105.95 1013 -> 802[label="",style="dashed", color="red", weight=0]; 162.75/105.95 1013[label="pr2F0G1 vx72 vx81 (Pos (primDivNatS (Succ vx74) (Succ (Succ Zero)))) (primEvenInt (Pos (primDivNatS (Succ vx74) (Succ (Succ Zero)))))",fontsize=16,color="magenta"];1013 -> 1020[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1013 -> 1021[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1013 -> 1022[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1035[label="pr2F3 (primEqInt (primMinusNat (Succ vx74) (Succ vx8500)) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat (Succ vx74) (Succ vx8500)) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1035 -> 1042[label="",style="solid", color="black", weight=3]; 162.75/105.95 1036[label="pr2F3 (primEqInt (primMinusNat (Succ vx74) Zero) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat (Succ vx74) Zero) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1036 -> 1043[label="",style="solid", color="black", weight=3]; 162.75/105.95 1038 -> 76[label="",style="dashed", color="red", weight=0]; 162.75/105.95 1038[label="primPlusNat (Succ vx74) vx850",fontsize=16,color="magenta"];1038 -> 1044[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1038 -> 1045[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1039 -> 76[label="",style="dashed", color="red", weight=0]; 162.75/105.95 1039[label="primPlusNat (Succ vx74) vx850",fontsize=16,color="magenta"];1039 -> 1046[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1039 -> 1047[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1037[label="pr2F3 (primEqInt (Pos vx88) (fromIntMyInt (Pos Zero))) vx73 (Pos vx87) (srRatio vx73 vx72)",fontsize=16,color="burlywood",shape="triangle"];4016[label="vx88/Succ vx880",fontsize=10,color="white",style="solid",shape="box"];1037 -> 4016[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4016 -> 1048[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 4017[label="vx88/Zero",fontsize=10,color="white",style="solid",shape="box"];1037 -> 4017[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4017 -> 1049[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 1019[label="pr2F0G1 vx77 vx82 (primQuotInt (Neg (Succ vx79)) (Pos (Succ (Succ Zero)))) (primEvenInt (primQuotInt (Neg (Succ vx79)) (Pos (Succ (Succ Zero)))))",fontsize=16,color="black",shape="box"];1019 -> 1028[label="",style="solid", color="black", weight=3]; 162.75/105.95 1040 -> 1057[label="",style="dashed", color="red", weight=0]; 162.75/105.95 1040[label="pr2F3 (primEqInt (Neg (primPlusNat (Succ vx79) vx860)) (fromIntMyInt (Pos Zero))) vx78 (Neg (primPlusNat (Succ vx79) vx860)) (srRatio vx78 vx77)",fontsize=16,color="magenta"];1040 -> 1058[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1040 -> 1059[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1041[label="pr2F3 (primEqInt (primMinusNat vx860 (Succ vx79)) (fromIntMyInt (Pos Zero))) vx78 (primMinusNat vx860 (Succ vx79)) (srRatio vx78 vx77)",fontsize=16,color="burlywood",shape="box"];4018[label="vx860/Succ vx8600",fontsize=10,color="white",style="solid",shape="box"];1041 -> 4018[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4018 -> 1060[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 4019[label="vx860/Zero",fontsize=10,color="white",style="solid",shape="box"];1041 -> 4019[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4019 -> 1061[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 1009[label="reduce2Reduce1 (srMyInt vx440 vx440) (primMulInt vx441 vx441) (srMyInt vx440 vx440) (primMulInt vx441 vx441) (primEqInt (primMulInt vx441 vx441) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4020[label="vx441/Pos vx4410",fontsize=10,color="white",style="solid",shape="box"];1009 -> 4020[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4020 -> 1014[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 4021[label="vx441/Neg vx4410",fontsize=10,color="white",style="solid",shape="box"];1009 -> 4021[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4021 -> 1015[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 1020[label="primDivNatS (Succ vx74) (Succ (Succ Zero))",fontsize=16,color="black",shape="triangle"];1020 -> 1029[label="",style="solid", color="black", weight=3]; 162.75/105.95 1021[label="vx81",fontsize=16,color="green",shape="box"];1022[label="vx72",fontsize=16,color="green",shape="box"];1042[label="pr2F3 (primEqInt (primMinusNat vx74 vx8500) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat vx74 vx8500) (srRatio vx73 vx72)",fontsize=16,color="burlywood",shape="triangle"];4022[label="vx74/Succ vx740",fontsize=10,color="white",style="solid",shape="box"];1042 -> 4022[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4022 -> 1062[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 4023[label="vx74/Zero",fontsize=10,color="white",style="solid",shape="box"];1042 -> 4023[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4023 -> 1063[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 1043 -> 1037[label="",style="dashed", color="red", weight=0]; 162.75/105.95 1043[label="pr2F3 (primEqInt (Pos (Succ vx74)) (fromIntMyInt (Pos Zero))) vx73 (Pos (Succ vx74)) (srRatio vx73 vx72)",fontsize=16,color="magenta"];1043 -> 1064[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1043 -> 1065[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1044[label="vx850",fontsize=16,color="green",shape="box"];1045[label="Succ vx74",fontsize=16,color="green",shape="box"];1046[label="vx850",fontsize=16,color="green",shape="box"];1047[label="Succ vx74",fontsize=16,color="green",shape="box"];1048[label="pr2F3 (primEqInt (Pos (Succ vx880)) (fromIntMyInt (Pos Zero))) vx73 (Pos vx87) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1048 -> 1066[label="",style="solid", color="black", weight=3]; 162.75/105.95 1049[label="pr2F3 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) vx73 (Pos vx87) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1049 -> 1067[label="",style="solid", color="black", weight=3]; 162.75/105.95 1028 -> 805[label="",style="dashed", color="red", weight=0]; 162.75/105.95 1028[label="pr2F0G1 vx77 vx82 (Neg (primDivNatS (Succ vx79) (Succ (Succ Zero)))) (primEvenInt (Neg (primDivNatS (Succ vx79) (Succ (Succ Zero)))))",fontsize=16,color="magenta"];1028 -> 1050[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1028 -> 1051[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1028 -> 1052[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1058 -> 76[label="",style="dashed", color="red", weight=0]; 162.75/105.95 1058[label="primPlusNat (Succ vx79) vx860",fontsize=16,color="magenta"];1058 -> 1068[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1058 -> 1069[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1059 -> 76[label="",style="dashed", color="red", weight=0]; 162.75/105.95 1059[label="primPlusNat (Succ vx79) vx860",fontsize=16,color="magenta"];1059 -> 1070[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1059 -> 1071[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1057[label="pr2F3 (primEqInt (Neg vx90) (fromIntMyInt (Pos Zero))) vx78 (Neg vx89) (srRatio vx78 vx77)",fontsize=16,color="burlywood",shape="triangle"];4024[label="vx90/Succ vx900",fontsize=10,color="white",style="solid",shape="box"];1057 -> 4024[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4024 -> 1072[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 4025[label="vx90/Zero",fontsize=10,color="white",style="solid",shape="box"];1057 -> 4025[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4025 -> 1073[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 1060[label="pr2F3 (primEqInt (primMinusNat (Succ vx8600) (Succ vx79)) (fromIntMyInt (Pos Zero))) vx78 (primMinusNat (Succ vx8600) (Succ vx79)) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1060 -> 1090[label="",style="solid", color="black", weight=3]; 162.75/105.95 1061[label="pr2F3 (primEqInt (primMinusNat Zero (Succ vx79)) (fromIntMyInt (Pos Zero))) vx78 (primMinusNat Zero (Succ vx79)) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1061 -> 1091[label="",style="solid", color="black", weight=3]; 162.75/105.95 1014[label="reduce2Reduce1 (srMyInt vx440 vx440) (primMulInt (Pos vx4410) (Pos vx4410)) (srMyInt vx440 vx440) (primMulInt (Pos vx4410) (Pos vx4410)) (primEqInt (primMulInt (Pos vx4410) (Pos vx4410)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1014 -> 1023[label="",style="solid", color="black", weight=3]; 162.75/105.95 1015[label="reduce2Reduce1 (srMyInt vx440 vx440) (primMulInt (Neg vx4410) (Neg vx4410)) (srMyInt vx440 vx440) (primMulInt (Neg vx4410) (Neg vx4410)) (primEqInt (primMulInt (Neg vx4410) (Neg vx4410)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1015 -> 1024[label="",style="solid", color="black", weight=3]; 162.75/105.95 1029[label="primDivNatS0 vx74 (Succ Zero) (primGEqNatS vx74 (Succ Zero))",fontsize=16,color="burlywood",shape="box"];4026[label="vx74/Succ vx740",fontsize=10,color="white",style="solid",shape="box"];1029 -> 4026[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4026 -> 1053[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 4027[label="vx74/Zero",fontsize=10,color="white",style="solid",shape="box"];1029 -> 4027[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4027 -> 1054[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 1062[label="pr2F3 (primEqInt (primMinusNat (Succ vx740) vx8500) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat (Succ vx740) vx8500) (srRatio vx73 vx72)",fontsize=16,color="burlywood",shape="box"];4028[label="vx8500/Succ vx85000",fontsize=10,color="white",style="solid",shape="box"];1062 -> 4028[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4028 -> 1092[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 4029[label="vx8500/Zero",fontsize=10,color="white",style="solid",shape="box"];1062 -> 4029[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4029 -> 1093[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 1063[label="pr2F3 (primEqInt (primMinusNat Zero vx8500) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat Zero vx8500) (srRatio vx73 vx72)",fontsize=16,color="burlywood",shape="box"];4030[label="vx8500/Succ vx85000",fontsize=10,color="white",style="solid",shape="box"];1063 -> 4030[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4030 -> 1094[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 4031[label="vx8500/Zero",fontsize=10,color="white",style="solid",shape="box"];1063 -> 4031[label="",style="solid", color="burlywood", weight=9]; 162.75/105.95 4031 -> 1095[label="",style="solid", color="burlywood", weight=3]; 162.75/105.95 1064[label="Succ vx74",fontsize=16,color="green",shape="box"];1065[label="Succ vx74",fontsize=16,color="green",shape="box"];1066[label="pr2F3 (primEqInt (Pos (Succ vx880)) (Pos Zero)) vx73 (Pos vx87) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1066 -> 1096[label="",style="solid", color="black", weight=3]; 162.75/105.95 1067[label="pr2F3 (primEqInt (Pos Zero) (Pos Zero)) vx73 (Pos vx87) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1067 -> 1097[label="",style="solid", color="black", weight=3]; 162.75/105.95 1050[label="vx77",fontsize=16,color="green",shape="box"];1051[label="vx82",fontsize=16,color="green",shape="box"];1052 -> 1020[label="",style="dashed", color="red", weight=0]; 162.75/105.95 1052[label="primDivNatS (Succ vx79) (Succ (Succ Zero))",fontsize=16,color="magenta"];1052 -> 1074[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1068[label="vx860",fontsize=16,color="green",shape="box"];1069[label="Succ vx79",fontsize=16,color="green",shape="box"];1070[label="vx860",fontsize=16,color="green",shape="box"];1071[label="Succ vx79",fontsize=16,color="green",shape="box"];1072[label="pr2F3 (primEqInt (Neg (Succ vx900)) (fromIntMyInt (Pos Zero))) vx78 (Neg vx89) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1072 -> 1098[label="",style="solid", color="black", weight=3]; 162.75/105.95 1073[label="pr2F3 (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero))) vx78 (Neg vx89) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1073 -> 1099[label="",style="solid", color="black", weight=3]; 162.75/105.95 1090 -> 1042[label="",style="dashed", color="red", weight=0]; 162.75/105.95 1090[label="pr2F3 (primEqInt (primMinusNat vx8600 vx79) (fromIntMyInt (Pos Zero))) vx78 (primMinusNat vx8600 vx79) (srRatio vx78 vx77)",fontsize=16,color="magenta"];1090 -> 1110[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1090 -> 1111[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1090 -> 1112[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1090 -> 1113[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1091 -> 1057[label="",style="dashed", color="red", weight=0]; 162.75/105.95 1091[label="pr2F3 (primEqInt (Neg (Succ vx79)) (fromIntMyInt (Pos Zero))) vx78 (Neg (Succ vx79)) (srRatio vx78 vx77)",fontsize=16,color="magenta"];1091 -> 1114[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1091 -> 1115[label="",style="dashed", color="magenta", weight=3]; 162.75/105.95 1023 -> 1261[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1023[label="reduce2Reduce1 (srMyInt vx440 vx440) (Pos (primMulNat vx4410 vx4410)) (srMyInt vx440 vx440) (Pos (primMulNat vx4410 vx4410)) (primEqInt (Pos (primMulNat vx4410 vx4410)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];1023 -> 1262[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1023 -> 1263[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1023 -> 1264[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1023 -> 1265[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1023 -> 1266[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1024 -> 1261[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1024[label="reduce2Reduce1 (srMyInt vx440 vx440) (Pos (primMulNat vx4410 vx4410)) (srMyInt vx440 vx440) (Pos (primMulNat vx4410 vx4410)) (primEqInt (Pos (primMulNat vx4410 vx4410)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];1024 -> 1267[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1024 -> 1268[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1024 -> 1269[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1024 -> 1270[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1024 -> 1271[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1053[label="primDivNatS0 (Succ vx740) (Succ Zero) (primGEqNatS (Succ vx740) (Succ Zero))",fontsize=16,color="black",shape="box"];1053 -> 1075[label="",style="solid", color="black", weight=3]; 162.75/105.96 1054[label="primDivNatS0 Zero (Succ Zero) (primGEqNatS Zero (Succ Zero))",fontsize=16,color="black",shape="box"];1054 -> 1076[label="",style="solid", color="black", weight=3]; 162.75/105.96 1092[label="pr2F3 (primEqInt (primMinusNat (Succ vx740) (Succ vx85000)) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat (Succ vx740) (Succ vx85000)) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1092 -> 1116[label="",style="solid", color="black", weight=3]; 162.75/105.96 1093[label="pr2F3 (primEqInt (primMinusNat (Succ vx740) Zero) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat (Succ vx740) Zero) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1093 -> 1117[label="",style="solid", color="black", weight=3]; 162.75/105.96 1094[label="pr2F3 (primEqInt (primMinusNat Zero (Succ vx85000)) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat Zero (Succ vx85000)) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1094 -> 1118[label="",style="solid", color="black", weight=3]; 162.75/105.96 1095[label="pr2F3 (primEqInt (primMinusNat Zero Zero) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat Zero Zero) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1095 -> 1119[label="",style="solid", color="black", weight=3]; 162.75/105.96 1096[label="pr2F3 MyFalse vx73 (Pos vx87) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1096 -> 1120[label="",style="solid", color="black", weight=3]; 162.75/105.96 1097[label="pr2F3 MyTrue vx73 (Pos vx87) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1097 -> 1121[label="",style="solid", color="black", weight=3]; 162.75/105.96 1074[label="vx79",fontsize=16,color="green",shape="box"];1098 -> 775[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1098[label="pr2F3 (primEqInt (Neg (Succ vx900)) (Pos Zero)) vx78 (Neg vx89) (srRatio vx78 vx77)",fontsize=16,color="magenta"];1098 -> 1122[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1098 -> 1123[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1098 -> 1124[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1098 -> 1125[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1099[label="pr2F3 (primEqInt (Neg Zero) (Pos Zero)) vx78 (Neg vx89) (srRatio vx78 vx77)",fontsize=16,color="black",shape="box"];1099 -> 1126[label="",style="solid", color="black", weight=3]; 162.75/105.96 1110[label="vx79",fontsize=16,color="green",shape="box"];1111[label="vx77",fontsize=16,color="green",shape="box"];1112[label="vx78",fontsize=16,color="green",shape="box"];1113[label="vx8600",fontsize=16,color="green",shape="box"];1114[label="Succ vx79",fontsize=16,color="green",shape="box"];1115[label="Succ vx79",fontsize=16,color="green",shape="box"];1262[label="primMulNat vx4410 vx4410",fontsize=16,color="burlywood",shape="triangle"];4032[label="vx4410/Succ vx44100",fontsize=10,color="white",style="solid",shape="box"];1262 -> 4032[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4032 -> 1295[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4033[label="vx4410/Zero",fontsize=10,color="white",style="solid",shape="box"];1262 -> 4033[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4033 -> 1296[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1263 -> 1262[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1263[label="primMulNat vx4410 vx4410",fontsize=16,color="magenta"];1264 -> 1262[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1264[label="primMulNat vx4410 vx4410",fontsize=16,color="magenta"];1265[label="vx440",fontsize=16,color="green",shape="box"];1266[label="vx440",fontsize=16,color="green",shape="box"];1261[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) (primEqInt (Pos vx99) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="triangle"];4034[label="vx99/Succ vx990",fontsize=10,color="white",style="solid",shape="box"];1261 -> 4034[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4034 -> 1297[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4035[label="vx99/Zero",fontsize=10,color="white",style="solid",shape="box"];1261 -> 4035[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4035 -> 1298[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1267 -> 1262[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1267[label="primMulNat vx4410 vx4410",fontsize=16,color="magenta"];1267 -> 1299[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1268 -> 1262[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1268[label="primMulNat vx4410 vx4410",fontsize=16,color="magenta"];1268 -> 1300[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1269 -> 1262[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1269[label="primMulNat vx4410 vx4410",fontsize=16,color="magenta"];1269 -> 1301[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1270[label="vx440",fontsize=16,color="green",shape="box"];1271[label="vx440",fontsize=16,color="green",shape="box"];1075 -> 3546[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1075[label="primDivNatS0 (Succ vx740) (Succ Zero) (primGEqNatS vx740 Zero)",fontsize=16,color="magenta"];1075 -> 3547[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1075 -> 3548[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1075 -> 3549[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1075 -> 3550[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1076[label="primDivNatS0 Zero (Succ Zero) MyFalse",fontsize=16,color="black",shape="box"];1076 -> 1109[label="",style="solid", color="black", weight=3]; 162.75/105.96 1116 -> 1042[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1116[label="pr2F3 (primEqInt (primMinusNat vx740 vx85000) (fromIntMyInt (Pos Zero))) vx73 (primMinusNat vx740 vx85000) (srRatio vx73 vx72)",fontsize=16,color="magenta"];1116 -> 1133[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1116 -> 1134[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1117 -> 1037[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1117[label="pr2F3 (primEqInt (Pos (Succ vx740)) (fromIntMyInt (Pos Zero))) vx73 (Pos (Succ vx740)) (srRatio vx73 vx72)",fontsize=16,color="magenta"];1117 -> 1135[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1117 -> 1136[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1118 -> 1057[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1118[label="pr2F3 (primEqInt (Neg (Succ vx85000)) (fromIntMyInt (Pos Zero))) vx73 (Neg (Succ vx85000)) (srRatio vx73 vx72)",fontsize=16,color="magenta"];1118 -> 1137[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1118 -> 1138[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1118 -> 1139[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1118 -> 1140[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1119 -> 1037[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1119[label="pr2F3 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) vx73 (Pos Zero) (srRatio vx73 vx72)",fontsize=16,color="magenta"];1119 -> 1141[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1119 -> 1142[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1120[label="pr2F0 vx73 (Pos vx87) (srRatio vx73 vx72)",fontsize=16,color="black",shape="box"];1120 -> 1143[label="",style="solid", color="black", weight=3]; 162.75/105.96 1121[label="srRatio vx73 vx72",fontsize=16,color="burlywood",shape="triangle"];4036[label="vx73/CnPc vx730 vx731",fontsize=10,color="white",style="solid",shape="box"];1121 -> 4036[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4036 -> 1144[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1122 -> 1121[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1122[label="srRatio vx78 vx77",fontsize=16,color="magenta"];1122 -> 1145[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1122 -> 1146[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1123[label="vx900",fontsize=16,color="green",shape="box"];1124[label="vx78",fontsize=16,color="green",shape="box"];1125[label="vx89",fontsize=16,color="green",shape="box"];1126 -> 1147[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1126[label="pr2F3 MyTrue vx78 (Neg vx89) (srRatio vx78 vx77)",fontsize=16,color="magenta"];1126 -> 1148[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1295[label="primMulNat (Succ vx44100) (Succ vx44100)",fontsize=16,color="black",shape="box"];1295 -> 1329[label="",style="solid", color="black", weight=3]; 162.75/105.96 1296[label="primMulNat Zero Zero",fontsize=16,color="black",shape="box"];1296 -> 1330[label="",style="solid", color="black", weight=3]; 162.75/105.96 1297[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) (primEqInt (Pos (Succ vx990)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1297 -> 1331[label="",style="solid", color="black", weight=3]; 162.75/105.96 1298[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1298 -> 1332[label="",style="solid", color="black", weight=3]; 162.75/105.96 1299[label="vx4410",fontsize=16,color="green",shape="box"];1300[label="vx4410",fontsize=16,color="green",shape="box"];1301[label="vx4410",fontsize=16,color="green",shape="box"];3547[label="Zero",fontsize=16,color="green",shape="box"];3548[label="Zero",fontsize=16,color="green",shape="box"];3549[label="vx740",fontsize=16,color="green",shape="box"];3550[label="vx740",fontsize=16,color="green",shape="box"];3546[label="primDivNatS0 (Succ vx165) (Succ vx166) (primGEqNatS vx167 vx168)",fontsize=16,color="burlywood",shape="triangle"];4037[label="vx167/Succ vx1670",fontsize=10,color="white",style="solid",shape="box"];3546 -> 4037[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4037 -> 3591[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4038[label="vx167/Zero",fontsize=10,color="white",style="solid",shape="box"];3546 -> 4038[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4038 -> 3592[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1109[label="Zero",fontsize=16,color="green",shape="box"];1133[label="vx85000",fontsize=16,color="green",shape="box"];1134[label="vx740",fontsize=16,color="green",shape="box"];1135[label="Succ vx740",fontsize=16,color="green",shape="box"];1136[label="Succ vx740",fontsize=16,color="green",shape="box"];1137[label="Succ vx85000",fontsize=16,color="green",shape="box"];1138[label="vx72",fontsize=16,color="green",shape="box"];1139[label="Succ vx85000",fontsize=16,color="green",shape="box"];1140[label="vx73",fontsize=16,color="green",shape="box"];1141[label="Zero",fontsize=16,color="green",shape="box"];1142[label="Zero",fontsize=16,color="green",shape="box"];1143 -> 792[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1143[label="pr2F0G (srRatio vx73 vx72) vx73 (Pos vx87)",fontsize=16,color="magenta"];1143 -> 1149[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1143 -> 1150[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1143 -> 1151[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1144[label="srRatio (CnPc vx730 vx731) vx72",fontsize=16,color="burlywood",shape="box"];4039[label="vx72/CnPc vx720 vx721",fontsize=10,color="white",style="solid",shape="box"];1144 -> 4039[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4039 -> 1152[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1145[label="vx77",fontsize=16,color="green",shape="box"];1146[label="vx78",fontsize=16,color="green",shape="box"];1148 -> 1121[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1148[label="srRatio vx78 vx77",fontsize=16,color="magenta"];1148 -> 1153[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1148 -> 1154[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1147[label="pr2F3 MyTrue vx78 (Neg vx89) vx94",fontsize=16,color="black",shape="triangle"];1147 -> 1155[label="",style="solid", color="black", weight=3]; 162.75/105.96 1329 -> 76[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1329[label="primPlusNat (primMulNat vx44100 (Succ vx44100)) (Succ vx44100)",fontsize=16,color="magenta"];1329 -> 1345[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1329 -> 1346[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1330[label="Zero",fontsize=16,color="green",shape="box"];1331[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) (primEqInt (Pos (Succ vx990)) (Pos Zero))",fontsize=16,color="black",shape="box"];1331 -> 1347[label="",style="solid", color="black", weight=3]; 162.75/105.96 1332[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];1332 -> 1348[label="",style="solid", color="black", weight=3]; 162.75/105.96 3591[label="primDivNatS0 (Succ vx165) (Succ vx166) (primGEqNatS (Succ vx1670) vx168)",fontsize=16,color="burlywood",shape="box"];4040[label="vx168/Succ vx1680",fontsize=10,color="white",style="solid",shape="box"];3591 -> 4040[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4040 -> 3607[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4041[label="vx168/Zero",fontsize=10,color="white",style="solid",shape="box"];3591 -> 4041[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4041 -> 3608[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3592[label="primDivNatS0 (Succ vx165) (Succ vx166) (primGEqNatS Zero vx168)",fontsize=16,color="burlywood",shape="box"];4042[label="vx168/Succ vx1680",fontsize=10,color="white",style="solid",shape="box"];3592 -> 4042[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4042 -> 3609[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4043[label="vx168/Zero",fontsize=10,color="white",style="solid",shape="box"];3592 -> 4043[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4043 -> 3610[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1149[label="vx87",fontsize=16,color="green",shape="box"];1150[label="vx73",fontsize=16,color="green",shape="box"];1151 -> 1121[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1151[label="srRatio vx73 vx72",fontsize=16,color="magenta"];1152[label="srRatio (CnPc vx730 vx731) (CnPc vx720 vx721)",fontsize=16,color="black",shape="box"];1152 -> 1162[label="",style="solid", color="black", weight=3]; 162.75/105.96 1153[label="vx77",fontsize=16,color="green",shape="box"];1154[label="vx78",fontsize=16,color="green",shape="box"];1155[label="vx94",fontsize=16,color="green",shape="box"];1345[label="Succ vx44100",fontsize=16,color="green",shape="box"];1346 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1346[label="primMulNat vx44100 (Succ vx44100)",fontsize=16,color="magenta"];1346 -> 1355[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1346 -> 1356[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1347[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) MyFalse",fontsize=16,color="black",shape="box"];1347 -> 1357[label="",style="solid", color="black", weight=3]; 162.75/105.96 1348[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) MyTrue",fontsize=16,color="black",shape="box"];1348 -> 1358[label="",style="solid", color="black", weight=3]; 162.75/105.96 3607[label="primDivNatS0 (Succ vx165) (Succ vx166) (primGEqNatS (Succ vx1670) (Succ vx1680))",fontsize=16,color="black",shape="box"];3607 -> 3629[label="",style="solid", color="black", weight=3]; 162.75/105.96 3608[label="primDivNatS0 (Succ vx165) (Succ vx166) (primGEqNatS (Succ vx1670) Zero)",fontsize=16,color="black",shape="box"];3608 -> 3630[label="",style="solid", color="black", weight=3]; 162.75/105.96 3609[label="primDivNatS0 (Succ vx165) (Succ vx166) (primGEqNatS Zero (Succ vx1680))",fontsize=16,color="black",shape="box"];3609 -> 3631[label="",style="solid", color="black", weight=3]; 162.75/105.96 3610[label="primDivNatS0 (Succ vx165) (Succ vx166) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];3610 -> 3632[label="",style="solid", color="black", weight=3]; 162.75/105.96 1162[label="reduce (srMyInt vx730 vx720) (srMyInt vx731 vx721)",fontsize=16,color="black",shape="box"];1162 -> 1169[label="",style="solid", color="black", weight=3]; 162.75/105.96 1355[label="vx44100",fontsize=16,color="green",shape="box"];1356[label="Succ vx44100",fontsize=16,color="green",shape="box"];1277[label="primMulNat vx7310 vx7210",fontsize=16,color="burlywood",shape="triangle"];4044[label="vx7310/Succ vx73100",fontsize=10,color="white",style="solid",shape="box"];1277 -> 4044[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4044 -> 1302[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4045[label="vx7310/Zero",fontsize=10,color="white",style="solid",shape="box"];1277 -> 4045[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4045 -> 1303[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1357[label="reduce2Reduce0 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) otherwise",fontsize=16,color="black",shape="box"];1357 -> 1363[label="",style="solid", color="black", weight=3]; 162.75/105.96 1358 -> 46[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1358[label="error",fontsize=16,color="magenta"];3629 -> 3546[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3629[label="primDivNatS0 (Succ vx165) (Succ vx166) (primGEqNatS vx1670 vx1680)",fontsize=16,color="magenta"];3629 -> 3648[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3629 -> 3649[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3630[label="primDivNatS0 (Succ vx165) (Succ vx166) MyTrue",fontsize=16,color="black",shape="triangle"];3630 -> 3650[label="",style="solid", color="black", weight=3]; 162.75/105.96 3631[label="primDivNatS0 (Succ vx165) (Succ vx166) MyFalse",fontsize=16,color="black",shape="box"];3631 -> 3651[label="",style="solid", color="black", weight=3]; 162.75/105.96 3632 -> 3630[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3632[label="primDivNatS0 (Succ vx165) (Succ vx166) MyTrue",fontsize=16,color="magenta"];1169[label="reduce2 (srMyInt vx730 vx720) (srMyInt vx731 vx721)",fontsize=16,color="black",shape="box"];1169 -> 1175[label="",style="solid", color="black", weight=3]; 162.75/105.96 1302[label="primMulNat (Succ vx73100) vx7210",fontsize=16,color="burlywood",shape="box"];4046[label="vx7210/Succ vx72100",fontsize=10,color="white",style="solid",shape="box"];1302 -> 4046[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4046 -> 1341[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4047[label="vx7210/Zero",fontsize=10,color="white",style="solid",shape="box"];1302 -> 4047[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4047 -> 1342[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1303[label="primMulNat Zero vx7210",fontsize=16,color="burlywood",shape="box"];4048[label="vx7210/Succ vx72100",fontsize=10,color="white",style="solid",shape="box"];1303 -> 4048[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4048 -> 1343[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4049[label="vx7210/Zero",fontsize=10,color="white",style="solid",shape="box"];1303 -> 4049[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4049 -> 1344[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1363[label="reduce2Reduce0 (srMyInt vx730 vx720) (Pos vx98) (srMyInt vx730 vx720) (Pos vx97) MyTrue",fontsize=16,color="black",shape="box"];1363 -> 1368[label="",style="solid", color="black", weight=3]; 162.75/105.96 3648[label="vx1680",fontsize=16,color="green",shape="box"];3649[label="vx1670",fontsize=16,color="green",shape="box"];3650[label="Succ (primDivNatS (primMinusNatS (Succ vx165) (Succ vx166)) (Succ (Succ vx166)))",fontsize=16,color="green",shape="box"];3650 -> 3665[label="",style="dashed", color="green", weight=3]; 162.75/105.96 3651[label="Zero",fontsize=16,color="green",shape="box"];1175[label="reduce2Reduce1 (srMyInt vx730 vx720) (srMyInt vx731 vx721) (srMyInt vx730 vx720) (srMyInt vx731 vx721) (esEsMyInt (srMyInt vx731 vx721) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1175 -> 1181[label="",style="solid", color="black", weight=3]; 162.75/105.96 1341[label="primMulNat (Succ vx73100) (Succ vx72100)",fontsize=16,color="black",shape="box"];1341 -> 1351[label="",style="solid", color="black", weight=3]; 162.75/105.96 1342[label="primMulNat (Succ vx73100) Zero",fontsize=16,color="black",shape="box"];1342 -> 1352[label="",style="solid", color="black", weight=3]; 162.75/105.96 1343[label="primMulNat Zero (Succ vx72100)",fontsize=16,color="black",shape="box"];1343 -> 1353[label="",style="solid", color="black", weight=3]; 162.75/105.96 1344[label="primMulNat Zero Zero",fontsize=16,color="black",shape="box"];1344 -> 1354[label="",style="solid", color="black", weight=3]; 162.75/105.96 1368[label="CnPc (quotMyInt (srMyInt vx730 vx720) (reduce2D (srMyInt vx730 vx720) (Pos vx98))) (quotMyInt (Pos vx97) (reduce2D (srMyInt vx730 vx720) (Pos vx98)))",fontsize=16,color="green",shape="box"];1368 -> 1370[label="",style="dashed", color="green", weight=3]; 162.75/105.96 1368 -> 1371[label="",style="dashed", color="green", weight=3]; 162.75/105.96 3665 -> 2476[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3665[label="primDivNatS (primMinusNatS (Succ vx165) (Succ vx166)) (Succ (Succ vx166))",fontsize=16,color="magenta"];3665 -> 3673[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3665 -> 3674[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1181[label="reduce2Reduce1 (srMyInt vx730 vx720) (srMyInt vx731 vx721) (srMyInt vx730 vx720) (srMyInt vx731 vx721) (primEqInt (srMyInt vx731 vx721) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1181 -> 1187[label="",style="solid", color="black", weight=3]; 162.75/105.96 1351 -> 76[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1351[label="primPlusNat (primMulNat vx73100 (Succ vx72100)) (Succ vx72100)",fontsize=16,color="magenta"];1351 -> 1361[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1351 -> 1362[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1352[label="Zero",fontsize=16,color="green",shape="box"];1353[label="Zero",fontsize=16,color="green",shape="box"];1354[label="Zero",fontsize=16,color="green",shape="box"];1370[label="quotMyInt (srMyInt vx730 vx720) (reduce2D (srMyInt vx730 vx720) (Pos vx98))",fontsize=16,color="black",shape="box"];1370 -> 1373[label="",style="solid", color="black", weight=3]; 162.75/105.96 1371[label="quotMyInt (Pos vx97) (reduce2D (srMyInt vx730 vx720) (Pos vx98))",fontsize=16,color="black",shape="box"];1371 -> 1374[label="",style="solid", color="black", weight=3]; 162.75/105.96 3673[label="Succ vx166",fontsize=16,color="green",shape="box"];3674[label="primMinusNatS (Succ vx165) (Succ vx166)",fontsize=16,color="black",shape="box"];3674 -> 3682[label="",style="solid", color="black", weight=3]; 162.75/105.96 2476[label="primDivNatS vx123 (Succ vx12400)",fontsize=16,color="burlywood",shape="triangle"];4050[label="vx123/Succ vx1230",fontsize=10,color="white",style="solid",shape="box"];2476 -> 4050[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4050 -> 2488[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4051[label="vx123/Zero",fontsize=10,color="white",style="solid",shape="box"];2476 -> 4051[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4051 -> 2489[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1187[label="reduce2Reduce1 (srMyInt vx730 vx720) (primMulInt vx731 vx721) (srMyInt vx730 vx720) (primMulInt vx731 vx721) (primEqInt (primMulInt vx731 vx721) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4052[label="vx731/Pos vx7310",fontsize=10,color="white",style="solid",shape="box"];1187 -> 4052[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4052 -> 1192[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4053[label="vx731/Neg vx7310",fontsize=10,color="white",style="solid",shape="box"];1187 -> 4053[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4053 -> 1193[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1361[label="Succ vx72100",fontsize=16,color="green",shape="box"];1362 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1362[label="primMulNat vx73100 (Succ vx72100)",fontsize=16,color="magenta"];1362 -> 1366[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1362 -> 1367[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1373[label="primQuotInt (srMyInt vx730 vx720) (reduce2D (srMyInt vx730 vx720) (Pos vx98))",fontsize=16,color="black",shape="box"];1373 -> 1377[label="",style="solid", color="black", weight=3]; 162.75/105.96 1374 -> 3014[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1374[label="primQuotInt (Pos vx97) (reduce2D (srMyInt vx730 vx720) (Pos vx98))",fontsize=16,color="magenta"];1374 -> 3015[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3682[label="primMinusNatS vx165 vx166",fontsize=16,color="burlywood",shape="triangle"];4054[label="vx165/Succ vx1650",fontsize=10,color="white",style="solid",shape="box"];3682 -> 4054[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4054 -> 3691[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4055[label="vx165/Zero",fontsize=10,color="white",style="solid",shape="box"];3682 -> 4055[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4055 -> 3692[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 2488[label="primDivNatS (Succ vx1230) (Succ vx12400)",fontsize=16,color="black",shape="box"];2488 -> 2502[label="",style="solid", color="black", weight=3]; 162.75/105.96 2489[label="primDivNatS Zero (Succ vx12400)",fontsize=16,color="black",shape="box"];2489 -> 2503[label="",style="solid", color="black", weight=3]; 162.75/105.96 1192[label="reduce2Reduce1 (srMyInt vx730 vx720) (primMulInt (Pos vx7310) vx721) (srMyInt vx730 vx720) (primMulInt (Pos vx7310) vx721) (primEqInt (primMulInt (Pos vx7310) vx721) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4056[label="vx721/Pos vx7210",fontsize=10,color="white",style="solid",shape="box"];1192 -> 4056[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4056 -> 1198[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4057[label="vx721/Neg vx7210",fontsize=10,color="white",style="solid",shape="box"];1192 -> 4057[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4057 -> 1199[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1193[label="reduce2Reduce1 (srMyInt vx730 vx720) (primMulInt (Neg vx7310) vx721) (srMyInt vx730 vx720) (primMulInt (Neg vx7310) vx721) (primEqInt (primMulInt (Neg vx7310) vx721) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4058[label="vx721/Pos vx7210",fontsize=10,color="white",style="solid",shape="box"];1193 -> 4058[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4058 -> 1200[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4059[label="vx721/Neg vx7210",fontsize=10,color="white",style="solid",shape="box"];1193 -> 4059[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4059 -> 1201[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1366[label="vx73100",fontsize=16,color="green",shape="box"];1367[label="Succ vx72100",fontsize=16,color="green",shape="box"];1377[label="primQuotInt (primMulInt vx730 vx720) (reduce2D (primMulInt vx730 vx720) (Pos vx98))",fontsize=16,color="burlywood",shape="box"];4060[label="vx730/Pos vx7300",fontsize=10,color="white",style="solid",shape="box"];1377 -> 4060[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4060 -> 1381[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4061[label="vx730/Neg vx7300",fontsize=10,color="white",style="solid",shape="box"];1377 -> 4061[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4061 -> 1382[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3015[label="reduce2D (srMyInt vx730 vx720) (Pos vx98)",fontsize=16,color="black",shape="box"];3015 -> 3400[label="",style="solid", color="black", weight=3]; 162.75/105.96 3014[label="primQuotInt (Pos vx97) vx150",fontsize=16,color="burlywood",shape="triangle"];4062[label="vx150/Pos vx1500",fontsize=10,color="white",style="solid",shape="box"];3014 -> 4062[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4062 -> 3401[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4063[label="vx150/Neg vx1500",fontsize=10,color="white",style="solid",shape="box"];3014 -> 4063[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4063 -> 3402[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3691[label="primMinusNatS (Succ vx1650) vx166",fontsize=16,color="burlywood",shape="box"];4064[label="vx166/Succ vx1660",fontsize=10,color="white",style="solid",shape="box"];3691 -> 4064[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4064 -> 3702[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4065[label="vx166/Zero",fontsize=10,color="white",style="solid",shape="box"];3691 -> 4065[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4065 -> 3703[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3692[label="primMinusNatS Zero vx166",fontsize=16,color="burlywood",shape="box"];4066[label="vx166/Succ vx1660",fontsize=10,color="white",style="solid",shape="box"];3692 -> 4066[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4066 -> 3704[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4067[label="vx166/Zero",fontsize=10,color="white",style="solid",shape="box"];3692 -> 4067[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4067 -> 3705[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 2502[label="primDivNatS0 vx1230 vx12400 (primGEqNatS vx1230 vx12400)",fontsize=16,color="burlywood",shape="box"];4068[label="vx1230/Succ vx12300",fontsize=10,color="white",style="solid",shape="box"];2502 -> 4068[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4068 -> 2517[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4069[label="vx1230/Zero",fontsize=10,color="white",style="solid",shape="box"];2502 -> 4069[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4069 -> 2518[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 2503[label="Zero",fontsize=16,color="green",shape="box"];1198[label="reduce2Reduce1 (srMyInt vx730 vx720) (primMulInt (Pos vx7310) (Pos vx7210)) (srMyInt vx730 vx720) (primMulInt (Pos vx7310) (Pos vx7210)) (primEqInt (primMulInt (Pos vx7310) (Pos vx7210)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1198 -> 1207[label="",style="solid", color="black", weight=3]; 162.75/105.96 1199[label="reduce2Reduce1 (srMyInt vx730 vx720) (primMulInt (Pos vx7310) (Neg vx7210)) (srMyInt vx730 vx720) (primMulInt (Pos vx7310) (Neg vx7210)) (primEqInt (primMulInt (Pos vx7310) (Neg vx7210)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1199 -> 1208[label="",style="solid", color="black", weight=3]; 162.75/105.96 1200[label="reduce2Reduce1 (srMyInt vx730 vx720) (primMulInt (Neg vx7310) (Pos vx7210)) (srMyInt vx730 vx720) (primMulInt (Neg vx7310) (Pos vx7210)) (primEqInt (primMulInt (Neg vx7310) (Pos vx7210)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1200 -> 1209[label="",style="solid", color="black", weight=3]; 162.75/105.96 1201[label="reduce2Reduce1 (srMyInt vx730 vx720) (primMulInt (Neg vx7310) (Neg vx7210)) (srMyInt vx730 vx720) (primMulInt (Neg vx7310) (Neg vx7210)) (primEqInt (primMulInt (Neg vx7310) (Neg vx7210)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1201 -> 1210[label="",style="solid", color="black", weight=3]; 162.75/105.96 1381[label="primQuotInt (primMulInt (Pos vx7300) vx720) (reduce2D (primMulInt (Pos vx7300) vx720) (Pos vx98))",fontsize=16,color="burlywood",shape="box"];4070[label="vx720/Pos vx7200",fontsize=10,color="white",style="solid",shape="box"];1381 -> 4070[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4070 -> 1386[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4071[label="vx720/Neg vx7200",fontsize=10,color="white",style="solid",shape="box"];1381 -> 4071[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4071 -> 1387[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1382[label="primQuotInt (primMulInt (Neg vx7300) vx720) (reduce2D (primMulInt (Neg vx7300) vx720) (Pos vx98))",fontsize=16,color="burlywood",shape="box"];4072[label="vx720/Pos vx7200",fontsize=10,color="white",style="solid",shape="box"];1382 -> 4072[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4072 -> 1388[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4073[label="vx720/Neg vx7200",fontsize=10,color="white",style="solid",shape="box"];1382 -> 4073[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4073 -> 1389[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3400[label="gcd (srMyInt vx730 vx720) (Pos vx98)",fontsize=16,color="black",shape="box"];3400 -> 3408[label="",style="solid", color="black", weight=3]; 162.75/105.96 3401[label="primQuotInt (Pos vx97) (Pos vx1500)",fontsize=16,color="burlywood",shape="box"];4074[label="vx1500/Succ vx15000",fontsize=10,color="white",style="solid",shape="box"];3401 -> 4074[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4074 -> 3409[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4075[label="vx1500/Zero",fontsize=10,color="white",style="solid",shape="box"];3401 -> 4075[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4075 -> 3410[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3402[label="primQuotInt (Pos vx97) (Neg vx1500)",fontsize=16,color="burlywood",shape="box"];4076[label="vx1500/Succ vx15000",fontsize=10,color="white",style="solid",shape="box"];3402 -> 4076[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4076 -> 3411[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4077[label="vx1500/Zero",fontsize=10,color="white",style="solid",shape="box"];3402 -> 4077[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4077 -> 3412[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3702[label="primMinusNatS (Succ vx1650) (Succ vx1660)",fontsize=16,color="black",shape="box"];3702 -> 3716[label="",style="solid", color="black", weight=3]; 162.75/105.96 3703[label="primMinusNatS (Succ vx1650) Zero",fontsize=16,color="black",shape="box"];3703 -> 3717[label="",style="solid", color="black", weight=3]; 162.75/105.96 3704[label="primMinusNatS Zero (Succ vx1660)",fontsize=16,color="black",shape="box"];3704 -> 3718[label="",style="solid", color="black", weight=3]; 162.75/105.96 3705[label="primMinusNatS Zero Zero",fontsize=16,color="black",shape="box"];3705 -> 3719[label="",style="solid", color="black", weight=3]; 162.75/105.96 2517[label="primDivNatS0 (Succ vx12300) vx12400 (primGEqNatS (Succ vx12300) vx12400)",fontsize=16,color="burlywood",shape="box"];4078[label="vx12400/Succ vx124000",fontsize=10,color="white",style="solid",shape="box"];2517 -> 4078[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4078 -> 2532[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4079[label="vx12400/Zero",fontsize=10,color="white",style="solid",shape="box"];2517 -> 4079[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4079 -> 2533[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 2518[label="primDivNatS0 Zero vx12400 (primGEqNatS Zero vx12400)",fontsize=16,color="burlywood",shape="box"];4080[label="vx12400/Succ vx124000",fontsize=10,color="white",style="solid",shape="box"];2518 -> 4080[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4080 -> 2534[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4081[label="vx12400/Zero",fontsize=10,color="white",style="solid",shape="box"];2518 -> 4081[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4081 -> 2535[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1207 -> 1261[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1207[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos (primMulNat vx7310 vx7210)) (srMyInt vx730 vx720) (Pos (primMulNat vx7310 vx7210)) (primEqInt (Pos (primMulNat vx7310 vx7210)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];1207 -> 1277[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1207 -> 1278[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1207 -> 1279[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1208 -> 1310[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1208[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg (primMulNat vx7310 vx7210)) (srMyInt vx730 vx720) (Neg (primMulNat vx7310 vx7210)) (primEqInt (Neg (primMulNat vx7310 vx7210)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];1208 -> 1311[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1208 -> 1312[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1208 -> 1313[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1209 -> 1310[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1209[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg (primMulNat vx7310 vx7210)) (srMyInt vx730 vx720) (Neg (primMulNat vx7310 vx7210)) (primEqInt (Neg (primMulNat vx7310 vx7210)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];1209 -> 1314[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1209 -> 1315[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1209 -> 1316[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1210 -> 1261[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1210[label="reduce2Reduce1 (srMyInt vx730 vx720) (Pos (primMulNat vx7310 vx7210)) (srMyInt vx730 vx720) (Pos (primMulNat vx7310 vx7210)) (primEqInt (Pos (primMulNat vx7310 vx7210)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="magenta"];1210 -> 1280[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1210 -> 1281[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1210 -> 1282[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1386[label="primQuotInt (primMulInt (Pos vx7300) (Pos vx7200)) (reduce2D (primMulInt (Pos vx7300) (Pos vx7200)) (Pos vx98))",fontsize=16,color="black",shape="box"];1386 -> 1394[label="",style="solid", color="black", weight=3]; 162.75/105.96 1387[label="primQuotInt (primMulInt (Pos vx7300) (Neg vx7200)) (reduce2D (primMulInt (Pos vx7300) (Neg vx7200)) (Pos vx98))",fontsize=16,color="black",shape="box"];1387 -> 1395[label="",style="solid", color="black", weight=3]; 162.75/105.96 1388[label="primQuotInt (primMulInt (Neg vx7300) (Pos vx7200)) (reduce2D (primMulInt (Neg vx7300) (Pos vx7200)) (Pos vx98))",fontsize=16,color="black",shape="box"];1388 -> 1396[label="",style="solid", color="black", weight=3]; 162.75/105.96 1389[label="primQuotInt (primMulInt (Neg vx7300) (Neg vx7200)) (reduce2D (primMulInt (Neg vx7300) (Neg vx7200)) (Pos vx98))",fontsize=16,color="black",shape="box"];1389 -> 1397[label="",style="solid", color="black", weight=3]; 162.75/105.96 3408[label="gcd3 (srMyInt vx730 vx720) (Pos vx98)",fontsize=16,color="black",shape="box"];3408 -> 3425[label="",style="solid", color="black", weight=3]; 162.75/105.96 3409[label="primQuotInt (Pos vx97) (Pos (Succ vx15000))",fontsize=16,color="black",shape="box"];3409 -> 3426[label="",style="solid", color="black", weight=3]; 162.75/105.96 3410[label="primQuotInt (Pos vx97) (Pos Zero)",fontsize=16,color="black",shape="box"];3410 -> 3427[label="",style="solid", color="black", weight=3]; 162.75/105.96 3411[label="primQuotInt (Pos vx97) (Neg (Succ vx15000))",fontsize=16,color="black",shape="box"];3411 -> 3428[label="",style="solid", color="black", weight=3]; 162.75/105.96 3412[label="primQuotInt (Pos vx97) (Neg Zero)",fontsize=16,color="black",shape="box"];3412 -> 3429[label="",style="solid", color="black", weight=3]; 162.75/105.96 3716 -> 3682[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3716[label="primMinusNatS vx1650 vx1660",fontsize=16,color="magenta"];3716 -> 3732[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3716 -> 3733[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3717[label="Succ vx1650",fontsize=16,color="green",shape="box"];3718[label="Zero",fontsize=16,color="green",shape="box"];3719[label="Zero",fontsize=16,color="green",shape="box"];2532[label="primDivNatS0 (Succ vx12300) (Succ vx124000) (primGEqNatS (Succ vx12300) (Succ vx124000))",fontsize=16,color="black",shape="box"];2532 -> 2548[label="",style="solid", color="black", weight=3]; 162.75/105.96 2533[label="primDivNatS0 (Succ vx12300) Zero (primGEqNatS (Succ vx12300) Zero)",fontsize=16,color="black",shape="box"];2533 -> 2549[label="",style="solid", color="black", weight=3]; 162.75/105.96 2534[label="primDivNatS0 Zero (Succ vx124000) (primGEqNatS Zero (Succ vx124000))",fontsize=16,color="black",shape="box"];2534 -> 2550[label="",style="solid", color="black", weight=3]; 162.75/105.96 2535[label="primDivNatS0 Zero Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];2535 -> 2551[label="",style="solid", color="black", weight=3]; 162.75/105.96 1278 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1278[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1279 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1279[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1311 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1311[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1311 -> 1333[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1312 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1312[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1312 -> 1334[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1313 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1313[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1313 -> 1335[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1310[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) (primEqInt (Neg vx102) (fromIntMyInt (Pos Zero)))",fontsize=16,color="burlywood",shape="triangle"];4082[label="vx102/Succ vx1020",fontsize=10,color="white",style="solid",shape="box"];1310 -> 4082[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4082 -> 1336[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4083[label="vx102/Zero",fontsize=10,color="white",style="solid",shape="box"];1310 -> 4083[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4083 -> 1337[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1314 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1314[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1314 -> 1338[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1315 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1315[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1315 -> 1339[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1316 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1316[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1316 -> 1340[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1280 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1280[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1280 -> 1304[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1280 -> 1305[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1281 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1281[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1281 -> 1306[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1281 -> 1307[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1282 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1282[label="primMulNat vx7310 vx7210",fontsize=16,color="magenta"];1282 -> 1308[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1282 -> 1309[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1394 -> 3014[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1394[label="primQuotInt (Pos (primMulNat vx7300 vx7200)) (reduce2D (Pos (primMulNat vx7300 vx7200)) (Pos vx98))",fontsize=16,color="magenta"];1394 -> 3019[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1394 -> 3020[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1395 -> 1991[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1395[label="primQuotInt (Neg (primMulNat vx7300 vx7200)) (reduce2D (Neg (primMulNat vx7300 vx7200)) (Pos vx98))",fontsize=16,color="magenta"];1395 -> 1992[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1395 -> 1993[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1396 -> 1991[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1396[label="primQuotInt (Neg (primMulNat vx7300 vx7200)) (reduce2D (Neg (primMulNat vx7300 vx7200)) (Pos vx98))",fontsize=16,color="magenta"];1396 -> 1994[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1396 -> 1995[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1397 -> 3014[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1397[label="primQuotInt (Pos (primMulNat vx7300 vx7200)) (reduce2D (Pos (primMulNat vx7300 vx7200)) (Pos vx98))",fontsize=16,color="magenta"];1397 -> 3021[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1397 -> 3022[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3425[label="gcd2 (esEsMyInt (srMyInt vx730 vx720) (fromIntMyInt (Pos Zero))) (srMyInt vx730 vx720) (Pos vx98)",fontsize=16,color="black",shape="box"];3425 -> 3474[label="",style="solid", color="black", weight=3]; 162.75/105.96 3426[label="Pos (primDivNatS vx97 (Succ vx15000))",fontsize=16,color="green",shape="box"];3426 -> 3475[label="",style="dashed", color="green", weight=3]; 162.75/105.96 3427 -> 2462[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3427[label="error",fontsize=16,color="magenta"];3428[label="Neg (primDivNatS vx97 (Succ vx15000))",fontsize=16,color="green",shape="box"];3428 -> 3476[label="",style="dashed", color="green", weight=3]; 162.75/105.96 3429 -> 2462[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3429[label="error",fontsize=16,color="magenta"];3732[label="vx1660",fontsize=16,color="green",shape="box"];3733[label="vx1650",fontsize=16,color="green",shape="box"];2548 -> 3546[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2548[label="primDivNatS0 (Succ vx12300) (Succ vx124000) (primGEqNatS vx12300 vx124000)",fontsize=16,color="magenta"];2548 -> 3551[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2548 -> 3552[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2548 -> 3553[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2548 -> 3554[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2549[label="primDivNatS0 (Succ vx12300) Zero MyTrue",fontsize=16,color="black",shape="box"];2549 -> 2561[label="",style="solid", color="black", weight=3]; 162.75/105.96 2550[label="primDivNatS0 Zero (Succ vx124000) MyFalse",fontsize=16,color="black",shape="box"];2550 -> 2562[label="",style="solid", color="black", weight=3]; 162.75/105.96 2551[label="primDivNatS0 Zero Zero MyTrue",fontsize=16,color="black",shape="box"];2551 -> 2563[label="",style="solid", color="black", weight=3]; 162.75/105.96 1333[label="vx7210",fontsize=16,color="green",shape="box"];1334[label="vx7210",fontsize=16,color="green",shape="box"];1335[label="vx7210",fontsize=16,color="green",shape="box"];1336[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) (primEqInt (Neg (Succ vx1020)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1336 -> 1349[label="",style="solid", color="black", weight=3]; 162.75/105.96 1337[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1337 -> 1350[label="",style="solid", color="black", weight=3]; 162.75/105.96 1338[label="vx7310",fontsize=16,color="green",shape="box"];1339[label="vx7310",fontsize=16,color="green",shape="box"];1340[label="vx7310",fontsize=16,color="green",shape="box"];1304[label="vx7310",fontsize=16,color="green",shape="box"];1305[label="vx7210",fontsize=16,color="green",shape="box"];1306[label="vx7310",fontsize=16,color="green",shape="box"];1307[label="vx7210",fontsize=16,color="green",shape="box"];1308[label="vx7310",fontsize=16,color="green",shape="box"];1309[label="vx7210",fontsize=16,color="green",shape="box"];3019 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3019[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3019 -> 3403[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3019 -> 3404[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3020 -> 3405[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3020[label="reduce2D (Pos (primMulNat vx7300 vx7200)) (Pos vx98)",fontsize=16,color="magenta"];3020 -> 3406[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1992 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1992[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];1992 -> 2422[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1992 -> 2423[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1993 -> 2424[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1993[label="reduce2D (Neg (primMulNat vx7300 vx7200)) (Pos vx98)",fontsize=16,color="magenta"];1993 -> 2425[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1991[label="primQuotInt (Neg vx123) vx124",fontsize=16,color="burlywood",shape="triangle"];4084[label="vx124/Pos vx1240",fontsize=10,color="white",style="solid",shape="box"];1991 -> 4084[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4084 -> 2427[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4085[label="vx124/Neg vx1240",fontsize=10,color="white",style="solid",shape="box"];1991 -> 4085[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4085 -> 2428[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1994 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1994[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];1994 -> 2429[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1994 -> 2430[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1995 -> 2424[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1995[label="reduce2D (Neg (primMulNat vx7300 vx7200)) (Pos vx98)",fontsize=16,color="magenta"];1995 -> 2426[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3021 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3021[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3021 -> 3413[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3021 -> 3414[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3022 -> 3405[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3022[label="reduce2D (Pos (primMulNat vx7300 vx7200)) (Pos vx98)",fontsize=16,color="magenta"];3022 -> 3407[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3474[label="gcd2 (primEqInt (srMyInt vx730 vx720) (fromIntMyInt (Pos Zero))) (srMyInt vx730 vx720) (Pos vx98)",fontsize=16,color="black",shape="box"];3474 -> 3494[label="",style="solid", color="black", weight=3]; 162.75/105.96 3475 -> 2476[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3475[label="primDivNatS vx97 (Succ vx15000)",fontsize=16,color="magenta"];3475 -> 3495[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3475 -> 3496[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2462[label="error",fontsize=16,color="black",shape="triangle"];2462 -> 2477[label="",style="solid", color="black", weight=3]; 162.75/105.96 3476 -> 2476[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3476[label="primDivNatS vx97 (Succ vx15000)",fontsize=16,color="magenta"];3476 -> 3497[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3476 -> 3498[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3551[label="vx124000",fontsize=16,color="green",shape="box"];3552[label="vx124000",fontsize=16,color="green",shape="box"];3553[label="vx12300",fontsize=16,color="green",shape="box"];3554[label="vx12300",fontsize=16,color="green",shape="box"];2561[label="Succ (primDivNatS (primMinusNatS (Succ vx12300) Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];2561 -> 2589[label="",style="dashed", color="green", weight=3]; 162.75/105.96 2562[label="Zero",fontsize=16,color="green",shape="box"];2563[label="Succ (primDivNatS (primMinusNatS Zero Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];2563 -> 2590[label="",style="dashed", color="green", weight=3]; 162.75/105.96 1349[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) (primEqInt (Neg (Succ vx1020)) (Pos Zero))",fontsize=16,color="black",shape="box"];1349 -> 1359[label="",style="solid", color="black", weight=3]; 162.75/105.96 1350[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];1350 -> 1360[label="",style="solid", color="black", weight=3]; 162.75/105.96 3403[label="vx7300",fontsize=16,color="green",shape="box"];3404[label="vx7200",fontsize=16,color="green",shape="box"];3406 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3406[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3406 -> 3415[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3406 -> 3416[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3405[label="reduce2D (Pos vx151) (Pos vx98)",fontsize=16,color="black",shape="triangle"];3405 -> 3417[label="",style="solid", color="black", weight=3]; 162.75/105.96 2422[label="vx7300",fontsize=16,color="green",shape="box"];2423[label="vx7200",fontsize=16,color="green",shape="box"];2425 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2425[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2425 -> 2431[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2425 -> 2432[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2424[label="reduce2D (Neg vx125) (Pos vx98)",fontsize=16,color="black",shape="triangle"];2424 -> 2433[label="",style="solid", color="black", weight=3]; 162.75/105.96 2427[label="primQuotInt (Neg vx123) (Pos vx1240)",fontsize=16,color="burlywood",shape="box"];4086[label="vx1240/Succ vx12400",fontsize=10,color="white",style="solid",shape="box"];2427 -> 4086[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4086 -> 2442[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4087[label="vx1240/Zero",fontsize=10,color="white",style="solid",shape="box"];2427 -> 4087[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4087 -> 2443[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 2428[label="primQuotInt (Neg vx123) (Neg vx1240)",fontsize=16,color="burlywood",shape="box"];4088[label="vx1240/Succ vx12400",fontsize=10,color="white",style="solid",shape="box"];2428 -> 4088[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4088 -> 2444[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4089[label="vx1240/Zero",fontsize=10,color="white",style="solid",shape="box"];2428 -> 4089[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4089 -> 2445[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 2429[label="vx7300",fontsize=16,color="green",shape="box"];2430[label="vx7200",fontsize=16,color="green",shape="box"];2426 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2426[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2426 -> 2434[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2426 -> 2435[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3413[label="vx7300",fontsize=16,color="green",shape="box"];3414[label="vx7200",fontsize=16,color="green",shape="box"];3407 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3407[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3407 -> 3418[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3407 -> 3419[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3494[label="gcd2 (primEqInt (primMulInt vx730 vx720) (fromIntMyInt (Pos Zero))) (primMulInt vx730 vx720) (Pos vx98)",fontsize=16,color="burlywood",shape="box"];4090[label="vx730/Pos vx7300",fontsize=10,color="white",style="solid",shape="box"];3494 -> 4090[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4090 -> 3510[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4091[label="vx730/Neg vx7300",fontsize=10,color="white",style="solid",shape="box"];3494 -> 4091[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4091 -> 3511[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3495[label="vx15000",fontsize=16,color="green",shape="box"];3496[label="vx97",fontsize=16,color="green",shape="box"];2477[label="stop MyTrue",fontsize=16,color="black",shape="box"];2477 -> 2490[label="",style="solid", color="black", weight=3]; 162.75/105.96 3497[label="vx15000",fontsize=16,color="green",shape="box"];3498[label="vx97",fontsize=16,color="green",shape="box"];2589 -> 2476[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2589[label="primDivNatS (primMinusNatS (Succ vx12300) Zero) (Succ Zero)",fontsize=16,color="magenta"];2589 -> 2610[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2589 -> 2611[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2590 -> 2476[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2590[label="primDivNatS (primMinusNatS Zero Zero) (Succ Zero)",fontsize=16,color="magenta"];2590 -> 2612[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2590 -> 2613[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1359[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) MyFalse",fontsize=16,color="black",shape="box"];1359 -> 1364[label="",style="solid", color="black", weight=3]; 162.75/105.96 1360[label="reduce2Reduce1 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) MyTrue",fontsize=16,color="black",shape="box"];1360 -> 1365[label="",style="solid", color="black", weight=3]; 162.75/105.96 3415[label="vx7300",fontsize=16,color="green",shape="box"];3416[label="vx7200",fontsize=16,color="green",shape="box"];3417[label="gcd (Pos vx151) (Pos vx98)",fontsize=16,color="black",shape="box"];3417 -> 3430[label="",style="solid", color="black", weight=3]; 162.75/105.96 2431[label="vx7300",fontsize=16,color="green",shape="box"];2432[label="vx7200",fontsize=16,color="green",shape="box"];2433[label="gcd (Neg vx125) (Pos vx98)",fontsize=16,color="black",shape="box"];2433 -> 2446[label="",style="solid", color="black", weight=3]; 162.75/105.96 2442[label="primQuotInt (Neg vx123) (Pos (Succ vx12400))",fontsize=16,color="black",shape="box"];2442 -> 2461[label="",style="solid", color="black", weight=3]; 162.75/105.96 2443[label="primQuotInt (Neg vx123) (Pos Zero)",fontsize=16,color="black",shape="box"];2443 -> 2462[label="",style="solid", color="black", weight=3]; 162.75/105.96 2444[label="primQuotInt (Neg vx123) (Neg (Succ vx12400))",fontsize=16,color="black",shape="box"];2444 -> 2463[label="",style="solid", color="black", weight=3]; 162.75/105.96 2445[label="primQuotInt (Neg vx123) (Neg Zero)",fontsize=16,color="black",shape="box"];2445 -> 2464[label="",style="solid", color="black", weight=3]; 162.75/105.96 2434[label="vx7300",fontsize=16,color="green",shape="box"];2435[label="vx7200",fontsize=16,color="green",shape="box"];3418[label="vx7300",fontsize=16,color="green",shape="box"];3419[label="vx7200",fontsize=16,color="green",shape="box"];3510[label="gcd2 (primEqInt (primMulInt (Pos vx7300) vx720) (fromIntMyInt (Pos Zero))) (primMulInt (Pos vx7300) vx720) (Pos vx98)",fontsize=16,color="burlywood",shape="box"];4092[label="vx720/Pos vx7200",fontsize=10,color="white",style="solid",shape="box"];3510 -> 4092[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4092 -> 3520[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4093[label="vx720/Neg vx7200",fontsize=10,color="white",style="solid",shape="box"];3510 -> 4093[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4093 -> 3521[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3511[label="gcd2 (primEqInt (primMulInt (Neg vx7300) vx720) (fromIntMyInt (Pos Zero))) (primMulInt (Neg vx7300) vx720) (Pos vx98)",fontsize=16,color="burlywood",shape="box"];4094[label="vx720/Pos vx7200",fontsize=10,color="white",style="solid",shape="box"];3511 -> 4094[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4094 -> 3522[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4095[label="vx720/Neg vx7200",fontsize=10,color="white",style="solid",shape="box"];3511 -> 4095[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4095 -> 3523[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 2490[label="error []",fontsize=16,color="red",shape="box"];2610[label="Zero",fontsize=16,color="green",shape="box"];2611[label="primMinusNatS (Succ vx12300) Zero",fontsize=16,color="black",shape="triangle"];2611 -> 2631[label="",style="solid", color="black", weight=3]; 162.75/105.96 2612[label="Zero",fontsize=16,color="green",shape="box"];2613[label="primMinusNatS Zero Zero",fontsize=16,color="black",shape="triangle"];2613 -> 2632[label="",style="solid", color="black", weight=3]; 162.75/105.96 1364[label="reduce2Reduce0 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) otherwise",fontsize=16,color="black",shape="box"];1364 -> 1369[label="",style="solid", color="black", weight=3]; 162.75/105.96 1365 -> 46[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1365[label="error",fontsize=16,color="magenta"];3430[label="gcd3 (Pos vx151) (Pos vx98)",fontsize=16,color="black",shape="box"];3430 -> 3477[label="",style="solid", color="black", weight=3]; 162.75/105.96 2446[label="gcd3 (Neg vx125) (Pos vx98)",fontsize=16,color="black",shape="box"];2446 -> 2465[label="",style="solid", color="black", weight=3]; 162.75/105.96 2461[label="Neg (primDivNatS vx123 (Succ vx12400))",fontsize=16,color="green",shape="box"];2461 -> 2476[label="",style="dashed", color="green", weight=3]; 162.75/105.96 2463[label="Pos (primDivNatS vx123 (Succ vx12400))",fontsize=16,color="green",shape="box"];2463 -> 2478[label="",style="dashed", color="green", weight=3]; 162.75/105.96 2464 -> 2462[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2464[label="error",fontsize=16,color="magenta"];3520[label="gcd2 (primEqInt (primMulInt (Pos vx7300) (Pos vx7200)) (fromIntMyInt (Pos Zero))) (primMulInt (Pos vx7300) (Pos vx7200)) (Pos vx98)",fontsize=16,color="black",shape="box"];3520 -> 3534[label="",style="solid", color="black", weight=3]; 162.75/105.96 3521[label="gcd2 (primEqInt (primMulInt (Pos vx7300) (Neg vx7200)) (fromIntMyInt (Pos Zero))) (primMulInt (Pos vx7300) (Neg vx7200)) (Pos vx98)",fontsize=16,color="black",shape="box"];3521 -> 3535[label="",style="solid", color="black", weight=3]; 162.75/105.96 3522[label="gcd2 (primEqInt (primMulInt (Neg vx7300) (Pos vx7200)) (fromIntMyInt (Pos Zero))) (primMulInt (Neg vx7300) (Pos vx7200)) (Pos vx98)",fontsize=16,color="black",shape="box"];3522 -> 3536[label="",style="solid", color="black", weight=3]; 162.75/105.96 3523[label="gcd2 (primEqInt (primMulInt (Neg vx7300) (Neg vx7200)) (fromIntMyInt (Pos Zero))) (primMulInt (Neg vx7300) (Neg vx7200)) (Pos vx98)",fontsize=16,color="black",shape="box"];3523 -> 3537[label="",style="solid", color="black", weight=3]; 162.75/105.96 2631[label="Succ vx12300",fontsize=16,color="green",shape="box"];2632[label="Zero",fontsize=16,color="green",shape="box"];1369[label="reduce2Reduce0 (srMyInt vx730 vx720) (Neg vx101) (srMyInt vx730 vx720) (Neg vx100) MyTrue",fontsize=16,color="black",shape="box"];1369 -> 1372[label="",style="solid", color="black", weight=3]; 162.75/105.96 3477[label="gcd2 (esEsMyInt (Pos vx151) (fromIntMyInt (Pos Zero))) (Pos vx151) (Pos vx98)",fontsize=16,color="black",shape="box"];3477 -> 3499[label="",style="solid", color="black", weight=3]; 162.75/105.96 2465[label="gcd2 (esEsMyInt (Neg vx125) (fromIntMyInt (Pos Zero))) (Neg vx125) (Pos vx98)",fontsize=16,color="black",shape="box"];2465 -> 2479[label="",style="solid", color="black", weight=3]; 162.75/105.96 2478 -> 2476[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2478[label="primDivNatS vx123 (Succ vx12400)",fontsize=16,color="magenta"];2478 -> 2491[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3534 -> 3499[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3534[label="gcd2 (primEqInt (Pos (primMulNat vx7300 vx7200)) (fromIntMyInt (Pos Zero))) (Pos (primMulNat vx7300 vx7200)) (Pos vx98)",fontsize=16,color="magenta"];3534 -> 3593[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3535 -> 2479[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3535[label="gcd2 (primEqInt (Neg (primMulNat vx7300 vx7200)) (fromIntMyInt (Pos Zero))) (Neg (primMulNat vx7300 vx7200)) (Pos vx98)",fontsize=16,color="magenta"];3535 -> 3594[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3536 -> 2479[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3536[label="gcd2 (primEqInt (Neg (primMulNat vx7300 vx7200)) (fromIntMyInt (Pos Zero))) (Neg (primMulNat vx7300 vx7200)) (Pos vx98)",fontsize=16,color="magenta"];3536 -> 3595[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3537 -> 3499[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3537[label="gcd2 (primEqInt (Pos (primMulNat vx7300 vx7200)) (fromIntMyInt (Pos Zero))) (Pos (primMulNat vx7300 vx7200)) (Pos vx98)",fontsize=16,color="magenta"];3537 -> 3596[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1372[label="CnPc (quotMyInt (srMyInt vx730 vx720) (reduce2D (srMyInt vx730 vx720) (Neg vx101))) (quotMyInt (Neg vx100) (reduce2D (srMyInt vx730 vx720) (Neg vx101)))",fontsize=16,color="green",shape="box"];1372 -> 1375[label="",style="dashed", color="green", weight=3]; 162.75/105.96 1372 -> 1376[label="",style="dashed", color="green", weight=3]; 162.75/105.96 3499[label="gcd2 (primEqInt (Pos vx151) (fromIntMyInt (Pos Zero))) (Pos vx151) (Pos vx98)",fontsize=16,color="burlywood",shape="triangle"];4096[label="vx151/Succ vx1510",fontsize=10,color="white",style="solid",shape="box"];3499 -> 4096[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4096 -> 3512[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4097[label="vx151/Zero",fontsize=10,color="white",style="solid",shape="box"];3499 -> 4097[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4097 -> 3513[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 2479[label="gcd2 (primEqInt (Neg vx125) (fromIntMyInt (Pos Zero))) (Neg vx125) (Pos vx98)",fontsize=16,color="burlywood",shape="triangle"];4098[label="vx125/Succ vx1250",fontsize=10,color="white",style="solid",shape="box"];2479 -> 4098[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4098 -> 2492[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4099[label="vx125/Zero",fontsize=10,color="white",style="solid",shape="box"];2479 -> 4099[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4099 -> 2493[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 2491[label="vx12400",fontsize=16,color="green",shape="box"];3593 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3593[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3593 -> 3611[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3593 -> 3612[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3594 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3594[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3594 -> 3613[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3594 -> 3614[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3595 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3595[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3595 -> 3615[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3595 -> 3616[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3596 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3596[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3596 -> 3617[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3596 -> 3618[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1375[label="quotMyInt (srMyInt vx730 vx720) (reduce2D (srMyInt vx730 vx720) (Neg vx101))",fontsize=16,color="black",shape="box"];1375 -> 1379[label="",style="solid", color="black", weight=3]; 162.75/105.96 1376[label="quotMyInt (Neg vx100) (reduce2D (srMyInt vx730 vx720) (Neg vx101))",fontsize=16,color="black",shape="box"];1376 -> 1380[label="",style="solid", color="black", weight=3]; 162.75/105.96 3512[label="gcd2 (primEqInt (Pos (Succ vx1510)) (fromIntMyInt (Pos Zero))) (Pos (Succ vx1510)) (Pos vx98)",fontsize=16,color="black",shape="box"];3512 -> 3524[label="",style="solid", color="black", weight=3]; 162.75/105.96 3513[label="gcd2 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) (Pos Zero) (Pos vx98)",fontsize=16,color="black",shape="box"];3513 -> 3525[label="",style="solid", color="black", weight=3]; 162.75/105.96 2492[label="gcd2 (primEqInt (Neg (Succ vx1250)) (fromIntMyInt (Pos Zero))) (Neg (Succ vx1250)) (Pos vx98)",fontsize=16,color="black",shape="box"];2492 -> 2504[label="",style="solid", color="black", weight=3]; 162.75/105.96 2493[label="gcd2 (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero))) (Neg Zero) (Pos vx98)",fontsize=16,color="black",shape="box"];2493 -> 2505[label="",style="solid", color="black", weight=3]; 162.75/105.96 3611[label="vx7300",fontsize=16,color="green",shape="box"];3612[label="vx7200",fontsize=16,color="green",shape="box"];3613[label="vx7300",fontsize=16,color="green",shape="box"];3614[label="vx7200",fontsize=16,color="green",shape="box"];3615[label="vx7300",fontsize=16,color="green",shape="box"];3616[label="vx7200",fontsize=16,color="green",shape="box"];3617[label="vx7300",fontsize=16,color="green",shape="box"];3618[label="vx7200",fontsize=16,color="green",shape="box"];1379[label="primQuotInt (srMyInt vx730 vx720) (reduce2D (srMyInt vx730 vx720) (Neg vx101))",fontsize=16,color="black",shape="box"];1379 -> 1384[label="",style="solid", color="black", weight=3]; 162.75/105.96 1380 -> 1991[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1380[label="primQuotInt (Neg vx100) (reduce2D (srMyInt vx730 vx720) (Neg vx101))",fontsize=16,color="magenta"];1380 -> 2010[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1380 -> 2011[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3524[label="gcd2 (primEqInt (Pos (Succ vx1510)) (Pos Zero)) (Pos (Succ vx1510)) (Pos vx98)",fontsize=16,color="black",shape="box"];3524 -> 3538[label="",style="solid", color="black", weight=3]; 162.75/105.96 3525[label="gcd2 (primEqInt (Pos Zero) (Pos Zero)) (Pos Zero) (Pos vx98)",fontsize=16,color="black",shape="box"];3525 -> 3539[label="",style="solid", color="black", weight=3]; 162.75/105.96 2504[label="gcd2 (primEqInt (Neg (Succ vx1250)) (Pos Zero)) (Neg (Succ vx1250)) (Pos vx98)",fontsize=16,color="black",shape="box"];2504 -> 2519[label="",style="solid", color="black", weight=3]; 162.75/105.96 2505[label="gcd2 (primEqInt (Neg Zero) (Pos Zero)) (Neg Zero) (Pos vx98)",fontsize=16,color="black",shape="box"];2505 -> 2520[label="",style="solid", color="black", weight=3]; 162.75/105.96 1384[label="primQuotInt (primMulInt vx730 vx720) (reduce2D (primMulInt vx730 vx720) (Neg vx101))",fontsize=16,color="burlywood",shape="box"];4100[label="vx730/Pos vx7300",fontsize=10,color="white",style="solid",shape="box"];1384 -> 4100[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4100 -> 1391[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4101[label="vx730/Neg vx7300",fontsize=10,color="white",style="solid",shape="box"];1384 -> 4101[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4101 -> 1392[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 2010[label="vx100",fontsize=16,color="green",shape="box"];2011[label="reduce2D (srMyInt vx730 vx720) (Neg vx101)",fontsize=16,color="black",shape="box"];2011 -> 2436[label="",style="solid", color="black", weight=3]; 162.75/105.96 3538[label="gcd2 MyFalse (Pos (Succ vx1510)) (Pos vx98)",fontsize=16,color="black",shape="box"];3538 -> 3597[label="",style="solid", color="black", weight=3]; 162.75/105.96 3539[label="gcd2 MyTrue (Pos Zero) (Pos vx98)",fontsize=16,color="black",shape="box"];3539 -> 3598[label="",style="solid", color="black", weight=3]; 162.75/105.96 2519[label="gcd2 MyFalse (Neg (Succ vx1250)) (Pos vx98)",fontsize=16,color="black",shape="box"];2519 -> 2536[label="",style="solid", color="black", weight=3]; 162.75/105.96 2520[label="gcd2 MyTrue (Neg Zero) (Pos vx98)",fontsize=16,color="black",shape="box"];2520 -> 2537[label="",style="solid", color="black", weight=3]; 162.75/105.96 1391[label="primQuotInt (primMulInt (Pos vx7300) vx720) (reduce2D (primMulInt (Pos vx7300) vx720) (Neg vx101))",fontsize=16,color="burlywood",shape="box"];4102[label="vx720/Pos vx7200",fontsize=10,color="white",style="solid",shape="box"];1391 -> 4102[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4102 -> 1399[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4103[label="vx720/Neg vx7200",fontsize=10,color="white",style="solid",shape="box"];1391 -> 4103[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4103 -> 1400[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1392[label="primQuotInt (primMulInt (Neg vx7300) vx720) (reduce2D (primMulInt (Neg vx7300) vx720) (Neg vx101))",fontsize=16,color="burlywood",shape="box"];4104[label="vx720/Pos vx7200",fontsize=10,color="white",style="solid",shape="box"];1392 -> 4104[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4104 -> 1401[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4105[label="vx720/Neg vx7200",fontsize=10,color="white",style="solid",shape="box"];1392 -> 4105[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4105 -> 1402[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 2436[label="gcd (srMyInt vx730 vx720) (Neg vx101)",fontsize=16,color="black",shape="box"];2436 -> 2447[label="",style="solid", color="black", weight=3]; 162.75/105.96 3597[label="gcd0 (Pos (Succ vx1510)) (Pos vx98)",fontsize=16,color="black",shape="box"];3597 -> 3619[label="",style="solid", color="black", weight=3]; 162.75/105.96 3598[label="gcd1 (esEsMyInt (Pos vx98) (fromIntMyInt (Pos Zero))) (Pos Zero) (Pos vx98)",fontsize=16,color="black",shape="box"];3598 -> 3620[label="",style="solid", color="black", weight=3]; 162.75/105.96 2536[label="gcd0 (Neg (Succ vx1250)) (Pos vx98)",fontsize=16,color="black",shape="box"];2536 -> 2552[label="",style="solid", color="black", weight=3]; 162.75/105.96 2537[label="gcd1 (esEsMyInt (Pos vx98) (fromIntMyInt (Pos Zero))) (Neg Zero) (Pos vx98)",fontsize=16,color="black",shape="box"];2537 -> 2553[label="",style="solid", color="black", weight=3]; 162.75/105.96 1399[label="primQuotInt (primMulInt (Pos vx7300) (Pos vx7200)) (reduce2D (primMulInt (Pos vx7300) (Pos vx7200)) (Neg vx101))",fontsize=16,color="black",shape="box"];1399 -> 1433[label="",style="solid", color="black", weight=3]; 162.75/105.96 1400[label="primQuotInt (primMulInt (Pos vx7300) (Neg vx7200)) (reduce2D (primMulInt (Pos vx7300) (Neg vx7200)) (Neg vx101))",fontsize=16,color="black",shape="box"];1400 -> 1434[label="",style="solid", color="black", weight=3]; 162.75/105.96 1401[label="primQuotInt (primMulInt (Neg vx7300) (Pos vx7200)) (reduce2D (primMulInt (Neg vx7300) (Pos vx7200)) (Neg vx101))",fontsize=16,color="black",shape="box"];1401 -> 1435[label="",style="solid", color="black", weight=3]; 162.75/105.96 1402[label="primQuotInt (primMulInt (Neg vx7300) (Neg vx7200)) (reduce2D (primMulInt (Neg vx7300) (Neg vx7200)) (Neg vx101))",fontsize=16,color="black",shape="box"];1402 -> 1436[label="",style="solid", color="black", weight=3]; 162.75/105.96 2447[label="gcd3 (srMyInt vx730 vx720) (Neg vx101)",fontsize=16,color="black",shape="box"];2447 -> 2466[label="",style="solid", color="black", weight=3]; 162.75/105.96 3619 -> 3633[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3619[label="gcd0Gcd' (absMyInt (Pos (Succ vx1510))) (absMyInt (Pos vx98))",fontsize=16,color="magenta"];3619 -> 3634[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3619 -> 3635[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3620[label="gcd1 (primEqInt (Pos vx98) (fromIntMyInt (Pos Zero))) (Pos Zero) (Pos vx98)",fontsize=16,color="burlywood",shape="box"];4106[label="vx98/Succ vx980",fontsize=10,color="white",style="solid",shape="box"];3620 -> 4106[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4106 -> 3652[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4107[label="vx98/Zero",fontsize=10,color="white",style="solid",shape="box"];3620 -> 4107[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4107 -> 3653[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 2552 -> 3633[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2552[label="gcd0Gcd' (absMyInt (Neg (Succ vx1250))) (absMyInt (Pos vx98))",fontsize=16,color="magenta"];2552 -> 3636[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2552 -> 3637[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2553[label="gcd1 (primEqInt (Pos vx98) (fromIntMyInt (Pos Zero))) (Neg Zero) (Pos vx98)",fontsize=16,color="burlywood",shape="box"];4108[label="vx98/Succ vx980",fontsize=10,color="white",style="solid",shape="box"];2553 -> 4108[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4108 -> 2565[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4109[label="vx98/Zero",fontsize=10,color="white",style="solid",shape="box"];2553 -> 4109[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4109 -> 2566[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 1433 -> 3014[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1433[label="primQuotInt (Pos (primMulNat vx7300 vx7200)) (reduce2D (Pos (primMulNat vx7300 vx7200)) (Neg vx101))",fontsize=16,color="magenta"];1433 -> 3059[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1433 -> 3060[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1434 -> 1991[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1434[label="primQuotInt (Neg (primMulNat vx7300 vx7200)) (reduce2D (Neg (primMulNat vx7300 vx7200)) (Neg vx101))",fontsize=16,color="magenta"];1434 -> 2032[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1434 -> 2033[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1435 -> 1991[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1435[label="primQuotInt (Neg (primMulNat vx7300 vx7200)) (reduce2D (Neg (primMulNat vx7300 vx7200)) (Neg vx101))",fontsize=16,color="magenta"];1435 -> 2034[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1435 -> 2035[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1436 -> 3014[label="",style="dashed", color="red", weight=0]; 162.75/105.96 1436[label="primQuotInt (Pos (primMulNat vx7300 vx7200)) (reduce2D (Pos (primMulNat vx7300 vx7200)) (Neg vx101))",fontsize=16,color="magenta"];1436 -> 3061[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 1436 -> 3062[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2466[label="gcd2 (esEsMyInt (srMyInt vx730 vx720) (fromIntMyInt (Pos Zero))) (srMyInt vx730 vx720) (Neg vx101)",fontsize=16,color="black",shape="box"];2466 -> 2480[label="",style="solid", color="black", weight=3]; 162.75/105.96 3634[label="absMyInt (Pos vx98)",fontsize=16,color="black",shape="triangle"];3634 -> 3654[label="",style="solid", color="black", weight=3]; 162.75/105.96 3635 -> 3634[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3635[label="absMyInt (Pos (Succ vx1510))",fontsize=16,color="magenta"];3635 -> 3655[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3633[label="gcd0Gcd' vx171 vx170",fontsize=16,color="black",shape="triangle"];3633 -> 3656[label="",style="solid", color="black", weight=3]; 162.75/105.96 3652[label="gcd1 (primEqInt (Pos (Succ vx980)) (fromIntMyInt (Pos Zero))) (Pos Zero) (Pos (Succ vx980))",fontsize=16,color="black",shape="box"];3652 -> 3666[label="",style="solid", color="black", weight=3]; 162.75/105.96 3653[label="gcd1 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];3653 -> 3667[label="",style="solid", color="black", weight=3]; 162.75/105.96 3636 -> 3634[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3636[label="absMyInt (Pos vx98)",fontsize=16,color="magenta"];3637[label="absMyInt (Neg (Succ vx1250))",fontsize=16,color="black",shape="box"];3637 -> 3657[label="",style="solid", color="black", weight=3]; 162.75/105.96 2565[label="gcd1 (primEqInt (Pos (Succ vx980)) (fromIntMyInt (Pos Zero))) (Neg Zero) (Pos (Succ vx980))",fontsize=16,color="black",shape="box"];2565 -> 2592[label="",style="solid", color="black", weight=3]; 162.75/105.96 2566[label="gcd1 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];2566 -> 2593[label="",style="solid", color="black", weight=3]; 162.75/105.96 3059 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3059[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3059 -> 3420[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3059 -> 3421[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3060 -> 3422[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3060[label="reduce2D (Pos (primMulNat vx7300 vx7200)) (Neg vx101)",fontsize=16,color="magenta"];3060 -> 3423[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2032 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2032[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2032 -> 2437[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2032 -> 2438[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2033 -> 2439[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2033[label="reduce2D (Neg (primMulNat vx7300 vx7200)) (Neg vx101)",fontsize=16,color="magenta"];2033 -> 2440[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2034 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2034[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2034 -> 2448[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2034 -> 2449[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2035 -> 2439[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2035[label="reduce2D (Neg (primMulNat vx7300 vx7200)) (Neg vx101)",fontsize=16,color="magenta"];2035 -> 2441[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3061 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3061[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3061 -> 3431[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3061 -> 3432[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3062 -> 3422[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3062[label="reduce2D (Pos (primMulNat vx7300 vx7200)) (Neg vx101)",fontsize=16,color="magenta"];3062 -> 3424[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2480[label="gcd2 (primEqInt (srMyInt vx730 vx720) (fromIntMyInt (Pos Zero))) (srMyInt vx730 vx720) (Neg vx101)",fontsize=16,color="black",shape="box"];2480 -> 2494[label="",style="solid", color="black", weight=3]; 162.75/105.96 3654[label="absReal (Pos vx98)",fontsize=16,color="black",shape="box"];3654 -> 3668[label="",style="solid", color="black", weight=3]; 162.75/105.96 3655[label="Succ vx1510",fontsize=16,color="green",shape="box"];3656[label="gcd0Gcd'2 vx171 vx170",fontsize=16,color="black",shape="box"];3656 -> 3669[label="",style="solid", color="black", weight=3]; 162.75/105.96 3666[label="gcd1 (primEqInt (Pos (Succ vx980)) (Pos Zero)) (Pos Zero) (Pos (Succ vx980))",fontsize=16,color="black",shape="box"];3666 -> 3675[label="",style="solid", color="black", weight=3]; 162.75/105.96 3667[label="gcd1 (primEqInt (Pos Zero) (Pos Zero)) (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];3667 -> 3676[label="",style="solid", color="black", weight=3]; 162.75/105.96 3657[label="absReal (Neg (Succ vx1250))",fontsize=16,color="black",shape="box"];3657 -> 3670[label="",style="solid", color="black", weight=3]; 162.75/105.96 2592[label="gcd1 (primEqInt (Pos (Succ vx980)) (Pos Zero)) (Neg Zero) (Pos (Succ vx980))",fontsize=16,color="black",shape="box"];2592 -> 2615[label="",style="solid", color="black", weight=3]; 162.75/105.96 2593[label="gcd1 (primEqInt (Pos Zero) (Pos Zero)) (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];2593 -> 2616[label="",style="solid", color="black", weight=3]; 162.75/105.96 3420[label="vx7300",fontsize=16,color="green",shape="box"];3421[label="vx7200",fontsize=16,color="green",shape="box"];3423 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3423[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3423 -> 3433[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3423 -> 3434[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3422[label="reduce2D (Pos vx152) (Neg vx101)",fontsize=16,color="black",shape="triangle"];3422 -> 3435[label="",style="solid", color="black", weight=3]; 162.75/105.96 2437[label="vx7300",fontsize=16,color="green",shape="box"];2438[label="vx7200",fontsize=16,color="green",shape="box"];2440 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2440[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2440 -> 2450[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2440 -> 2451[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2439[label="reduce2D (Neg vx126) (Neg vx101)",fontsize=16,color="black",shape="triangle"];2439 -> 2452[label="",style="solid", color="black", weight=3]; 162.75/105.96 2448[label="vx7300",fontsize=16,color="green",shape="box"];2449[label="vx7200",fontsize=16,color="green",shape="box"];2441 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2441[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2441 -> 2453[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2441 -> 2454[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3431[label="vx7300",fontsize=16,color="green",shape="box"];3432[label="vx7200",fontsize=16,color="green",shape="box"];3424 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3424[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];3424 -> 3436[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3424 -> 3437[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2494[label="gcd2 (primEqInt (primMulInt vx730 vx720) (fromIntMyInt (Pos Zero))) (primMulInt vx730 vx720) (Neg vx101)",fontsize=16,color="burlywood",shape="box"];4110[label="vx730/Pos vx7300",fontsize=10,color="white",style="solid",shape="box"];2494 -> 4110[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4110 -> 2506[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4111[label="vx730/Neg vx7300",fontsize=10,color="white",style="solid",shape="box"];2494 -> 4111[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4111 -> 2507[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3668[label="absReal2 (Pos vx98)",fontsize=16,color="black",shape="box"];3668 -> 3677[label="",style="solid", color="black", weight=3]; 162.75/105.96 3669[label="gcd0Gcd'1 (esEsMyInt vx170 (fromIntMyInt (Pos Zero))) vx171 vx170",fontsize=16,color="black",shape="box"];3669 -> 3678[label="",style="solid", color="black", weight=3]; 162.75/105.96 3675[label="gcd1 MyFalse (Pos Zero) (Pos (Succ vx980))",fontsize=16,color="black",shape="box"];3675 -> 3683[label="",style="solid", color="black", weight=3]; 162.75/105.96 3676[label="gcd1 MyTrue (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];3676 -> 3684[label="",style="solid", color="black", weight=3]; 162.75/105.96 3670[label="absReal2 (Neg (Succ vx1250))",fontsize=16,color="black",shape="box"];3670 -> 3679[label="",style="solid", color="black", weight=3]; 162.75/105.96 2615[label="gcd1 MyFalse (Neg Zero) (Pos (Succ vx980))",fontsize=16,color="black",shape="box"];2615 -> 2634[label="",style="solid", color="black", weight=3]; 162.75/105.96 2616[label="gcd1 MyTrue (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];2616 -> 2635[label="",style="solid", color="black", weight=3]; 162.75/105.96 3433[label="vx7300",fontsize=16,color="green",shape="box"];3434[label="vx7200",fontsize=16,color="green",shape="box"];3435[label="gcd (Pos vx152) (Neg vx101)",fontsize=16,color="black",shape="box"];3435 -> 3478[label="",style="solid", color="black", weight=3]; 162.75/105.96 2450[label="vx7300",fontsize=16,color="green",shape="box"];2451[label="vx7200",fontsize=16,color="green",shape="box"];2452[label="gcd (Neg vx126) (Neg vx101)",fontsize=16,color="black",shape="box"];2452 -> 2467[label="",style="solid", color="black", weight=3]; 162.75/105.96 2453[label="vx7300",fontsize=16,color="green",shape="box"];2454[label="vx7200",fontsize=16,color="green",shape="box"];3436[label="vx7300",fontsize=16,color="green",shape="box"];3437[label="vx7200",fontsize=16,color="green",shape="box"];2506[label="gcd2 (primEqInt (primMulInt (Pos vx7300) vx720) (fromIntMyInt (Pos Zero))) (primMulInt (Pos vx7300) vx720) (Neg vx101)",fontsize=16,color="burlywood",shape="box"];4112[label="vx720/Pos vx7200",fontsize=10,color="white",style="solid",shape="box"];2506 -> 4112[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4112 -> 2521[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4113[label="vx720/Neg vx7200",fontsize=10,color="white",style="solid",shape="box"];2506 -> 4113[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4113 -> 2522[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 2507[label="gcd2 (primEqInt (primMulInt (Neg vx7300) vx720) (fromIntMyInt (Pos Zero))) (primMulInt (Neg vx7300) vx720) (Neg vx101)",fontsize=16,color="burlywood",shape="box"];4114[label="vx720/Pos vx7200",fontsize=10,color="white",style="solid",shape="box"];2507 -> 4114[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4114 -> 2523[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4115[label="vx720/Neg vx7200",fontsize=10,color="white",style="solid",shape="box"];2507 -> 4115[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4115 -> 2524[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3677[label="absReal1 (Pos vx98) (gtEsMyInt (Pos vx98) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];3677 -> 3685[label="",style="solid", color="black", weight=3]; 162.75/105.96 3678[label="gcd0Gcd'1 (primEqInt vx170 (fromIntMyInt (Pos Zero))) vx171 vx170",fontsize=16,color="burlywood",shape="box"];4116[label="vx170/Pos vx1700",fontsize=10,color="white",style="solid",shape="box"];3678 -> 4116[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4116 -> 3686[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4117[label="vx170/Neg vx1700",fontsize=10,color="white",style="solid",shape="box"];3678 -> 4117[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4117 -> 3687[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3683[label="gcd0 (Pos Zero) (Pos (Succ vx980))",fontsize=16,color="black",shape="box"];3683 -> 3693[label="",style="solid", color="black", weight=3]; 162.75/105.96 3684 -> 2462[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3684[label="error",fontsize=16,color="magenta"];3679[label="absReal1 (Neg (Succ vx1250)) (gtEsMyInt (Neg (Succ vx1250)) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];3679 -> 3688[label="",style="solid", color="black", weight=3]; 162.75/105.96 2634[label="gcd0 (Neg Zero) (Pos (Succ vx980))",fontsize=16,color="black",shape="box"];2634 -> 2651[label="",style="solid", color="black", weight=3]; 162.75/105.96 2635 -> 2462[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2635[label="error",fontsize=16,color="magenta"];3478[label="gcd3 (Pos vx152) (Neg vx101)",fontsize=16,color="black",shape="box"];3478 -> 3500[label="",style="solid", color="black", weight=3]; 162.75/105.96 2467[label="gcd3 (Neg vx126) (Neg vx101)",fontsize=16,color="black",shape="box"];2467 -> 2481[label="",style="solid", color="black", weight=3]; 162.75/105.96 2521[label="gcd2 (primEqInt (primMulInt (Pos vx7300) (Pos vx7200)) (fromIntMyInt (Pos Zero))) (primMulInt (Pos vx7300) (Pos vx7200)) (Neg vx101)",fontsize=16,color="black",shape="box"];2521 -> 2538[label="",style="solid", color="black", weight=3]; 162.75/105.96 2522[label="gcd2 (primEqInt (primMulInt (Pos vx7300) (Neg vx7200)) (fromIntMyInt (Pos Zero))) (primMulInt (Pos vx7300) (Neg vx7200)) (Neg vx101)",fontsize=16,color="black",shape="box"];2522 -> 2539[label="",style="solid", color="black", weight=3]; 162.75/105.96 2523[label="gcd2 (primEqInt (primMulInt (Neg vx7300) (Pos vx7200)) (fromIntMyInt (Pos Zero))) (primMulInt (Neg vx7300) (Pos vx7200)) (Neg vx101)",fontsize=16,color="black",shape="box"];2523 -> 2540[label="",style="solid", color="black", weight=3]; 162.75/105.96 2524[label="gcd2 (primEqInt (primMulInt (Neg vx7300) (Neg vx7200)) (fromIntMyInt (Pos Zero))) (primMulInt (Neg vx7300) (Neg vx7200)) (Neg vx101)",fontsize=16,color="black",shape="box"];2524 -> 2541[label="",style="solid", color="black", weight=3]; 162.75/105.96 3685[label="absReal1 (Pos vx98) (fsEsOrdering (compareMyInt (Pos vx98) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];3685 -> 3694[label="",style="solid", color="black", weight=3]; 162.75/105.96 3686[label="gcd0Gcd'1 (primEqInt (Pos vx1700) (fromIntMyInt (Pos Zero))) vx171 (Pos vx1700)",fontsize=16,color="burlywood",shape="box"];4118[label="vx1700/Succ vx17000",fontsize=10,color="white",style="solid",shape="box"];3686 -> 4118[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4118 -> 3695[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4119[label="vx1700/Zero",fontsize=10,color="white",style="solid",shape="box"];3686 -> 4119[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4119 -> 3696[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3687[label="gcd0Gcd'1 (primEqInt (Neg vx1700) (fromIntMyInt (Pos Zero))) vx171 (Neg vx1700)",fontsize=16,color="burlywood",shape="box"];4120[label="vx1700/Succ vx17000",fontsize=10,color="white",style="solid",shape="box"];3687 -> 4120[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4120 -> 3697[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4121[label="vx1700/Zero",fontsize=10,color="white",style="solid",shape="box"];3687 -> 4121[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4121 -> 3698[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3693 -> 3633[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3693[label="gcd0Gcd' (absMyInt (Pos Zero)) (absMyInt (Pos (Succ vx980)))",fontsize=16,color="magenta"];3693 -> 3706[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3693 -> 3707[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3688[label="absReal1 (Neg (Succ vx1250)) (fsEsOrdering (compareMyInt (Neg (Succ vx1250)) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];3688 -> 3699[label="",style="solid", color="black", weight=3]; 162.75/105.96 2651 -> 3633[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2651[label="gcd0Gcd' (absMyInt (Neg Zero)) (absMyInt (Pos (Succ vx980)))",fontsize=16,color="magenta"];2651 -> 3638[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2651 -> 3639[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3500[label="gcd2 (esEsMyInt (Pos vx152) (fromIntMyInt (Pos Zero))) (Pos vx152) (Neg vx101)",fontsize=16,color="black",shape="box"];3500 -> 3514[label="",style="solid", color="black", weight=3]; 162.75/105.96 2481[label="gcd2 (esEsMyInt (Neg vx126) (fromIntMyInt (Pos Zero))) (Neg vx126) (Neg vx101)",fontsize=16,color="black",shape="box"];2481 -> 2495[label="",style="solid", color="black", weight=3]; 162.75/105.96 2538 -> 2554[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2538[label="gcd2 (primEqInt (Pos (primMulNat vx7300 vx7200)) (fromIntMyInt (Pos Zero))) (Pos (primMulNat vx7300 vx7200)) (Neg vx101)",fontsize=16,color="magenta"];2538 -> 2555[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2538 -> 2556[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2539 -> 2495[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2539[label="gcd2 (primEqInt (Neg (primMulNat vx7300 vx7200)) (fromIntMyInt (Pos Zero))) (Neg (primMulNat vx7300 vx7200)) (Neg vx101)",fontsize=16,color="magenta"];2539 -> 2567[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2540 -> 2495[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2540[label="gcd2 (primEqInt (Neg (primMulNat vx7300 vx7200)) (fromIntMyInt (Pos Zero))) (Neg (primMulNat vx7300 vx7200)) (Neg vx101)",fontsize=16,color="magenta"];2540 -> 2568[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2541 -> 2554[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2541[label="gcd2 (primEqInt (Pos (primMulNat vx7300 vx7200)) (fromIntMyInt (Pos Zero))) (Pos (primMulNat vx7300 vx7200)) (Neg vx101)",fontsize=16,color="magenta"];2541 -> 2557[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2541 -> 2558[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3694[label="absReal1 (Pos vx98) (not (esEsOrdering (compareMyInt (Pos vx98) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3694 -> 3708[label="",style="solid", color="black", weight=3]; 162.75/105.96 3695[label="gcd0Gcd'1 (primEqInt (Pos (Succ vx17000)) (fromIntMyInt (Pos Zero))) vx171 (Pos (Succ vx17000))",fontsize=16,color="black",shape="box"];3695 -> 3709[label="",style="solid", color="black", weight=3]; 162.75/105.96 3696[label="gcd0Gcd'1 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) vx171 (Pos Zero)",fontsize=16,color="black",shape="box"];3696 -> 3710[label="",style="solid", color="black", weight=3]; 162.75/105.96 3697[label="gcd0Gcd'1 (primEqInt (Neg (Succ vx17000)) (fromIntMyInt (Pos Zero))) vx171 (Neg (Succ vx17000))",fontsize=16,color="black",shape="box"];3697 -> 3711[label="",style="solid", color="black", weight=3]; 162.75/105.96 3698[label="gcd0Gcd'1 (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero))) vx171 (Neg Zero)",fontsize=16,color="black",shape="box"];3698 -> 3712[label="",style="solid", color="black", weight=3]; 162.75/105.96 3706 -> 3634[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3706[label="absMyInt (Pos (Succ vx980))",fontsize=16,color="magenta"];3706 -> 3720[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3707 -> 3634[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3707[label="absMyInt (Pos Zero)",fontsize=16,color="magenta"];3707 -> 3721[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3699[label="absReal1 (Neg (Succ vx1250)) (not (esEsOrdering (compareMyInt (Neg (Succ vx1250)) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3699 -> 3713[label="",style="solid", color="black", weight=3]; 162.75/105.96 3638 -> 3634[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3638[label="absMyInt (Pos (Succ vx980))",fontsize=16,color="magenta"];3638 -> 3658[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3639[label="absMyInt (Neg Zero)",fontsize=16,color="black",shape="box"];3639 -> 3659[label="",style="solid", color="black", weight=3]; 162.75/105.96 3514 -> 2554[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3514[label="gcd2 (primEqInt (Pos vx152) (fromIntMyInt (Pos Zero))) (Pos vx152) (Neg vx101)",fontsize=16,color="magenta"];3514 -> 3526[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3514 -> 3527[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2495[label="gcd2 (primEqInt (Neg vx126) (fromIntMyInt (Pos Zero))) (Neg vx126) (Neg vx101)",fontsize=16,color="burlywood",shape="triangle"];4122[label="vx126/Succ vx1260",fontsize=10,color="white",style="solid",shape="box"];2495 -> 4122[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4122 -> 2508[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4123[label="vx126/Zero",fontsize=10,color="white",style="solid",shape="box"];2495 -> 4123[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4123 -> 2509[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 2555 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2555[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2555 -> 2569[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2555 -> 2570[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2556 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2556[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2556 -> 2571[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2556 -> 2572[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2554[label="gcd2 (primEqInt (Pos vx128) (fromIntMyInt (Pos Zero))) (Pos vx127) (Neg vx101)",fontsize=16,color="burlywood",shape="triangle"];4124[label="vx128/Succ vx1280",fontsize=10,color="white",style="solid",shape="box"];2554 -> 4124[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4124 -> 2573[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4125[label="vx128/Zero",fontsize=10,color="white",style="solid",shape="box"];2554 -> 4125[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4125 -> 2574[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 2567 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2567[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2567 -> 2594[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2567 -> 2595[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2568 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2568[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2568 -> 2596[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2568 -> 2597[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2557 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2557[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2557 -> 2575[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2557 -> 2576[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2558 -> 1277[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2558[label="primMulNat vx7300 vx7200",fontsize=16,color="magenta"];2558 -> 2577[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2558 -> 2578[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3708[label="absReal1 (Pos vx98) (not (esEsOrdering (primCmpInt (Pos vx98) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="burlywood",shape="box"];4126[label="vx98/Succ vx980",fontsize=10,color="white",style="solid",shape="box"];3708 -> 4126[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4126 -> 3722[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4127[label="vx98/Zero",fontsize=10,color="white",style="solid",shape="box"];3708 -> 4127[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4127 -> 3723[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3709[label="gcd0Gcd'1 (primEqInt (Pos (Succ vx17000)) (Pos Zero)) vx171 (Pos (Succ vx17000))",fontsize=16,color="black",shape="box"];3709 -> 3724[label="",style="solid", color="black", weight=3]; 162.75/105.96 3710[label="gcd0Gcd'1 (primEqInt (Pos Zero) (Pos Zero)) vx171 (Pos Zero)",fontsize=16,color="black",shape="box"];3710 -> 3725[label="",style="solid", color="black", weight=3]; 162.75/105.96 3711[label="gcd0Gcd'1 (primEqInt (Neg (Succ vx17000)) (Pos Zero)) vx171 (Neg (Succ vx17000))",fontsize=16,color="black",shape="box"];3711 -> 3726[label="",style="solid", color="black", weight=3]; 162.75/105.96 3712[label="gcd0Gcd'1 (primEqInt (Neg Zero) (Pos Zero)) vx171 (Neg Zero)",fontsize=16,color="black",shape="box"];3712 -> 3727[label="",style="solid", color="black", weight=3]; 162.75/105.96 3720[label="Succ vx980",fontsize=16,color="green",shape="box"];3721[label="Zero",fontsize=16,color="green",shape="box"];3713[label="absReal1 (Neg (Succ vx1250)) (not (esEsOrdering (primCmpInt (Neg (Succ vx1250)) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3713 -> 3728[label="",style="solid", color="black", weight=3]; 162.75/105.96 3658[label="Succ vx980",fontsize=16,color="green",shape="box"];3659[label="absReal (Neg Zero)",fontsize=16,color="black",shape="box"];3659 -> 3671[label="",style="solid", color="black", weight=3]; 162.75/105.96 3526[label="vx152",fontsize=16,color="green",shape="box"];3527[label="vx152",fontsize=16,color="green",shape="box"];2508[label="gcd2 (primEqInt (Neg (Succ vx1260)) (fromIntMyInt (Pos Zero))) (Neg (Succ vx1260)) (Neg vx101)",fontsize=16,color="black",shape="box"];2508 -> 2525[label="",style="solid", color="black", weight=3]; 162.75/105.96 2509[label="gcd2 (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero))) (Neg Zero) (Neg vx101)",fontsize=16,color="black",shape="box"];2509 -> 2526[label="",style="solid", color="black", weight=3]; 162.75/105.96 2569[label="vx7300",fontsize=16,color="green",shape="box"];2570[label="vx7200",fontsize=16,color="green",shape="box"];2571[label="vx7300",fontsize=16,color="green",shape="box"];2572[label="vx7200",fontsize=16,color="green",shape="box"];2573[label="gcd2 (primEqInt (Pos (Succ vx1280)) (fromIntMyInt (Pos Zero))) (Pos vx127) (Neg vx101)",fontsize=16,color="black",shape="box"];2573 -> 2598[label="",style="solid", color="black", weight=3]; 162.75/105.96 2574[label="gcd2 (primEqInt (Pos Zero) (fromIntMyInt (Pos Zero))) (Pos vx127) (Neg vx101)",fontsize=16,color="black",shape="box"];2574 -> 2599[label="",style="solid", color="black", weight=3]; 162.75/105.96 2594[label="vx7300",fontsize=16,color="green",shape="box"];2595[label="vx7200",fontsize=16,color="green",shape="box"];2596[label="vx7300",fontsize=16,color="green",shape="box"];2597[label="vx7200",fontsize=16,color="green",shape="box"];2575[label="vx7300",fontsize=16,color="green",shape="box"];2576[label="vx7200",fontsize=16,color="green",shape="box"];2577[label="vx7300",fontsize=16,color="green",shape="box"];2578[label="vx7200",fontsize=16,color="green",shape="box"];3722[label="absReal1 (Pos (Succ vx980)) (not (esEsOrdering (primCmpInt (Pos (Succ vx980)) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3722 -> 3734[label="",style="solid", color="black", weight=3]; 162.75/105.96 3723[label="absReal1 (Pos Zero) (not (esEsOrdering (primCmpInt (Pos Zero) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3723 -> 3735[label="",style="solid", color="black", weight=3]; 162.75/105.96 3724[label="gcd0Gcd'1 MyFalse vx171 (Pos (Succ vx17000))",fontsize=16,color="black",shape="box"];3724 -> 3736[label="",style="solid", color="black", weight=3]; 162.75/105.96 3725[label="gcd0Gcd'1 MyTrue vx171 (Pos Zero)",fontsize=16,color="black",shape="box"];3725 -> 3737[label="",style="solid", color="black", weight=3]; 162.75/105.96 3726[label="gcd0Gcd'1 MyFalse vx171 (Neg (Succ vx17000))",fontsize=16,color="black",shape="box"];3726 -> 3738[label="",style="solid", color="black", weight=3]; 162.75/105.96 3727[label="gcd0Gcd'1 MyTrue vx171 (Neg Zero)",fontsize=16,color="black",shape="box"];3727 -> 3739[label="",style="solid", color="black", weight=3]; 162.75/105.96 3728[label="absReal1 (Neg (Succ vx1250)) (not (esEsOrdering (primCmpInt (Neg (Succ vx1250)) (Pos Zero)) LT))",fontsize=16,color="black",shape="triangle"];3728 -> 3740[label="",style="solid", color="black", weight=3]; 162.75/105.96 3671[label="absReal2 (Neg Zero)",fontsize=16,color="black",shape="box"];3671 -> 3680[label="",style="solid", color="black", weight=3]; 162.75/105.96 2525[label="gcd2 (primEqInt (Neg (Succ vx1260)) (Pos Zero)) (Neg (Succ vx1260)) (Neg vx101)",fontsize=16,color="black",shape="box"];2525 -> 2542[label="",style="solid", color="black", weight=3]; 162.75/105.96 2526[label="gcd2 (primEqInt (Neg Zero) (Pos Zero)) (Neg Zero) (Neg vx101)",fontsize=16,color="black",shape="box"];2526 -> 2543[label="",style="solid", color="black", weight=3]; 162.75/105.96 2598[label="gcd2 (primEqInt (Pos (Succ vx1280)) (Pos Zero)) (Pos vx127) (Neg vx101)",fontsize=16,color="black",shape="box"];2598 -> 2617[label="",style="solid", color="black", weight=3]; 162.75/105.96 2599[label="gcd2 (primEqInt (Pos Zero) (Pos Zero)) (Pos vx127) (Neg vx101)",fontsize=16,color="black",shape="box"];2599 -> 2618[label="",style="solid", color="black", weight=3]; 162.75/105.96 3734[label="absReal1 (Pos (Succ vx980)) (not (esEsOrdering (primCmpInt (Pos (Succ vx980)) (Pos Zero)) LT))",fontsize=16,color="black",shape="box"];3734 -> 3744[label="",style="solid", color="black", weight=3]; 162.75/105.96 3735[label="absReal1 (Pos Zero) (not (esEsOrdering (primCmpInt (Pos Zero) (Pos Zero)) LT))",fontsize=16,color="black",shape="box"];3735 -> 3745[label="",style="solid", color="black", weight=3]; 162.75/105.96 3736[label="gcd0Gcd'0 vx171 (Pos (Succ vx17000))",fontsize=16,color="black",shape="box"];3736 -> 3746[label="",style="solid", color="black", weight=3]; 162.75/105.96 3737[label="vx171",fontsize=16,color="green",shape="box"];3738[label="gcd0Gcd'0 vx171 (Neg (Succ vx17000))",fontsize=16,color="black",shape="box"];3738 -> 3747[label="",style="solid", color="black", weight=3]; 162.75/105.96 3739[label="vx171",fontsize=16,color="green",shape="box"];3740[label="absReal1 (Neg (Succ vx1250)) (not (esEsOrdering LT LT))",fontsize=16,color="black",shape="box"];3740 -> 3748[label="",style="solid", color="black", weight=3]; 162.75/105.96 3680[label="absReal1 (Neg Zero) (gtEsMyInt (Neg Zero) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];3680 -> 3689[label="",style="solid", color="black", weight=3]; 162.75/105.96 2542[label="gcd2 MyFalse (Neg (Succ vx1260)) (Neg vx101)",fontsize=16,color="black",shape="box"];2542 -> 2579[label="",style="solid", color="black", weight=3]; 162.75/105.96 2543[label="gcd2 MyTrue (Neg Zero) (Neg vx101)",fontsize=16,color="black",shape="box"];2543 -> 2580[label="",style="solid", color="black", weight=3]; 162.75/105.96 2617[label="gcd2 MyFalse (Pos vx127) (Neg vx101)",fontsize=16,color="black",shape="box"];2617 -> 2636[label="",style="solid", color="black", weight=3]; 162.75/105.96 2618[label="gcd2 MyTrue (Pos vx127) (Neg vx101)",fontsize=16,color="black",shape="box"];2618 -> 2637[label="",style="solid", color="black", weight=3]; 162.75/105.96 3744[label="absReal1 (Pos (Succ vx980)) (not (esEsOrdering (primCmpNat (Succ vx980) Zero) LT))",fontsize=16,color="black",shape="box"];3744 -> 3751[label="",style="solid", color="black", weight=3]; 162.75/105.96 3745[label="absReal1 (Pos Zero) (not (esEsOrdering EQ LT))",fontsize=16,color="black",shape="box"];3745 -> 3752[label="",style="solid", color="black", weight=3]; 162.75/105.96 3746 -> 3633[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3746[label="gcd0Gcd' (Pos (Succ vx17000)) (remMyInt vx171 (Pos (Succ vx17000)))",fontsize=16,color="magenta"];3746 -> 3753[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3746 -> 3754[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3747 -> 3633[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3747[label="gcd0Gcd' (Neg (Succ vx17000)) (remMyInt vx171 (Neg (Succ vx17000)))",fontsize=16,color="magenta"];3747 -> 3755[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3747 -> 3756[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3748[label="absReal1 (Neg (Succ vx1250)) (not MyTrue)",fontsize=16,color="black",shape="box"];3748 -> 3757[label="",style="solid", color="black", weight=3]; 162.75/105.96 3689[label="absReal1 (Neg Zero) (fsEsOrdering (compareMyInt (Neg Zero) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];3689 -> 3700[label="",style="solid", color="black", weight=3]; 162.75/105.96 2579[label="gcd0 (Neg (Succ vx1260)) (Neg vx101)",fontsize=16,color="black",shape="box"];2579 -> 2600[label="",style="solid", color="black", weight=3]; 162.75/105.96 2580[label="gcd1 (esEsMyInt (Neg vx101) (fromIntMyInt (Pos Zero))) (Neg Zero) (Neg vx101)",fontsize=16,color="black",shape="box"];2580 -> 2601[label="",style="solid", color="black", weight=3]; 162.75/105.96 2636[label="gcd0 (Pos vx127) (Neg vx101)",fontsize=16,color="black",shape="triangle"];2636 -> 2652[label="",style="solid", color="black", weight=3]; 162.75/105.96 2637[label="gcd1 (esEsMyInt (Neg vx101) (fromIntMyInt (Pos Zero))) (Pos vx127) (Neg vx101)",fontsize=16,color="black",shape="box"];2637 -> 2653[label="",style="solid", color="black", weight=3]; 162.75/105.96 3751[label="absReal1 (Pos (Succ vx980)) (not (esEsOrdering GT LT))",fontsize=16,color="black",shape="box"];3751 -> 3759[label="",style="solid", color="black", weight=3]; 162.75/105.96 3752[label="absReal1 (Pos Zero) (not MyFalse)",fontsize=16,color="black",shape="box"];3752 -> 3760[label="",style="solid", color="black", weight=3]; 162.75/105.96 3753[label="remMyInt vx171 (Pos (Succ vx17000))",fontsize=16,color="black",shape="box"];3753 -> 3761[label="",style="solid", color="black", weight=3]; 162.75/105.96 3754[label="Pos (Succ vx17000)",fontsize=16,color="green",shape="box"];3755[label="remMyInt vx171 (Neg (Succ vx17000))",fontsize=16,color="black",shape="box"];3755 -> 3762[label="",style="solid", color="black", weight=3]; 162.75/105.96 3756[label="Neg (Succ vx17000)",fontsize=16,color="green",shape="box"];3757[label="absReal1 (Neg (Succ vx1250)) MyFalse",fontsize=16,color="black",shape="box"];3757 -> 3763[label="",style="solid", color="black", weight=3]; 162.75/105.96 3700[label="absReal1 (Neg Zero) (not (esEsOrdering (compareMyInt (Neg Zero) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3700 -> 3714[label="",style="solid", color="black", weight=3]; 162.75/105.96 2600 -> 3633[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2600[label="gcd0Gcd' (absMyInt (Neg (Succ vx1260))) (absMyInt (Neg vx101))",fontsize=16,color="magenta"];2600 -> 3640[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2600 -> 3641[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2601[label="gcd1 (primEqInt (Neg vx101) (fromIntMyInt (Pos Zero))) (Neg Zero) (Neg vx101)",fontsize=16,color="burlywood",shape="box"];4128[label="vx101/Succ vx1010",fontsize=10,color="white",style="solid",shape="box"];2601 -> 4128[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4128 -> 2620[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4129[label="vx101/Zero",fontsize=10,color="white",style="solid",shape="box"];2601 -> 4129[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4129 -> 2621[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 2652 -> 3633[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2652[label="gcd0Gcd' (absMyInt (Pos vx127)) (absMyInt (Neg vx101))",fontsize=16,color="magenta"];2652 -> 3642[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2652 -> 3643[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2653[label="gcd1 (primEqInt (Neg vx101) (fromIntMyInt (Pos Zero))) (Pos vx127) (Neg vx101)",fontsize=16,color="burlywood",shape="box"];4130[label="vx101/Succ vx1010",fontsize=10,color="white",style="solid",shape="box"];2653 -> 4130[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4130 -> 2670[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4131[label="vx101/Zero",fontsize=10,color="white",style="solid",shape="box"];2653 -> 4131[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4131 -> 2671[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3759[label="absReal1 (Pos (Succ vx980)) (not MyFalse)",fontsize=16,color="black",shape="box"];3759 -> 3765[label="",style="solid", color="black", weight=3]; 162.75/105.96 3760[label="absReal1 (Pos Zero) MyTrue",fontsize=16,color="black",shape="box"];3760 -> 3766[label="",style="solid", color="black", weight=3]; 162.75/105.96 3761[label="primRemInt vx171 (Pos (Succ vx17000))",fontsize=16,color="burlywood",shape="box"];4132[label="vx171/Pos vx1710",fontsize=10,color="white",style="solid",shape="box"];3761 -> 4132[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4132 -> 3767[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4133[label="vx171/Neg vx1710",fontsize=10,color="white",style="solid",shape="box"];3761 -> 4133[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4133 -> 3768[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3762[label="primRemInt vx171 (Neg (Succ vx17000))",fontsize=16,color="burlywood",shape="box"];4134[label="vx171/Pos vx1710",fontsize=10,color="white",style="solid",shape="box"];3762 -> 4134[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4134 -> 3769[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4135[label="vx171/Neg vx1710",fontsize=10,color="white",style="solid",shape="box"];3762 -> 4135[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4135 -> 3770[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3763[label="absReal0 (Neg (Succ vx1250)) otherwise",fontsize=16,color="black",shape="box"];3763 -> 3771[label="",style="solid", color="black", weight=3]; 162.75/105.96 3714[label="absReal1 (Neg Zero) (not (esEsOrdering (primCmpInt (Neg Zero) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3714 -> 3729[label="",style="solid", color="black", weight=3]; 162.75/105.96 3640[label="absMyInt (Neg vx101)",fontsize=16,color="black",shape="triangle"];3640 -> 3660[label="",style="solid", color="black", weight=3]; 162.75/105.96 3641 -> 3640[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3641[label="absMyInt (Neg (Succ vx1260))",fontsize=16,color="magenta"];3641 -> 3661[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2620[label="gcd1 (primEqInt (Neg (Succ vx1010)) (fromIntMyInt (Pos Zero))) (Neg Zero) (Neg (Succ vx1010))",fontsize=16,color="black",shape="box"];2620 -> 2639[label="",style="solid", color="black", weight=3]; 162.75/105.96 2621[label="gcd1 (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero))) (Neg Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];2621 -> 2640[label="",style="solid", color="black", weight=3]; 162.75/105.96 3642 -> 3640[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3642[label="absMyInt (Neg vx101)",fontsize=16,color="magenta"];3643 -> 3634[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3643[label="absMyInt (Pos vx127)",fontsize=16,color="magenta"];3643 -> 3662[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2670[label="gcd1 (primEqInt (Neg (Succ vx1010)) (fromIntMyInt (Pos Zero))) (Pos vx127) (Neg (Succ vx1010))",fontsize=16,color="black",shape="box"];2670 -> 2687[label="",style="solid", color="black", weight=3]; 162.75/105.96 2671[label="gcd1 (primEqInt (Neg Zero) (fromIntMyInt (Pos Zero))) (Pos vx127) (Neg Zero)",fontsize=16,color="black",shape="box"];2671 -> 2688[label="",style="solid", color="black", weight=3]; 162.75/105.96 3765[label="absReal1 (Pos (Succ vx980)) MyTrue",fontsize=16,color="black",shape="box"];3765 -> 3772[label="",style="solid", color="black", weight=3]; 162.75/105.96 3766[label="Pos Zero",fontsize=16,color="green",shape="box"];3767[label="primRemInt (Pos vx1710) (Pos (Succ vx17000))",fontsize=16,color="black",shape="box"];3767 -> 3773[label="",style="solid", color="black", weight=3]; 162.75/105.96 3768[label="primRemInt (Neg vx1710) (Pos (Succ vx17000))",fontsize=16,color="black",shape="box"];3768 -> 3774[label="",style="solid", color="black", weight=3]; 162.75/105.96 3769[label="primRemInt (Pos vx1710) (Neg (Succ vx17000))",fontsize=16,color="black",shape="box"];3769 -> 3775[label="",style="solid", color="black", weight=3]; 162.75/105.96 3770[label="primRemInt (Neg vx1710) (Neg (Succ vx17000))",fontsize=16,color="black",shape="box"];3770 -> 3776[label="",style="solid", color="black", weight=3]; 162.75/105.96 3771[label="absReal0 (Neg (Succ vx1250)) MyTrue",fontsize=16,color="black",shape="box"];3771 -> 3777[label="",style="solid", color="black", weight=3]; 162.75/105.96 3729[label="absReal1 (Neg Zero) (not (esEsOrdering (primCmpInt (Neg Zero) (Pos Zero)) LT))",fontsize=16,color="black",shape="triangle"];3729 -> 3741[label="",style="solid", color="black", weight=3]; 162.75/105.96 3660[label="absReal (Neg vx101)",fontsize=16,color="black",shape="box"];3660 -> 3672[label="",style="solid", color="black", weight=3]; 162.75/105.96 3661[label="Succ vx1260",fontsize=16,color="green",shape="box"];2639[label="gcd1 (primEqInt (Neg (Succ vx1010)) (Pos Zero)) (Neg Zero) (Neg (Succ vx1010))",fontsize=16,color="black",shape="box"];2639 -> 2655[label="",style="solid", color="black", weight=3]; 162.75/105.96 2640[label="gcd1 (primEqInt (Neg Zero) (Pos Zero)) (Neg Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];2640 -> 2656[label="",style="solid", color="black", weight=3]; 162.75/105.96 3662[label="vx127",fontsize=16,color="green",shape="box"];2687[label="gcd1 (primEqInt (Neg (Succ vx1010)) (Pos Zero)) (Pos vx127) (Neg (Succ vx1010))",fontsize=16,color="black",shape="box"];2687 -> 2703[label="",style="solid", color="black", weight=3]; 162.75/105.96 2688[label="gcd1 (primEqInt (Neg Zero) (Pos Zero)) (Pos vx127) (Neg Zero)",fontsize=16,color="black",shape="box"];2688 -> 2704[label="",style="solid", color="black", weight=3]; 162.75/105.96 3772[label="Pos (Succ vx980)",fontsize=16,color="green",shape="box"];3773[label="Pos (primModNatS vx1710 (Succ vx17000))",fontsize=16,color="green",shape="box"];3773 -> 3778[label="",style="dashed", color="green", weight=3]; 162.75/105.96 3774[label="Neg (primModNatS vx1710 (Succ vx17000))",fontsize=16,color="green",shape="box"];3774 -> 3779[label="",style="dashed", color="green", weight=3]; 162.75/105.96 3775[label="Pos (primModNatS vx1710 (Succ vx17000))",fontsize=16,color="green",shape="box"];3775 -> 3780[label="",style="dashed", color="green", weight=3]; 162.75/105.96 3776[label="Neg (primModNatS vx1710 (Succ vx17000))",fontsize=16,color="green",shape="box"];3776 -> 3781[label="",style="dashed", color="green", weight=3]; 162.75/105.96 3777[label="negateMyInt (Neg (Succ vx1250))",fontsize=16,color="black",shape="box"];3777 -> 3782[label="",style="solid", color="black", weight=3]; 162.75/105.96 3741[label="absReal1 (Neg Zero) (not (esEsOrdering EQ LT))",fontsize=16,color="black",shape="box"];3741 -> 3749[label="",style="solid", color="black", weight=3]; 162.75/105.96 3672[label="absReal2 (Neg vx101)",fontsize=16,color="black",shape="box"];3672 -> 3681[label="",style="solid", color="black", weight=3]; 162.75/105.96 2655[label="gcd1 MyFalse (Neg Zero) (Neg (Succ vx1010))",fontsize=16,color="black",shape="box"];2655 -> 2673[label="",style="solid", color="black", weight=3]; 162.75/105.96 2656[label="gcd1 MyTrue (Neg Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];2656 -> 2674[label="",style="solid", color="black", weight=3]; 162.75/105.96 2703[label="gcd1 MyFalse (Pos vx127) (Neg (Succ vx1010))",fontsize=16,color="black",shape="box"];2703 -> 2723[label="",style="solid", color="black", weight=3]; 162.75/105.96 2704[label="gcd1 MyTrue (Pos vx127) (Neg Zero)",fontsize=16,color="black",shape="box"];2704 -> 2724[label="",style="solid", color="black", weight=3]; 162.75/105.96 3778[label="primModNatS vx1710 (Succ vx17000)",fontsize=16,color="burlywood",shape="triangle"];4136[label="vx1710/Succ vx17100",fontsize=10,color="white",style="solid",shape="box"];3778 -> 4136[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4136 -> 3783[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4137[label="vx1710/Zero",fontsize=10,color="white",style="solid",shape="box"];3778 -> 4137[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4137 -> 3784[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3779 -> 3778[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3779[label="primModNatS vx1710 (Succ vx17000)",fontsize=16,color="magenta"];3779 -> 3785[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3780 -> 3778[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3780[label="primModNatS vx1710 (Succ vx17000)",fontsize=16,color="magenta"];3780 -> 3786[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3781 -> 3778[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3781[label="primModNatS vx1710 (Succ vx17000)",fontsize=16,color="magenta"];3781 -> 3787[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3781 -> 3788[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3782[label="primNegInt (Neg (Succ vx1250))",fontsize=16,color="black",shape="box"];3782 -> 3789[label="",style="solid", color="black", weight=3]; 162.75/105.96 3749[label="absReal1 (Neg Zero) (not MyFalse)",fontsize=16,color="black",shape="box"];3749 -> 3758[label="",style="solid", color="black", weight=3]; 162.75/105.96 3681[label="absReal1 (Neg vx101) (gtEsMyInt (Neg vx101) (fromIntMyInt (Pos Zero)))",fontsize=16,color="black",shape="box"];3681 -> 3690[label="",style="solid", color="black", weight=3]; 162.75/105.96 2673[label="gcd0 (Neg Zero) (Neg (Succ vx1010))",fontsize=16,color="black",shape="box"];2673 -> 2690[label="",style="solid", color="black", weight=3]; 162.75/105.96 2674 -> 2462[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2674[label="error",fontsize=16,color="magenta"];2723 -> 2636[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2723[label="gcd0 (Pos vx127) (Neg (Succ vx1010))",fontsize=16,color="magenta"];2723 -> 2743[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2724 -> 2462[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2724[label="error",fontsize=16,color="magenta"];3783[label="primModNatS (Succ vx17100) (Succ vx17000)",fontsize=16,color="burlywood",shape="box"];4138[label="vx17000/Succ vx170000",fontsize=10,color="white",style="solid",shape="box"];3783 -> 4138[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4138 -> 3790[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4139[label="vx17000/Zero",fontsize=10,color="white",style="solid",shape="box"];3783 -> 4139[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4139 -> 3791[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3784[label="primModNatS Zero (Succ vx17000)",fontsize=16,color="black",shape="box"];3784 -> 3792[label="",style="solid", color="black", weight=3]; 162.75/105.96 3785[label="vx1710",fontsize=16,color="green",shape="box"];3786[label="vx17000",fontsize=16,color="green",shape="box"];3787[label="vx1710",fontsize=16,color="green",shape="box"];3788[label="vx17000",fontsize=16,color="green",shape="box"];3789[label="Pos (Succ vx1250)",fontsize=16,color="green",shape="box"];3758[label="absReal1 (Neg Zero) MyTrue",fontsize=16,color="black",shape="box"];3758 -> 3764[label="",style="solid", color="black", weight=3]; 162.75/105.96 3690[label="absReal1 (Neg vx101) (fsEsOrdering (compareMyInt (Neg vx101) (fromIntMyInt (Pos Zero))) LT)",fontsize=16,color="black",shape="box"];3690 -> 3701[label="",style="solid", color="black", weight=3]; 162.75/105.96 2690 -> 3633[label="",style="dashed", color="red", weight=0]; 162.75/105.96 2690[label="gcd0Gcd' (absMyInt (Neg Zero)) (absMyInt (Neg (Succ vx1010)))",fontsize=16,color="magenta"];2690 -> 3644[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2690 -> 3645[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 2743[label="Succ vx1010",fontsize=16,color="green",shape="box"];3790[label="primModNatS (Succ vx17100) (Succ (Succ vx170000))",fontsize=16,color="black",shape="box"];3790 -> 3793[label="",style="solid", color="black", weight=3]; 162.75/105.96 3791[label="primModNatS (Succ vx17100) (Succ Zero)",fontsize=16,color="black",shape="box"];3791 -> 3794[label="",style="solid", color="black", weight=3]; 162.75/105.96 3792[label="Zero",fontsize=16,color="green",shape="box"];3764[label="Neg Zero",fontsize=16,color="green",shape="box"];3701[label="absReal1 (Neg vx101) (not (esEsOrdering (compareMyInt (Neg vx101) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3701 -> 3715[label="",style="solid", color="black", weight=3]; 162.75/105.96 3644 -> 3640[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3644[label="absMyInt (Neg (Succ vx1010))",fontsize=16,color="magenta"];3644 -> 3663[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3645 -> 3640[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3645[label="absMyInt (Neg Zero)",fontsize=16,color="magenta"];3645 -> 3664[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3793[label="primModNatS0 vx17100 vx170000 (primGEqNatS vx17100 (Succ vx170000))",fontsize=16,color="burlywood",shape="box"];4140[label="vx17100/Succ vx171000",fontsize=10,color="white",style="solid",shape="box"];3793 -> 4140[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4140 -> 3795[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4141[label="vx17100/Zero",fontsize=10,color="white",style="solid",shape="box"];3793 -> 4141[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4141 -> 3796[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3794[label="Zero",fontsize=16,color="green",shape="box"];3715[label="absReal1 (Neg vx101) (not (esEsOrdering (primCmpInt (Neg vx101) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="burlywood",shape="box"];4142[label="vx101/Succ vx1010",fontsize=10,color="white",style="solid",shape="box"];3715 -> 4142[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4142 -> 3730[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4143[label="vx101/Zero",fontsize=10,color="white",style="solid",shape="box"];3715 -> 4143[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4143 -> 3731[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3663[label="Succ vx1010",fontsize=16,color="green",shape="box"];3664[label="Zero",fontsize=16,color="green",shape="box"];3795[label="primModNatS0 (Succ vx171000) vx170000 (primGEqNatS (Succ vx171000) (Succ vx170000))",fontsize=16,color="black",shape="box"];3795 -> 3797[label="",style="solid", color="black", weight=3]; 162.75/105.96 3796[label="primModNatS0 Zero vx170000 (primGEqNatS Zero (Succ vx170000))",fontsize=16,color="black",shape="box"];3796 -> 3798[label="",style="solid", color="black", weight=3]; 162.75/105.96 3730[label="absReal1 (Neg (Succ vx1010)) (not (esEsOrdering (primCmpInt (Neg (Succ vx1010)) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3730 -> 3742[label="",style="solid", color="black", weight=3]; 162.75/105.96 3731[label="absReal1 (Neg Zero) (not (esEsOrdering (primCmpInt (Neg Zero) (fromIntMyInt (Pos Zero))) LT))",fontsize=16,color="black",shape="box"];3731 -> 3743[label="",style="solid", color="black", weight=3]; 162.75/105.96 3797[label="primModNatS0 (Succ vx171000) vx170000 (primGEqNatS vx171000 vx170000)",fontsize=16,color="burlywood",shape="box"];4144[label="vx171000/Succ vx1710000",fontsize=10,color="white",style="solid",shape="box"];3797 -> 4144[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4144 -> 3799[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4145[label="vx171000/Zero",fontsize=10,color="white",style="solid",shape="box"];3797 -> 4145[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4145 -> 3800[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3798[label="primModNatS0 Zero vx170000 MyFalse",fontsize=16,color="black",shape="box"];3798 -> 3801[label="",style="solid", color="black", weight=3]; 162.75/105.96 3742 -> 3728[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3742[label="absReal1 (Neg (Succ vx1010)) (not (esEsOrdering (primCmpInt (Neg (Succ vx1010)) (Pos Zero)) LT))",fontsize=16,color="magenta"];3742 -> 3750[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3743 -> 3729[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3743[label="absReal1 (Neg Zero) (not (esEsOrdering (primCmpInt (Neg Zero) (Pos Zero)) LT))",fontsize=16,color="magenta"];3799[label="primModNatS0 (Succ (Succ vx1710000)) vx170000 (primGEqNatS (Succ vx1710000) vx170000)",fontsize=16,color="burlywood",shape="box"];4146[label="vx170000/Succ vx1700000",fontsize=10,color="white",style="solid",shape="box"];3799 -> 4146[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4146 -> 3802[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4147[label="vx170000/Zero",fontsize=10,color="white",style="solid",shape="box"];3799 -> 4147[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4147 -> 3803[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3800[label="primModNatS0 (Succ Zero) vx170000 (primGEqNatS Zero vx170000)",fontsize=16,color="burlywood",shape="box"];4148[label="vx170000/Succ vx1700000",fontsize=10,color="white",style="solid",shape="box"];3800 -> 4148[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4148 -> 3804[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4149[label="vx170000/Zero",fontsize=10,color="white",style="solid",shape="box"];3800 -> 4149[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4149 -> 3805[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3801[label="Succ Zero",fontsize=16,color="green",shape="box"];3750[label="vx1010",fontsize=16,color="green",shape="box"];3802[label="primModNatS0 (Succ (Succ vx1710000)) (Succ vx1700000) (primGEqNatS (Succ vx1710000) (Succ vx1700000))",fontsize=16,color="black",shape="box"];3802 -> 3806[label="",style="solid", color="black", weight=3]; 162.75/105.96 3803[label="primModNatS0 (Succ (Succ vx1710000)) Zero (primGEqNatS (Succ vx1710000) Zero)",fontsize=16,color="black",shape="box"];3803 -> 3807[label="",style="solid", color="black", weight=3]; 162.75/105.96 3804[label="primModNatS0 (Succ Zero) (Succ vx1700000) (primGEqNatS Zero (Succ vx1700000))",fontsize=16,color="black",shape="box"];3804 -> 3808[label="",style="solid", color="black", weight=3]; 162.75/105.96 3805[label="primModNatS0 (Succ Zero) Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];3805 -> 3809[label="",style="solid", color="black", weight=3]; 162.75/105.96 3806 -> 3922[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3806[label="primModNatS0 (Succ (Succ vx1710000)) (Succ vx1700000) (primGEqNatS vx1710000 vx1700000)",fontsize=16,color="magenta"];3806 -> 3923[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3806 -> 3924[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3806 -> 3925[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3806 -> 3926[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3807[label="primModNatS0 (Succ (Succ vx1710000)) Zero MyTrue",fontsize=16,color="black",shape="box"];3807 -> 3812[label="",style="solid", color="black", weight=3]; 162.75/105.96 3808[label="primModNatS0 (Succ Zero) (Succ vx1700000) MyFalse",fontsize=16,color="black",shape="box"];3808 -> 3813[label="",style="solid", color="black", weight=3]; 162.75/105.96 3809[label="primModNatS0 (Succ Zero) Zero MyTrue",fontsize=16,color="black",shape="box"];3809 -> 3814[label="",style="solid", color="black", weight=3]; 162.75/105.96 3923[label="vx1700000",fontsize=16,color="green",shape="box"];3924[label="vx1710000",fontsize=16,color="green",shape="box"];3925[label="Succ vx1710000",fontsize=16,color="green",shape="box"];3926[label="vx1700000",fontsize=16,color="green",shape="box"];3922[label="primModNatS0 (Succ vx180) (Succ vx181) (primGEqNatS vx182 vx183)",fontsize=16,color="burlywood",shape="triangle"];4150[label="vx182/Succ vx1820",fontsize=10,color="white",style="solid",shape="box"];3922 -> 4150[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4150 -> 3951[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4151[label="vx182/Zero",fontsize=10,color="white",style="solid",shape="box"];3922 -> 4151[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4151 -> 3952[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3812 -> 3778[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3812[label="primModNatS (primMinusNatS (Succ (Succ vx1710000)) (Succ Zero)) (Succ (Succ Zero))",fontsize=16,color="magenta"];3812 -> 3819[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3812 -> 3820[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3813[label="Succ (Succ Zero)",fontsize=16,color="green",shape="box"];3814 -> 3778[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3814[label="primModNatS (primMinusNatS (Succ Zero) (Succ Zero)) (Succ (Succ Zero))",fontsize=16,color="magenta"];3814 -> 3821[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3814 -> 3822[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3951[label="primModNatS0 (Succ vx180) (Succ vx181) (primGEqNatS (Succ vx1820) vx183)",fontsize=16,color="burlywood",shape="box"];4152[label="vx183/Succ vx1830",fontsize=10,color="white",style="solid",shape="box"];3951 -> 4152[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4152 -> 3953[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4153[label="vx183/Zero",fontsize=10,color="white",style="solid",shape="box"];3951 -> 4153[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4153 -> 3954[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3952[label="primModNatS0 (Succ vx180) (Succ vx181) (primGEqNatS Zero vx183)",fontsize=16,color="burlywood",shape="box"];4154[label="vx183/Succ vx1830",fontsize=10,color="white",style="solid",shape="box"];3952 -> 4154[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4154 -> 3955[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 4155[label="vx183/Zero",fontsize=10,color="white",style="solid",shape="box"];3952 -> 4155[label="",style="solid", color="burlywood", weight=9]; 162.75/105.96 4155 -> 3956[label="",style="solid", color="burlywood", weight=3]; 162.75/105.96 3819 -> 3682[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3819[label="primMinusNatS (Succ (Succ vx1710000)) (Succ Zero)",fontsize=16,color="magenta"];3819 -> 3827[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3819 -> 3828[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3820[label="Succ Zero",fontsize=16,color="green",shape="box"];3821 -> 3682[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3821[label="primMinusNatS (Succ Zero) (Succ Zero)",fontsize=16,color="magenta"];3821 -> 3829[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3821 -> 3830[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3822[label="Succ Zero",fontsize=16,color="green",shape="box"];3953[label="primModNatS0 (Succ vx180) (Succ vx181) (primGEqNatS (Succ vx1820) (Succ vx1830))",fontsize=16,color="black",shape="box"];3953 -> 3957[label="",style="solid", color="black", weight=3]; 162.75/105.96 3954[label="primModNatS0 (Succ vx180) (Succ vx181) (primGEqNatS (Succ vx1820) Zero)",fontsize=16,color="black",shape="box"];3954 -> 3958[label="",style="solid", color="black", weight=3]; 162.75/105.96 3955[label="primModNatS0 (Succ vx180) (Succ vx181) (primGEqNatS Zero (Succ vx1830))",fontsize=16,color="black",shape="box"];3955 -> 3959[label="",style="solid", color="black", weight=3]; 162.75/105.96 3956[label="primModNatS0 (Succ vx180) (Succ vx181) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];3956 -> 3960[label="",style="solid", color="black", weight=3]; 162.75/105.96 3827[label="Succ Zero",fontsize=16,color="green",shape="box"];3828[label="Succ (Succ vx1710000)",fontsize=16,color="green",shape="box"];3829[label="Succ Zero",fontsize=16,color="green",shape="box"];3830[label="Succ Zero",fontsize=16,color="green",shape="box"];3957 -> 3922[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3957[label="primModNatS0 (Succ vx180) (Succ vx181) (primGEqNatS vx1820 vx1830)",fontsize=16,color="magenta"];3957 -> 3961[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3957 -> 3962[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3958[label="primModNatS0 (Succ vx180) (Succ vx181) MyTrue",fontsize=16,color="black",shape="triangle"];3958 -> 3963[label="",style="solid", color="black", weight=3]; 162.75/105.96 3959[label="primModNatS0 (Succ vx180) (Succ vx181) MyFalse",fontsize=16,color="black",shape="box"];3959 -> 3964[label="",style="solid", color="black", weight=3]; 162.75/105.96 3960 -> 3958[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3960[label="primModNatS0 (Succ vx180) (Succ vx181) MyTrue",fontsize=16,color="magenta"];3961[label="vx1820",fontsize=16,color="green",shape="box"];3962[label="vx1830",fontsize=16,color="green",shape="box"];3963 -> 3778[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3963[label="primModNatS (primMinusNatS (Succ vx180) (Succ (Succ vx181))) (Succ (Succ (Succ vx181)))",fontsize=16,color="magenta"];3963 -> 3965[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3963 -> 3966[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3964[label="Succ (Succ vx180)",fontsize=16,color="green",shape="box"];3965 -> 3682[label="",style="dashed", color="red", weight=0]; 162.75/105.96 3965[label="primMinusNatS (Succ vx180) (Succ (Succ vx181))",fontsize=16,color="magenta"];3965 -> 3967[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3965 -> 3968[label="",style="dashed", color="magenta", weight=3]; 162.75/105.96 3966[label="Succ (Succ vx181)",fontsize=16,color="green",shape="box"];3967[label="Succ (Succ vx181)",fontsize=16,color="green",shape="box"];3968[label="Succ vx180",fontsize=16,color="green",shape="box"];} 162.75/105.96 162.75/105.96 ---------------------------------------- 162.75/105.96 162.75/105.96 (684) 162.75/105.96 Obligation: 162.75/105.96 Q DP problem: 162.75/105.96 P is empty. 162.75/105.96 R is empty. 162.75/105.96 Q is empty. 162.75/105.96 We have to consider all (P,Q,R)-chains. 162.75/105.96 ---------------------------------------- 162.75/105.96 162.75/105.96 (685) PisEmptyProof (EQUIVALENT) 162.75/105.96 The TRS P is empty. Hence, there is no (P,Q,R) chain. 162.75/105.96 ---------------------------------------- 162.75/105.96 162.75/105.96 (686) 162.75/105.96 YES 162.75/106.00 EOF