64.81/34.08 MAYBE 64.81/34.09 proof of /export/starexec/sandbox2/benchmark/theBenchmark.hs 64.81/34.09 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 64.81/34.09 64.81/34.09 64.81/34.09 H-Termination with start terms of the given HASKELL could not be shown: 64.81/34.09 64.81/34.09 (0) HASKELL 64.81/34.09 (1) IFR [EQUIVALENT, 0 ms] 64.81/34.09 (2) HASKELL 64.81/34.09 (3) BR [EQUIVALENT, 0 ms] 64.81/34.09 (4) HASKELL 64.81/34.09 (5) COR [EQUIVALENT, 18 ms] 64.81/34.09 (6) HASKELL 64.81/34.09 (7) LetRed [EQUIVALENT, 0 ms] 64.81/34.09 (8) HASKELL 64.81/34.09 (9) NumRed [SOUND, 0 ms] 64.81/34.09 (10) HASKELL 64.81/34.09 (11) Narrow [SOUND, 0 ms] 64.81/34.09 (12) AND 64.81/34.09 (13) QDP 64.81/34.09 (14) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (15) QDP 64.81/34.09 (16) QDPSizeChangeProof [EQUIVALENT, 0 ms] 64.81/34.09 (17) YES 64.81/34.09 (18) QDP 64.81/34.09 (19) MNOCProof [EQUIVALENT, 0 ms] 64.81/34.09 (20) QDP 64.81/34.09 (21) NonTerminationLoopProof [COMPLETE, 0 ms] 64.81/34.09 (22) NO 64.81/34.09 (23) QDP 64.81/34.09 (24) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (25) QDP 64.81/34.09 (26) QDPSizeChangeProof [EQUIVALENT, 0 ms] 64.81/34.09 (27) YES 64.81/34.09 (28) QDP 64.81/34.09 (29) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (30) AND 64.81/34.09 (31) QDP 64.81/34.09 (32) MRRProof [EQUIVALENT, 1 ms] 64.81/34.09 (33) QDP 64.81/34.09 (34) PisEmptyProof [EQUIVALENT, 0 ms] 64.81/34.09 (35) YES 64.81/34.09 (36) QDP 64.81/34.09 (37) QDPSizeChangeProof [EQUIVALENT, 0 ms] 64.81/34.09 (38) YES 64.81/34.09 (39) QDP 64.81/34.09 (40) QDPSizeChangeProof [EQUIVALENT, 0 ms] 64.81/34.09 (41) YES 64.81/34.09 (42) QDP 64.81/34.09 (43) QDPSizeChangeProof [EQUIVALENT, 0 ms] 64.81/34.09 (44) YES 64.81/34.09 (45) QDP 64.81/34.09 (46) MNOCProof [EQUIVALENT, 0 ms] 64.81/34.09 (47) QDP 64.81/34.09 (48) InductionCalculusProof [EQUIVALENT, 0 ms] 64.81/34.09 (49) QDP 64.81/34.09 (50) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (51) QDP 64.81/34.09 (52) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (53) QDP 64.81/34.09 (54) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (55) QDP 64.81/34.09 (56) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (57) QDP 64.81/34.09 (58) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (59) QDP 64.81/34.09 (60) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (61) QDP 64.81/34.09 (62) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (63) QDP 64.81/34.09 (64) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (65) QDP 64.81/34.09 (66) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (67) QDP 64.81/34.09 (68) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (69) QDP 64.81/34.09 (70) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (71) QDP 64.81/34.09 (72) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (73) QDP 64.81/34.09 (74) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (75) QDP 64.81/34.09 (76) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (77) QDP 64.81/34.09 (78) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (79) QDP 64.81/34.09 (80) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (81) QDP 64.81/34.09 (82) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (83) QDP 64.81/34.09 (84) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (85) QDP 64.81/34.09 (86) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (87) QDP 64.81/34.09 (88) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (89) QDP 64.81/34.09 (90) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (91) QDP 64.81/34.09 (92) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (93) QDP 64.81/34.09 (94) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (95) QDP 64.81/34.09 (96) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (97) QDP 64.81/34.09 (98) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (99) QDP 64.81/34.09 (100) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (101) QDP 64.81/34.09 (102) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (103) QDP 64.81/34.09 (104) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (105) QDP 64.81/34.09 (106) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (107) QDP 64.81/34.09 (108) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (109) QDP 64.81/34.09 (110) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (111) QDP 64.81/34.09 (112) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (113) QDP 64.81/34.09 (114) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (115) QDP 64.81/34.09 (116) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (117) QDP 64.81/34.09 (118) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (119) QDP 64.81/34.09 (120) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (121) QDP 64.81/34.09 (122) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (123) QDP 64.81/34.09 (124) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (125) QDP 64.81/34.09 (126) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (127) QDP 64.81/34.09 (128) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (129) QDP 64.81/34.09 (130) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (131) QDP 64.81/34.09 (132) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (133) QDP 64.81/34.09 (134) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (135) QDP 64.81/34.09 (136) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (137) QDP 64.81/34.09 (138) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (139) QDP 64.81/34.09 (140) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (141) QDP 64.81/34.09 (142) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (143) QDP 64.81/34.09 (144) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (145) QDP 64.81/34.09 (146) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (147) QDP 64.81/34.09 (148) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (149) QDP 64.81/34.09 (150) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (151) QDP 64.81/34.09 (152) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (153) QDP 64.81/34.09 (154) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (155) QDP 64.81/34.09 (156) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (157) QDP 64.81/34.09 (158) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (159) QDP 64.81/34.09 (160) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (161) QDP 64.81/34.09 (162) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (163) QDP 64.81/34.09 (164) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (165) QDP 64.81/34.09 (166) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (167) QDP 64.81/34.09 (168) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (169) QDP 64.81/34.09 (170) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (171) QDP 64.81/34.09 (172) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (173) QDP 64.81/34.09 (174) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (175) QDP 64.81/34.09 (176) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (177) QDP 64.81/34.09 (178) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (179) QDP 64.81/34.09 (180) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (181) QDP 64.81/34.09 (182) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (183) QDP 64.81/34.09 (184) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (185) QDP 64.81/34.09 (186) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (187) QDP 64.81/34.09 (188) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (189) QDP 64.81/34.09 (190) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (191) QDP 64.81/34.09 (192) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (193) QDP 64.81/34.09 (194) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (195) QDP 64.81/34.09 (196) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (197) QDP 64.81/34.09 (198) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (199) QDP 64.81/34.09 (200) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (201) QDP 64.81/34.09 (202) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (203) QDP 64.81/34.09 (204) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (205) QDP 64.81/34.09 (206) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (207) QDP 64.81/34.09 (208) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (209) QDP 64.81/34.09 (210) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (211) QDP 64.81/34.09 (212) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (213) QDP 64.81/34.09 (214) TransformationProof [EQUIVALENT, 0 ms] 64.81/34.09 (215) QDP 64.81/34.09 (216) DependencyGraphProof [EQUIVALENT, 0 ms] 64.81/34.09 (217) QDP 64.81/34.09 (218) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (219) QDP 67.32/34.78 (220) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (221) QDP 67.32/34.78 (222) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (223) QDP 67.32/34.78 (224) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (225) QDP 67.32/34.78 (226) DependencyGraphProof [EQUIVALENT, 0 ms] 67.32/34.78 (227) QDP 67.32/34.78 (228) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (229) QDP 67.32/34.78 (230) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (231) QDP 67.32/34.78 (232) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (233) QDP 67.32/34.78 (234) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (235) QDP 67.32/34.78 (236) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (237) QDP 67.32/34.78 (238) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (239) QDP 67.32/34.78 (240) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (241) QDP 67.32/34.78 (242) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (243) QDP 67.32/34.78 (244) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (245) QDP 67.32/34.78 (246) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (247) QDP 67.32/34.78 (248) DependencyGraphProof [EQUIVALENT, 0 ms] 67.32/34.78 (249) QDP 67.32/34.78 (250) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (251) QDP 67.32/34.78 (252) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (253) QDP 67.32/34.78 (254) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (255) QDP 67.32/34.78 (256) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (257) QDP 67.32/34.78 (258) DependencyGraphProof [EQUIVALENT, 0 ms] 67.32/34.78 (259) QDP 67.32/34.78 (260) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (261) QDP 67.32/34.78 (262) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (263) QDP 67.32/34.78 (264) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (265) QDP 67.32/34.78 (266) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (267) QDP 67.32/34.78 (268) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (269) QDP 67.32/34.78 (270) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (271) QDP 67.32/34.78 (272) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (273) QDP 67.32/34.78 (274) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (275) QDP 67.32/34.78 (276) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (277) QDP 67.32/34.78 (278) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (279) QDP 67.32/34.78 (280) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (281) QDP 67.32/34.78 (282) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (283) QDP 67.32/34.78 (284) DependencyGraphProof [EQUIVALENT, 0 ms] 67.32/34.78 (285) QDP 67.32/34.78 (286) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (287) QDP 67.32/34.78 (288) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (289) QDP 67.32/34.78 (290) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (291) QDP 67.32/34.78 (292) TransformationProof [EQUIVALENT, 1 ms] 67.32/34.78 (293) QDP 67.32/34.78 (294) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (295) QDP 67.32/34.78 (296) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (297) QDP 67.32/34.78 (298) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (299) QDP 67.32/34.78 (300) DependencyGraphProof [EQUIVALENT, 0 ms] 67.32/34.78 (301) QDP 67.32/34.78 (302) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (303) QDP 67.32/34.78 (304) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (305) QDP 67.32/34.78 (306) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (307) QDP 67.32/34.78 (308) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (309) QDP 67.32/34.78 (310) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (311) QDP 67.32/34.78 (312) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (313) QDP 67.32/34.78 (314) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (315) QDP 67.32/34.78 (316) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (317) QDP 67.32/34.78 (318) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (319) QDP 67.32/34.78 (320) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (321) QDP 67.32/34.78 (322) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (323) QDP 67.32/34.78 (324) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (325) QDP 67.32/34.78 (326) DependencyGraphProof [EQUIVALENT, 0 ms] 67.32/34.78 (327) QDP 67.32/34.78 (328) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (329) QDP 67.32/34.78 (330) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (331) QDP 67.32/34.78 (332) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (333) QDP 67.32/34.78 (334) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (335) QDP 67.32/34.78 (336) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (337) QDP 67.32/34.78 (338) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (339) QDP 67.32/34.78 (340) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (341) QDP 67.32/34.78 (342) DependencyGraphProof [EQUIVALENT, 0 ms] 67.32/34.78 (343) QDP 67.32/34.78 (344) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (345) QDP 67.32/34.78 (346) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (347) QDP 67.32/34.78 (348) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (349) QDP 67.32/34.78 (350) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (351) QDP 67.32/34.78 (352) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (353) QDP 67.32/34.78 (354) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (355) QDP 67.32/34.78 (356) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (357) QDP 67.32/34.78 (358) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (359) QDP 67.32/34.78 (360) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (361) QDP 67.32/34.78 (362) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (363) QDP 67.32/34.78 (364) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (365) QDP 67.32/34.78 (366) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (367) QDP 67.32/34.78 (368) DependencyGraphProof [EQUIVALENT, 0 ms] 67.32/34.78 (369) QDP 67.32/34.78 (370) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (371) QDP 67.32/34.78 (372) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (373) QDP 67.32/34.78 (374) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (375) QDP 67.32/34.78 (376) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (377) QDP 67.32/34.78 (378) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (379) QDP 67.32/34.78 (380) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (381) QDP 67.32/34.78 (382) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (383) QDP 67.32/34.78 (384) DependencyGraphProof [EQUIVALENT, 0 ms] 67.32/34.78 (385) QDP 67.32/34.78 (386) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (387) QDP 67.32/34.78 (388) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (389) QDP 67.32/34.78 (390) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (391) QDP 67.32/34.78 (392) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (393) QDP 67.32/34.78 (394) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (395) QDP 67.32/34.78 (396) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (397) QDP 67.32/34.78 (398) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (399) QDP 67.32/34.78 (400) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (401) QDP 67.32/34.78 (402) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (403) QDP 67.32/34.78 (404) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (405) QDP 67.32/34.78 (406) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (407) QDP 67.32/34.78 (408) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (409) QDP 67.32/34.78 (410) DependencyGraphProof [EQUIVALENT, 0 ms] 67.32/34.78 (411) QDP 67.32/34.78 (412) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (413) QDP 67.32/34.78 (414) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (415) QDP 67.32/34.78 (416) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (417) QDP 67.32/34.78 (418) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (419) QDP 67.32/34.78 (420) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (421) QDP 67.32/34.78 (422) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (423) QDP 67.32/34.78 (424) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (425) QDP 67.32/34.78 (426) DependencyGraphProof [EQUIVALENT, 0 ms] 67.32/34.78 (427) QDP 67.32/34.78 (428) QDPOrderProof [EQUIVALENT, 88 ms] 67.32/34.78 (429) QDP 67.32/34.78 (430) MNOCProof [EQUIVALENT, 0 ms] 67.32/34.78 (431) QDP 67.32/34.78 (432) InductionCalculusProof [EQUIVALENT, 0 ms] 67.32/34.78 (433) QDP 67.32/34.78 (434) QDP 67.32/34.78 (435) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (436) QDP 67.32/34.78 (437) QDPSizeChangeProof [EQUIVALENT, 0 ms] 67.32/34.78 (438) YES 67.32/34.78 (439) QDP 67.32/34.78 (440) QDPSizeChangeProof [EQUIVALENT, 0 ms] 67.32/34.78 (441) YES 67.32/34.78 (442) QDP 67.32/34.78 (443) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (444) QDP 67.32/34.78 (445) QDPSizeChangeProof [EQUIVALENT, 0 ms] 67.32/34.78 (446) YES 67.32/34.78 (447) QDP 67.32/34.78 (448) DependencyGraphProof [EQUIVALENT, 0 ms] 67.32/34.78 (449) AND 67.32/34.78 (450) QDP 67.32/34.78 (451) QDPOrderProof [EQUIVALENT, 0 ms] 67.32/34.78 (452) QDP 67.32/34.78 (453) DependencyGraphProof [EQUIVALENT, 0 ms] 67.32/34.78 (454) QDP 67.32/34.78 (455) QDPSizeChangeProof [EQUIVALENT, 0 ms] 67.32/34.78 (456) YES 67.32/34.78 (457) QDP 67.32/34.78 (458) MRRProof [EQUIVALENT, 0 ms] 67.32/34.78 (459) QDP 67.32/34.78 (460) PisEmptyProof [EQUIVALENT, 0 ms] 67.32/34.78 (461) YES 67.32/34.78 (462) QDP 67.32/34.78 (463) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (464) QDP 67.32/34.78 (465) QDPSizeChangeProof [EQUIVALENT, 0 ms] 67.32/34.78 (466) YES 67.32/34.78 (467) QDP 67.32/34.78 (468) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (469) QDP 67.32/34.78 (470) QDPSizeChangeProof [EQUIVALENT, 0 ms] 67.32/34.78 (471) YES 67.32/34.78 (472) QDP 67.32/34.78 (473) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (474) QDP 67.32/34.78 (475) QDPSizeChangeProof [EQUIVALENT, 0 ms] 67.32/34.78 (476) YES 67.32/34.78 (477) QDP 67.32/34.78 (478) TransformationProof [EQUIVALENT, 0 ms] 67.32/34.78 (479) QDP 67.32/34.78 (480) QDPSizeChangeProof [EQUIVALENT, 0 ms] 67.32/34.78 (481) YES 67.32/34.78 (482) QDP 67.32/34.78 (483) QDPSizeChangeProof [EQUIVALENT, 0 ms] 67.32/34.78 (484) YES 67.32/34.78 (485) QDP 67.32/34.78 (486) QDPSizeChangeProof [EQUIVALENT, 0 ms] 67.32/34.78 (487) YES 67.32/34.78 (488) Narrow [COMPLETE, 0 ms] 67.32/34.78 (489) TRUE 67.32/34.78 67.32/34.78 67.32/34.78 ---------------------------------------- 67.32/34.78 67.32/34.78 (0) 67.32/34.78 Obligation: 67.32/34.78 mainModule Main 67.32/34.78 module Main where { 67.32/34.78 import qualified Prelude; 67.32/34.78 } 67.32/34.78 67.32/34.78 ---------------------------------------- 67.32/34.78 67.32/34.78 (1) IFR (EQUIVALENT) 67.32/34.78 If Reductions: 67.32/34.78 The following If expression 67.32/34.78 "if primGEqNatS x y then Succ (primDivNatS (primMinusNatS x y) (Succ y)) else Zero" 67.32/34.78 is transformed to 67.32/34.78 "primDivNatS0 x y True = Succ (primDivNatS (primMinusNatS x y) (Succ y)); 67.32/34.78 primDivNatS0 x y False = Zero; 67.32/34.78 " 67.32/34.78 The following If expression 67.32/34.78 "if primGEqNatS x y then primModNatS (primMinusNatS x y) (Succ y) else Succ x" 67.32/34.78 is transformed to 67.32/34.78 "primModNatS0 x y True = primModNatS (primMinusNatS x y) (Succ y); 67.32/34.78 primModNatS0 x y False = Succ x; 67.32/34.78 " 67.32/34.78 67.32/34.78 ---------------------------------------- 67.32/34.78 67.32/34.78 (2) 67.32/34.78 Obligation: 67.32/34.78 mainModule Main 67.32/34.78 module Main where { 67.32/34.78 import qualified Prelude; 67.32/34.78 } 67.32/34.78 67.32/34.78 ---------------------------------------- 67.32/34.78 67.32/34.78 (3) BR (EQUIVALENT) 67.32/34.78 Replaced joker patterns by fresh variables and removed binding patterns. 67.32/34.78 ---------------------------------------- 67.32/34.78 67.32/34.78 (4) 67.32/34.78 Obligation: 67.32/34.78 mainModule Main 67.32/34.78 module Main where { 67.32/34.78 import qualified Prelude; 67.32/34.78 } 67.32/34.78 67.32/34.78 ---------------------------------------- 67.32/34.78 67.32/34.78 (5) COR (EQUIVALENT) 67.32/34.78 Cond Reductions: 67.32/34.78 The following Function with conditions 67.32/34.78 "absReal x|x >= 0x|otherwise`negate` x; 67.32/34.78 " 67.32/34.78 is transformed to 67.32/34.78 "absReal x = absReal2 x; 67.32/34.78 " 67.32/34.78 "absReal1 x True = x; 67.32/34.78 absReal1 x False = absReal0 x otherwise; 67.32/34.78 " 67.32/34.78 "absReal0 x True = `negate` x; 67.32/34.78 " 67.32/34.78 "absReal2 x = absReal1 x (x >= 0); 67.32/34.78 " 67.32/34.78 The following Function with conditions 67.32/34.78 "gcd' x 0 = x; 67.32/34.78 gcd' x y = gcd' y (x `rem` y); 67.32/34.78 " 67.32/34.78 is transformed to 67.32/34.78 "gcd' x xz = gcd'2 x xz; 67.32/34.78 gcd' x y = gcd'0 x y; 67.32/34.78 " 67.32/34.78 "gcd'0 x y = gcd' y (x `rem` y); 67.32/34.78 " 67.32/34.78 "gcd'1 True x xz = x; 67.32/34.78 gcd'1 yu yv yw = gcd'0 yv yw; 67.32/34.78 " 67.32/34.78 "gcd'2 x xz = gcd'1 (xz == 0) x xz; 67.32/34.78 gcd'2 yx yy = gcd'0 yx yy; 67.32/34.78 " 67.32/34.78 The following Function with conditions 67.32/34.78 "gcd 0 0 = error []; 67.32/34.78 gcd x y = gcd' (abs x) (abs y) where { 67.32/34.78 gcd' x 0 = x; 67.32/34.78 gcd' x y = gcd' y (x `rem` y); 67.32/34.78 } 67.32/34.78 ; 67.32/34.78 " 67.32/34.78 is transformed to 67.32/34.78 "gcd yz zu = gcd3 yz zu; 67.32/34.78 gcd x y = gcd0 x y; 67.32/34.78 " 67.32/34.78 "gcd0 x y = gcd' (abs x) (abs y) where { 67.32/34.78 gcd' x xz = gcd'2 x xz; 67.32/34.78 gcd' x y = gcd'0 x y; 67.32/34.78 ; 67.32/34.78 gcd'0 x y = gcd' y (x `rem` y); 67.32/34.78 ; 67.32/34.78 gcd'1 True x xz = x; 67.32/34.78 gcd'1 yu yv yw = gcd'0 yv yw; 67.32/34.78 ; 67.32/34.78 gcd'2 x xz = gcd'1 (xz == 0) x xz; 67.32/34.78 gcd'2 yx yy = gcd'0 yx yy; 67.32/34.78 } 67.32/34.78 ; 67.32/34.78 " 67.32/34.78 "gcd1 True yz zu = error []; 67.32/34.78 gcd1 zv zw zx = gcd0 zw zx; 67.32/34.78 " 67.32/34.78 "gcd2 True yz zu = gcd1 (zu == 0) yz zu; 67.32/34.78 gcd2 zy zz vuu = gcd0 zz vuu; 67.32/34.78 " 67.32/34.78 "gcd3 yz zu = gcd2 (yz == 0) yz zu; 67.32/34.78 gcd3 vuv vuw = gcd0 vuv vuw; 67.32/34.78 " 67.32/34.78 The following Function with conditions 67.32/34.78 "undefined |Falseundefined; 67.32/34.78 " 67.32/34.78 is transformed to 67.32/34.78 "undefined = undefined1; 67.32/34.78 " 67.32/34.78 "undefined0 True = undefined; 67.32/34.78 " 67.32/34.78 "undefined1 = undefined0 False; 67.32/34.78 " 67.32/34.78 The following Function with conditions 67.32/34.78 "reduce x y|y == 0error []|otherwisex `quot` d :% (y `quot` d) where { 67.32/34.78 d = gcd x y; 67.32/34.78 } 67.32/34.78 ; 67.32/34.78 " 67.32/34.78 is transformed to 67.32/34.78 "reduce x y = reduce2 x y; 67.32/34.78 " 67.32/34.78 "reduce2 x y = reduce1 x y (y == 0) where { 67.32/34.78 d = gcd x y; 67.32/34.78 ; 67.32/34.78 reduce0 x y True = x `quot` d :% (y `quot` d); 67.32/34.78 ; 67.32/34.78 reduce1 x y True = error []; 67.32/34.78 reduce1 x y False = reduce0 x y otherwise; 67.32/34.78 } 67.32/34.78 ; 67.32/34.78 " 67.32/34.78 67.32/34.78 ---------------------------------------- 67.32/34.78 67.32/34.78 (6) 67.32/34.78 Obligation: 67.32/34.78 mainModule Main 67.32/34.78 module Main where { 67.32/34.78 import qualified Prelude; 67.32/34.78 } 67.32/34.78 67.32/34.78 ---------------------------------------- 67.32/34.78 67.32/34.78 (7) LetRed (EQUIVALENT) 67.32/34.78 Let/Where Reductions: 67.32/34.78 The bindings of the following Let/Where expression 67.32/34.78 "gcd' (abs x) (abs y) where { 67.32/34.78 gcd' x xz = gcd'2 x xz; 67.32/34.78 gcd' x y = gcd'0 x y; 67.32/34.78 ; 67.32/34.78 gcd'0 x y = gcd' y (x `rem` y); 67.32/34.78 ; 67.32/34.78 gcd'1 True x xz = x; 67.32/34.78 gcd'1 yu yv yw = gcd'0 yv yw; 67.32/34.78 ; 67.32/34.78 gcd'2 x xz = gcd'1 (xz == 0) x xz; 67.32/34.78 gcd'2 yx yy = gcd'0 yx yy; 67.32/34.78 } 67.32/34.78 " 67.32/34.78 are unpacked to the following functions on top level 67.32/34.78 "gcd0Gcd'2 x xz = gcd0Gcd'1 (xz == 0) x xz; 67.32/34.78 gcd0Gcd'2 yx yy = gcd0Gcd'0 yx yy; 67.32/34.78 " 67.32/34.78 "gcd0Gcd'1 True x xz = x; 67.32/34.78 gcd0Gcd'1 yu yv yw = gcd0Gcd'0 yv yw; 67.32/34.78 " 67.32/34.78 "gcd0Gcd'0 x y = gcd0Gcd' y (x `rem` y); 67.32/34.78 " 67.32/34.78 "gcd0Gcd' x xz = gcd0Gcd'2 x xz; 67.32/34.78 gcd0Gcd' x y = gcd0Gcd'0 x y; 67.32/34.78 " 67.32/34.78 The bindings of the following Let/Where expression 67.32/34.78 "reduce1 x y (y == 0) where { 67.32/34.78 d = gcd x y; 67.32/34.78 ; 67.32/34.78 reduce0 x y True = x `quot` d :% (y `quot` d); 67.32/34.78 ; 67.32/34.78 reduce1 x y True = error []; 67.32/34.78 reduce1 x y False = reduce0 x y otherwise; 67.32/34.78 } 67.32/34.78 " 67.32/34.78 are unpacked to the following functions on top level 67.32/34.78 "reduce2Reduce1 vux vuy x y True = error []; 67.32/34.78 reduce2Reduce1 vux vuy x y False = reduce2Reduce0 vux vuy x y otherwise; 67.32/34.78 " 67.32/34.78 "reduce2Reduce0 vux vuy x y True = x `quot` reduce2D vux vuy :% (y `quot` reduce2D vux vuy); 67.32/34.78 " 67.32/34.78 "reduce2D vux vuy = gcd vux vuy; 67.32/34.78 " 67.32/34.78 67.32/34.78 ---------------------------------------- 67.32/34.78 67.32/34.78 (8) 67.32/34.78 Obligation: 67.32/34.78 mainModule Main 67.32/34.78 module Main where { 67.32/34.78 import qualified Prelude; 67.32/34.78 } 67.32/34.78 67.32/34.78 ---------------------------------------- 67.32/34.78 67.32/34.78 (9) NumRed (SOUND) 67.32/34.78 Num Reduction:All numbers are transformed to their corresponding representation with Succ, Pred and Zero. 67.32/34.78 ---------------------------------------- 67.32/34.78 67.32/34.78 (10) 67.32/34.78 Obligation: 67.32/34.78 mainModule Main 67.32/34.78 module Main where { 67.32/34.78 import qualified Prelude; 67.32/34.78 } 67.32/34.78 67.32/34.78 ---------------------------------------- 67.32/34.78 67.32/34.78 (11) Narrow (SOUND) 67.32/34.78 Haskell To QDPs 67.32/34.78 67.32/34.78 digraph dp_graph { 67.32/34.78 node [outthreshold=100, inthreshold=100];1[label="enumFromThen",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 67.32/34.78 3[label="enumFromThen vuz3",fontsize=16,color="grey",shape="box"];3 -> 4[label="",style="dashed", color="grey", weight=3]; 67.32/34.78 4[label="enumFromThen vuz3 vuz4",fontsize=16,color="black",shape="triangle"];4 -> 5[label="",style="solid", color="black", weight=3]; 67.32/34.78 5[label="numericEnumFromThen vuz3 vuz4",fontsize=16,color="black",shape="box"];5 -> 6[label="",style="solid", color="black", weight=3]; 67.32/34.78 6[label="iterate (vuz4 - vuz3 +) vuz3",fontsize=16,color="black",shape="box"];6 -> 7[label="",style="solid", color="black", weight=3]; 67.32/34.78 7[label="vuz3 : iterate (vuz4 - vuz3 +) (vuz4 - vuz3 + vuz3)",fontsize=16,color="green",shape="box"];7 -> 8[label="",style="dashed", color="green", weight=3]; 67.32/34.78 8 -> 13[label="",style="dashed", color="red", weight=0]; 67.32/34.78 8[label="iterate (vuz4 - vuz3 +) (vuz4 - vuz3 + vuz3)",fontsize=16,color="magenta"];8 -> 14[label="",style="dashed", color="magenta", weight=3]; 67.32/34.78 14[label="vuz3",fontsize=16,color="green",shape="box"];13[label="iterate (vuz4 - vuz3 +) (vuz4 - vuz3 + vuz5)",fontsize=16,color="black",shape="triangle"];13 -> 16[label="",style="solid", color="black", weight=3]; 67.32/34.78 16[label="vuz4 - vuz3 + vuz5 : iterate (vuz4 - vuz3 +) (vuz4 - vuz3 + (vuz4 - vuz3 + vuz5))",fontsize=16,color="green",shape="box"];16 -> 17[label="",style="dashed", color="green", weight=3]; 67.32/34.78 16 -> 18[label="",style="dashed", color="green", weight=3]; 67.32/34.78 17[label="vuz4 - vuz3 + vuz5",fontsize=16,color="black",shape="box"];17 -> 5645[label="",style="solid", color="black", weight=3]; 67.32/34.78 18 -> 13[label="",style="dashed", color="red", weight=0]; 67.32/34.78 18[label="iterate (vuz4 - vuz3 +) (vuz4 - vuz3 + (vuz4 - vuz3 + vuz5))",fontsize=16,color="magenta"];18 -> 20[label="",style="dashed", color="magenta", weight=3]; 67.32/34.78 5645 -> 5329[label="",style="dashed", color="red", weight=0]; 67.32/34.78 5645[label="vuz4 + (negate vuz3) + vuz5",fontsize=16,color="magenta"];5645 -> 6517[label="",style="dashed", color="magenta", weight=3]; 67.32/34.78 5645 -> 6518[label="",style="dashed", color="magenta", weight=3]; 67.32/34.78 20[label="vuz4 - vuz3 + vuz5",fontsize=16,color="black",shape="box"];20 -> 5425[label="",style="solid", color="black", weight=3]; 67.32/34.78 6517[label="vuz5",fontsize=16,color="green",shape="box"];6518 -> 5329[label="",style="dashed", color="red", weight=0]; 67.32/34.78 6518[label="vuz4 + (negate vuz3)",fontsize=16,color="magenta"];6518 -> 7106[label="",style="dashed", color="magenta", weight=3]; 67.32/34.78 6518 -> 7107[label="",style="dashed", color="magenta", weight=3]; 67.32/34.78 5329[label="vuz306 + vuz307",fontsize=16,color="burlywood",shape="triangle"];10820[label="vuz306/vuz3060 :% vuz3061",fontsize=10,color="white",style="solid",shape="box"];5329 -> 10820[label="",style="solid", color="burlywood", weight=9]; 67.32/34.78 10820 -> 5964[label="",style="solid", color="burlywood", weight=3]; 67.32/34.78 5425 -> 5329[label="",style="dashed", color="red", weight=0]; 67.32/34.78 5425[label="vuz4 + (negate vuz3) + vuz5",fontsize=16,color="magenta"];5425 -> 6125[label="",style="dashed", color="magenta", weight=3]; 67.32/34.78 5425 -> 6126[label="",style="dashed", color="magenta", weight=3]; 67.32/34.78 7106[label="negate vuz3",fontsize=16,color="burlywood",shape="triangle"];10821[label="vuz3/vuz30 :% vuz31",fontsize=10,color="white",style="solid",shape="box"];7106 -> 10821[label="",style="solid", color="burlywood", weight=9]; 67.32/34.78 10821 -> 7111[label="",style="solid", color="burlywood", weight=3]; 67.32/34.78 7107[label="vuz4",fontsize=16,color="green",shape="box"];5964[label="vuz3060 :% vuz3061 + vuz307",fontsize=16,color="burlywood",shape="box"];10822[label="vuz307/vuz3070 :% vuz3071",fontsize=10,color="white",style="solid",shape="box"];5964 -> 10822[label="",style="solid", color="burlywood", weight=9]; 67.32/34.78 10822 -> 7081[label="",style="solid", color="burlywood", weight=3]; 67.32/34.78 6125[label="vuz5",fontsize=16,color="green",shape="box"];6126 -> 5329[label="",style="dashed", color="red", weight=0]; 67.32/34.78 6126[label="vuz4 + (negate vuz3)",fontsize=16,color="magenta"];6126 -> 7108[label="",style="dashed", color="magenta", weight=3]; 67.32/34.78 6126 -> 7109[label="",style="dashed", color="magenta", weight=3]; 67.32/34.78 7111[label="negate vuz30 :% vuz31",fontsize=16,color="black",shape="box"];7111 -> 7113[label="",style="solid", color="black", weight=3]; 67.32/34.78 7081[label="vuz3060 :% vuz3061 + vuz3070 :% vuz3071",fontsize=16,color="black",shape="box"];7081 -> 7110[label="",style="solid", color="black", weight=3]; 67.32/34.78 7108 -> 7106[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7108[label="negate vuz3",fontsize=16,color="magenta"];7109[label="vuz4",fontsize=16,color="green",shape="box"];7113[label="(negate vuz30) :% vuz31",fontsize=16,color="green",shape="box"];7113 -> 7115[label="",style="dashed", color="green", weight=3]; 67.32/34.79 7110[label="reduce (vuz3060 * vuz3071 + vuz3070 * vuz3061) (vuz3061 * vuz3071)",fontsize=16,color="black",shape="box"];7110 -> 7112[label="",style="solid", color="black", weight=3]; 67.32/34.79 7115[label="negate vuz30",fontsize=16,color="black",shape="triangle"];7115 -> 7122[label="",style="solid", color="black", weight=3]; 67.32/34.79 7112[label="reduce2 (vuz3060 * vuz3071 + vuz3070 * vuz3061) (vuz3061 * vuz3071)",fontsize=16,color="black",shape="box"];7112 -> 7114[label="",style="solid", color="black", weight=3]; 67.32/34.79 7122[label="primNegInt vuz30",fontsize=16,color="burlywood",shape="box"];10823[label="vuz30/Pos vuz300",fontsize=10,color="white",style="solid",shape="box"];7122 -> 10823[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10823 -> 7127[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10824[label="vuz30/Neg vuz300",fontsize=10,color="white",style="solid",shape="box"];7122 -> 10824[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10824 -> 7128[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7114 -> 7116[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7114[label="reduce2Reduce1 (vuz3060 * vuz3071 + vuz3070 * vuz3061) (vuz3061 * vuz3071) (vuz3060 * vuz3071 + vuz3070 * vuz3061) (vuz3061 * vuz3071) (vuz3061 * vuz3071 == fromInt (Pos Zero))",fontsize=16,color="magenta"];7114 -> 7117[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7114 -> 7118[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7114 -> 7119[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7114 -> 7120[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7114 -> 7121[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7127[label="primNegInt (Pos vuz300)",fontsize=16,color="black",shape="box"];7127 -> 7133[label="",style="solid", color="black", weight=3]; 67.32/34.79 7128[label="primNegInt (Neg vuz300)",fontsize=16,color="black",shape="box"];7128 -> 7134[label="",style="solid", color="black", weight=3]; 67.32/34.79 7117[label="vuz3061 * vuz3071 == fromInt (Pos Zero)",fontsize=16,color="blue",shape="box"];10825[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];7117 -> 10825[label="",style="solid", color="blue", weight=9]; 67.32/34.79 10825 -> 7123[label="",style="solid", color="blue", weight=3]; 67.32/34.79 10826[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];7117 -> 10826[label="",style="solid", color="blue", weight=9]; 67.32/34.79 10826 -> 7124[label="",style="solid", color="blue", weight=3]; 67.32/34.79 7118[label="vuz3060",fontsize=16,color="green",shape="box"];7119[label="vuz3071",fontsize=16,color="green",shape="box"];7120[label="vuz3061",fontsize=16,color="green",shape="box"];7121[label="vuz3070",fontsize=16,color="green",shape="box"];7116[label="reduce2Reduce1 (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) vuz320",fontsize=16,color="burlywood",shape="triangle"];10827[label="vuz320/False",fontsize=10,color="white",style="solid",shape="box"];7116 -> 10827[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10827 -> 7125[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10828[label="vuz320/True",fontsize=10,color="white",style="solid",shape="box"];7116 -> 10828[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10828 -> 7126[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7133[label="Neg vuz300",fontsize=16,color="green",shape="box"];7134[label="Pos vuz300",fontsize=16,color="green",shape="box"];7123 -> 9987[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7123[label="vuz3061 * vuz3071 == fromInt (Pos Zero)",fontsize=16,color="magenta"];7123 -> 9988[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7124[label="vuz3061 * vuz3071 == fromInt (Pos Zero)",fontsize=16,color="black",shape="box"];7124 -> 7130[label="",style="solid", color="black", weight=3]; 67.32/34.79 7125[label="reduce2Reduce1 (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) False",fontsize=16,color="black",shape="box"];7125 -> 7131[label="",style="solid", color="black", weight=3]; 67.32/34.79 7126[label="reduce2Reduce1 (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) True",fontsize=16,color="black",shape="box"];7126 -> 7132[label="",style="solid", color="black", weight=3]; 67.32/34.79 9988[label="vuz3061 * vuz3071",fontsize=16,color="black",shape="triangle"];9988 -> 10015[label="",style="solid", color="black", weight=3]; 67.32/34.79 9987[label="vuz551 == fromInt (Pos Zero)",fontsize=16,color="black",shape="triangle"];9987 -> 10016[label="",style="solid", color="black", weight=3]; 67.32/34.79 7130[label="error []",fontsize=16,color="red",shape="box"];7131[label="reduce2Reduce0 (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) otherwise",fontsize=16,color="black",shape="box"];7131 -> 7136[label="",style="solid", color="black", weight=3]; 67.32/34.79 7132[label="error []",fontsize=16,color="black",shape="box"];7132 -> 7137[label="",style="solid", color="black", weight=3]; 67.32/34.79 10015[label="primMulInt vuz3061 vuz3071",fontsize=16,color="burlywood",shape="box"];10829[label="vuz3061/Pos vuz30610",fontsize=10,color="white",style="solid",shape="box"];10015 -> 10829[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10829 -> 10168[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10830[label="vuz3061/Neg vuz30610",fontsize=10,color="white",style="solid",shape="box"];10015 -> 10830[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10830 -> 10169[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10016[label="primEqInt vuz551 (fromInt (Pos Zero))",fontsize=16,color="burlywood",shape="box"];10831[label="vuz551/Pos vuz5510",fontsize=10,color="white",style="solid",shape="box"];10016 -> 10831[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10831 -> 10170[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10832[label="vuz551/Neg vuz5510",fontsize=10,color="white",style="solid",shape="box"];10016 -> 10832[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10832 -> 10171[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7136[label="reduce2Reduce0 (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) True",fontsize=16,color="black",shape="box"];7136 -> 7140[label="",style="solid", color="black", weight=3]; 67.32/34.79 7137[label="error []",fontsize=16,color="red",shape="box"];10168[label="primMulInt (Pos vuz30610) vuz3071",fontsize=16,color="burlywood",shape="box"];10833[label="vuz3071/Pos vuz30710",fontsize=10,color="white",style="solid",shape="box"];10168 -> 10833[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10833 -> 10194[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10834[label="vuz3071/Neg vuz30710",fontsize=10,color="white",style="solid",shape="box"];10168 -> 10834[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10834 -> 10195[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10169[label="primMulInt (Neg vuz30610) vuz3071",fontsize=16,color="burlywood",shape="box"];10835[label="vuz3071/Pos vuz30710",fontsize=10,color="white",style="solid",shape="box"];10169 -> 10835[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10835 -> 10196[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10836[label="vuz3071/Neg vuz30710",fontsize=10,color="white",style="solid",shape="box"];10169 -> 10836[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10836 -> 10197[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10170[label="primEqInt (Pos vuz5510) (fromInt (Pos Zero))",fontsize=16,color="burlywood",shape="box"];10837[label="vuz5510/Succ vuz55100",fontsize=10,color="white",style="solid",shape="box"];10170 -> 10837[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10837 -> 10198[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10838[label="vuz5510/Zero",fontsize=10,color="white",style="solid",shape="box"];10170 -> 10838[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10838 -> 10199[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10171[label="primEqInt (Neg vuz5510) (fromInt (Pos Zero))",fontsize=16,color="burlywood",shape="box"];10839[label="vuz5510/Succ vuz55100",fontsize=10,color="white",style="solid",shape="box"];10171 -> 10839[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10839 -> 10200[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10840[label="vuz5510/Zero",fontsize=10,color="white",style="solid",shape="box"];10171 -> 10840[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10840 -> 10201[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7140[label="(vuz316 * vuz317 + vuz318 * vuz319) `quot` reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) :% (vuz319 * vuz317 `quot` reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317))",fontsize=16,color="green",shape="box"];7140 -> 7145[label="",style="dashed", color="green", weight=3]; 67.32/34.79 7140 -> 7146[label="",style="dashed", color="green", weight=3]; 67.32/34.79 10194[label="primMulInt (Pos vuz30610) (Pos vuz30710)",fontsize=16,color="black",shape="box"];10194 -> 10238[label="",style="solid", color="black", weight=3]; 67.32/34.79 10195[label="primMulInt (Pos vuz30610) (Neg vuz30710)",fontsize=16,color="black",shape="box"];10195 -> 10239[label="",style="solid", color="black", weight=3]; 67.32/34.79 10196[label="primMulInt (Neg vuz30610) (Pos vuz30710)",fontsize=16,color="black",shape="box"];10196 -> 10240[label="",style="solid", color="black", weight=3]; 67.32/34.79 10197[label="primMulInt (Neg vuz30610) (Neg vuz30710)",fontsize=16,color="black",shape="box"];10197 -> 10241[label="",style="solid", color="black", weight=3]; 67.32/34.79 10198[label="primEqInt (Pos (Succ vuz55100)) (fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];10198 -> 10242[label="",style="solid", color="black", weight=3]; 67.32/34.79 10199[label="primEqInt (Pos Zero) (fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];10199 -> 10243[label="",style="solid", color="black", weight=3]; 67.32/34.79 10200[label="primEqInt (Neg (Succ vuz55100)) (fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];10200 -> 10244[label="",style="solid", color="black", weight=3]; 67.32/34.79 10201[label="primEqInt (Neg Zero) (fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];10201 -> 10245[label="",style="solid", color="black", weight=3]; 67.32/34.79 7145[label="(vuz316 * vuz317 + vuz318 * vuz319) `quot` reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317)",fontsize=16,color="blue",shape="box"];10841[label="`quot` :: Integer -> Integer -> Integer",fontsize=10,color="white",style="solid",shape="box"];7145 -> 10841[label="",style="solid", color="blue", weight=9]; 67.32/34.79 10841 -> 7151[label="",style="solid", color="blue", weight=3]; 67.32/34.79 10842[label="`quot` :: Int -> Int -> Int",fontsize=10,color="white",style="solid",shape="box"];7145 -> 10842[label="",style="solid", color="blue", weight=9]; 67.32/34.79 10842 -> 7152[label="",style="solid", color="blue", weight=3]; 67.32/34.79 7146[label="vuz319 * vuz317 `quot` reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317)",fontsize=16,color="blue",shape="box"];10843[label="`quot` :: Integer -> Integer -> Integer",fontsize=10,color="white",style="solid",shape="box"];7146 -> 10843[label="",style="solid", color="blue", weight=9]; 67.32/34.79 10843 -> 7153[label="",style="solid", color="blue", weight=3]; 67.32/34.79 10844[label="`quot` :: Int -> Int -> Int",fontsize=10,color="white",style="solid",shape="box"];7146 -> 10844[label="",style="solid", color="blue", weight=9]; 67.32/34.79 10844 -> 7154[label="",style="solid", color="blue", weight=3]; 67.32/34.79 10238[label="Pos (primMulNat vuz30610 vuz30710)",fontsize=16,color="green",shape="box"];10238 -> 10260[label="",style="dashed", color="green", weight=3]; 67.32/34.79 10239[label="Neg (primMulNat vuz30610 vuz30710)",fontsize=16,color="green",shape="box"];10239 -> 10261[label="",style="dashed", color="green", weight=3]; 67.32/34.79 10240[label="Neg (primMulNat vuz30610 vuz30710)",fontsize=16,color="green",shape="box"];10240 -> 10262[label="",style="dashed", color="green", weight=3]; 67.32/34.79 10241[label="Pos (primMulNat vuz30610 vuz30710)",fontsize=16,color="green",shape="box"];10241 -> 10263[label="",style="dashed", color="green", weight=3]; 67.32/34.79 10242 -> 7519[label="",style="dashed", color="red", weight=0]; 67.32/34.79 10242[label="primEqInt (Pos (Succ vuz55100)) (Pos Zero)",fontsize=16,color="magenta"];10242 -> 10264[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 10243 -> 7520[label="",style="dashed", color="red", weight=0]; 67.32/34.79 10243[label="primEqInt (Pos Zero) (Pos Zero)",fontsize=16,color="magenta"];10244 -> 7526[label="",style="dashed", color="red", weight=0]; 67.32/34.79 10244[label="primEqInt (Neg (Succ vuz55100)) (Pos Zero)",fontsize=16,color="magenta"];10244 -> 10265[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 10245 -> 7527[label="",style="dashed", color="red", weight=0]; 67.32/34.79 10245[label="primEqInt (Neg Zero) (Pos Zero)",fontsize=16,color="magenta"];7151[label="(vuz316 * vuz317 + vuz318 * vuz319) `quot` reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317)",fontsize=16,color="black",shape="box"];7151 -> 7163[label="",style="solid", color="black", weight=3]; 67.32/34.79 7152[label="(vuz316 * vuz317 + vuz318 * vuz319) `quot` reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317)",fontsize=16,color="black",shape="box"];7152 -> 7164[label="",style="solid", color="black", weight=3]; 67.32/34.79 7153[label="vuz319 * vuz317 `quot` reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317)",fontsize=16,color="black",shape="box"];7153 -> 7165[label="",style="solid", color="black", weight=3]; 67.32/34.79 7154[label="vuz319 * vuz317 `quot` reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317)",fontsize=16,color="black",shape="box"];7154 -> 7166[label="",style="solid", color="black", weight=3]; 67.32/34.79 10260 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 10260[label="primMulNat vuz30610 vuz30710",fontsize=16,color="magenta"];10261 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 10261[label="primMulNat vuz30610 vuz30710",fontsize=16,color="magenta"];10261 -> 10279[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 10262 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 10262[label="primMulNat vuz30610 vuz30710",fontsize=16,color="magenta"];10262 -> 10280[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 10263 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 10263[label="primMulNat vuz30610 vuz30710",fontsize=16,color="magenta"];10263 -> 10281[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 10263 -> 10282[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 10264[label="vuz55100",fontsize=16,color="green",shape="box"];7519[label="primEqInt (Pos (Succ vuz3250)) (Pos Zero)",fontsize=16,color="black",shape="triangle"];7519 -> 7532[label="",style="solid", color="black", weight=3]; 67.32/34.79 7520[label="primEqInt (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="triangle"];7520 -> 7533[label="",style="solid", color="black", weight=3]; 67.32/34.79 10265[label="vuz55100",fontsize=16,color="green",shape="box"];7526[label="primEqInt (Neg (Succ vuz3260)) (Pos Zero)",fontsize=16,color="black",shape="triangle"];7526 -> 7547[label="",style="solid", color="black", weight=3]; 67.32/34.79 7527[label="primEqInt (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="triangle"];7527 -> 7548[label="",style="solid", color="black", weight=3]; 67.32/34.79 7163[label="error []",fontsize=16,color="red",shape="box"];7164[label="primQuotInt (vuz316 * vuz317 + vuz318 * vuz319) (reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317))",fontsize=16,color="black",shape="box"];7164 -> 7175[label="",style="solid", color="black", weight=3]; 67.32/34.79 7165[label="error []",fontsize=16,color="red",shape="box"];7166[label="primQuotInt (vuz319 * vuz317) (reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317))",fontsize=16,color="black",shape="box"];7166 -> 7176[label="",style="solid", color="black", weight=3]; 67.32/34.79 7480[label="primMulNat vuz30610 vuz30710",fontsize=16,color="burlywood",shape="triangle"];10845[label="vuz30610/Succ vuz306100",fontsize=10,color="white",style="solid",shape="box"];7480 -> 10845[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10845 -> 7492[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10846[label="vuz30610/Zero",fontsize=10,color="white",style="solid",shape="box"];7480 -> 10846[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10846 -> 7493[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10279[label="vuz30710",fontsize=16,color="green",shape="box"];10280[label="vuz30610",fontsize=16,color="green",shape="box"];10281[label="vuz30610",fontsize=16,color="green",shape="box"];10282[label="vuz30710",fontsize=16,color="green",shape="box"];7532[label="False",fontsize=16,color="green",shape="box"];7533[label="True",fontsize=16,color="green",shape="box"];7547[label="False",fontsize=16,color="green",shape="box"];7548[label="True",fontsize=16,color="green",shape="box"];7175[label="primQuotInt (primPlusInt (vuz316 * vuz317) (vuz318 * vuz319)) (reduce2D (primPlusInt (vuz316 * vuz317) (vuz318 * vuz319)) (vuz319 * vuz317))",fontsize=16,color="black",shape="box"];7175 -> 7185[label="",style="solid", color="black", weight=3]; 67.32/34.79 7176[label="primQuotInt (primMulInt vuz319 vuz317) (reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (primMulInt vuz319 vuz317))",fontsize=16,color="burlywood",shape="box"];10847[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7176 -> 10847[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10847 -> 7186[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10848[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7176 -> 10848[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10848 -> 7187[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7492[label="primMulNat (Succ vuz306100) vuz30710",fontsize=16,color="burlywood",shape="box"];10849[label="vuz30710/Succ vuz307100",fontsize=10,color="white",style="solid",shape="box"];7492 -> 10849[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10849 -> 7515[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10850[label="vuz30710/Zero",fontsize=10,color="white",style="solid",shape="box"];7492 -> 10850[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10850 -> 7516[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7493[label="primMulNat Zero vuz30710",fontsize=16,color="burlywood",shape="box"];10851[label="vuz30710/Succ vuz307100",fontsize=10,color="white",style="solid",shape="box"];7493 -> 10851[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10851 -> 7517[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10852[label="vuz30710/Zero",fontsize=10,color="white",style="solid",shape="box"];7493 -> 10852[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10852 -> 7518[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7185[label="primQuotInt (primPlusInt (primMulInt vuz316 vuz317) (vuz318 * vuz319)) (reduce2D (primPlusInt (primMulInt vuz316 vuz317) (vuz318 * vuz319)) (vuz319 * vuz317))",fontsize=16,color="burlywood",shape="box"];10853[label="vuz316/Pos vuz3160",fontsize=10,color="white",style="solid",shape="box"];7185 -> 10853[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10853 -> 7194[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10854[label="vuz316/Neg vuz3160",fontsize=10,color="white",style="solid",shape="box"];7185 -> 10854[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10854 -> 7195[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7186[label="primQuotInt (primMulInt (Pos vuz3190) vuz317) (reduce2D (vuz316 * vuz317 + vuz318 * Pos vuz3190) (primMulInt (Pos vuz3190) vuz317))",fontsize=16,color="burlywood",shape="box"];10855[label="vuz317/Pos vuz3170",fontsize=10,color="white",style="solid",shape="box"];7186 -> 10855[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10855 -> 7196[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10856[label="vuz317/Neg vuz3170",fontsize=10,color="white",style="solid",shape="box"];7186 -> 10856[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10856 -> 7197[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7187[label="primQuotInt (primMulInt (Neg vuz3190) vuz317) (reduce2D (vuz316 * vuz317 + vuz318 * Neg vuz3190) (primMulInt (Neg vuz3190) vuz317))",fontsize=16,color="burlywood",shape="box"];10857[label="vuz317/Pos vuz3170",fontsize=10,color="white",style="solid",shape="box"];7187 -> 10857[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10857 -> 7198[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10858[label="vuz317/Neg vuz3170",fontsize=10,color="white",style="solid",shape="box"];7187 -> 10858[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10858 -> 7199[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7515[label="primMulNat (Succ vuz306100) (Succ vuz307100)",fontsize=16,color="black",shape="box"];7515 -> 7528[label="",style="solid", color="black", weight=3]; 67.32/34.79 7516[label="primMulNat (Succ vuz306100) Zero",fontsize=16,color="black",shape="box"];7516 -> 7529[label="",style="solid", color="black", weight=3]; 67.32/34.79 7517[label="primMulNat Zero (Succ vuz307100)",fontsize=16,color="black",shape="box"];7517 -> 7530[label="",style="solid", color="black", weight=3]; 67.32/34.79 7518[label="primMulNat Zero Zero",fontsize=16,color="black",shape="box"];7518 -> 7531[label="",style="solid", color="black", weight=3]; 67.32/34.79 7194[label="primQuotInt (primPlusInt (primMulInt (Pos vuz3160) vuz317) (vuz318 * vuz319)) (reduce2D (primPlusInt (primMulInt (Pos vuz3160) vuz317) (vuz318 * vuz319)) (vuz319 * vuz317))",fontsize=16,color="burlywood",shape="box"];10859[label="vuz317/Pos vuz3170",fontsize=10,color="white",style="solid",shape="box"];7194 -> 10859[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10859 -> 7206[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10860[label="vuz317/Neg vuz3170",fontsize=10,color="white",style="solid",shape="box"];7194 -> 10860[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10860 -> 7207[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7195[label="primQuotInt (primPlusInt (primMulInt (Neg vuz3160) vuz317) (vuz318 * vuz319)) (reduce2D (primPlusInt (primMulInt (Neg vuz3160) vuz317) (vuz318 * vuz319)) (vuz319 * vuz317))",fontsize=16,color="burlywood",shape="box"];10861[label="vuz317/Pos vuz3170",fontsize=10,color="white",style="solid",shape="box"];7195 -> 10861[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10861 -> 7208[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10862[label="vuz317/Neg vuz3170",fontsize=10,color="white",style="solid",shape="box"];7195 -> 10862[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10862 -> 7209[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7196[label="primQuotInt (primMulInt (Pos vuz3190) (Pos vuz3170)) (reduce2D (vuz316 * Pos vuz3170 + vuz318 * Pos vuz3190) (primMulInt (Pos vuz3190) (Pos vuz3170)))",fontsize=16,color="black",shape="box"];7196 -> 7210[label="",style="solid", color="black", weight=3]; 67.32/34.79 7197[label="primQuotInt (primMulInt (Pos vuz3190) (Neg vuz3170)) (reduce2D (vuz316 * Neg vuz3170 + vuz318 * Pos vuz3190) (primMulInt (Pos vuz3190) (Neg vuz3170)))",fontsize=16,color="black",shape="box"];7197 -> 7211[label="",style="solid", color="black", weight=3]; 67.32/34.79 7198[label="primQuotInt (primMulInt (Neg vuz3190) (Pos vuz3170)) (reduce2D (vuz316 * Pos vuz3170 + vuz318 * Neg vuz3190) (primMulInt (Neg vuz3190) (Pos vuz3170)))",fontsize=16,color="black",shape="box"];7198 -> 7212[label="",style="solid", color="black", weight=3]; 67.32/34.79 7199[label="primQuotInt (primMulInt (Neg vuz3190) (Neg vuz3170)) (reduce2D (vuz316 * Neg vuz3170 + vuz318 * Neg vuz3190) (primMulInt (Neg vuz3190) (Neg vuz3170)))",fontsize=16,color="black",shape="box"];7199 -> 7213[label="",style="solid", color="black", weight=3]; 67.32/34.79 7528 -> 7549[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7528[label="primPlusNat (primMulNat vuz306100 (Succ vuz307100)) (Succ vuz307100)",fontsize=16,color="magenta"];7528 -> 7550[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7529[label="Zero",fontsize=16,color="green",shape="box"];7530[label="Zero",fontsize=16,color="green",shape="box"];7531[label="Zero",fontsize=16,color="green",shape="box"];7206[label="primQuotInt (primPlusInt (primMulInt (Pos vuz3160) (Pos vuz3170)) (vuz318 * vuz319)) (reduce2D (primPlusInt (primMulInt (Pos vuz3160) (Pos vuz3170)) (vuz318 * vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7206 -> 7220[label="",style="solid", color="black", weight=3]; 67.32/34.79 7207[label="primQuotInt (primPlusInt (primMulInt (Pos vuz3160) (Neg vuz3170)) (vuz318 * vuz319)) (reduce2D (primPlusInt (primMulInt (Pos vuz3160) (Neg vuz3170)) (vuz318 * vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7207 -> 7221[label="",style="solid", color="black", weight=3]; 67.32/34.79 7208[label="primQuotInt (primPlusInt (primMulInt (Neg vuz3160) (Pos vuz3170)) (vuz318 * vuz319)) (reduce2D (primPlusInt (primMulInt (Neg vuz3160) (Pos vuz3170)) (vuz318 * vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7208 -> 7222[label="",style="solid", color="black", weight=3]; 67.32/34.79 7209[label="primQuotInt (primPlusInt (primMulInt (Neg vuz3160) (Neg vuz3170)) (vuz318 * vuz319)) (reduce2D (primPlusInt (primMulInt (Neg vuz3160) (Neg vuz3170)) (vuz318 * vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7209 -> 7223[label="",style="solid", color="black", weight=3]; 67.32/34.79 7210[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (reduce2D (vuz316 * Pos vuz3170 + vuz318 * Pos vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7210 -> 7224[label="",style="solid", color="black", weight=3]; 67.32/34.79 7211[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (reduce2D (vuz316 * Neg vuz3170 + vuz318 * Pos vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7211 -> 7225[label="",style="solid", color="black", weight=3]; 67.32/34.79 7212[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (reduce2D (vuz316 * Pos vuz3170 + vuz318 * Neg vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7212 -> 7226[label="",style="solid", color="black", weight=3]; 67.32/34.79 7213[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (reduce2D (vuz316 * Neg vuz3170 + vuz318 * Neg vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7213 -> 7227[label="",style="solid", color="black", weight=3]; 67.32/34.79 7550 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7550[label="primMulNat vuz306100 (Succ vuz307100)",fontsize=16,color="magenta"];7550 -> 7551[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7550 -> 7552[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7549[label="primPlusNat vuz335 (Succ vuz307100)",fontsize=16,color="burlywood",shape="triangle"];10863[label="vuz335/Succ vuz3350",fontsize=10,color="white",style="solid",shape="box"];7549 -> 10863[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10863 -> 7553[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10864[label="vuz335/Zero",fontsize=10,color="white",style="solid",shape="box"];7549 -> 10864[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10864 -> 7554[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7220[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * vuz319)) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7220 -> 7234[label="",style="solid", color="black", weight=3]; 67.32/34.79 7221[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * vuz319)) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7221 -> 7235[label="",style="solid", color="black", weight=3]; 67.32/34.79 7222[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * vuz319)) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7222 -> 7236[label="",style="solid", color="black", weight=3]; 67.32/34.79 7223[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * vuz319)) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7223 -> 7237[label="",style="solid", color="black", weight=3]; 67.32/34.79 7224[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd (vuz316 * Pos vuz3170 + vuz318 * Pos vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7224 -> 7238[label="",style="solid", color="black", weight=3]; 67.32/34.79 7225[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd (vuz316 * Neg vuz3170 + vuz318 * Pos vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7225 -> 7239[label="",style="solid", color="black", weight=3]; 67.32/34.79 7226[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd (vuz316 * Pos vuz3170 + vuz318 * Neg vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7226 -> 7240[label="",style="solid", color="black", weight=3]; 67.32/34.79 7227[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd (vuz316 * Neg vuz3170 + vuz318 * Neg vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7227 -> 7241[label="",style="solid", color="black", weight=3]; 67.32/34.79 7551[label="vuz306100",fontsize=16,color="green",shape="box"];7552[label="Succ vuz307100",fontsize=16,color="green",shape="box"];7553[label="primPlusNat (Succ vuz3350) (Succ vuz307100)",fontsize=16,color="black",shape="box"];7553 -> 7564[label="",style="solid", color="black", weight=3]; 67.32/34.79 7554[label="primPlusNat Zero (Succ vuz307100)",fontsize=16,color="black",shape="box"];7554 -> 7565[label="",style="solid", color="black", weight=3]; 67.32/34.79 7234[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt vuz318 vuz319)) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt vuz318 vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10865[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7234 -> 10865[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10865 -> 7250[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10866[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7234 -> 10866[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10866 -> 7251[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7235[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt vuz318 vuz319)) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt vuz318 vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10867[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7235 -> 10867[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10867 -> 7252[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10868[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7235 -> 10868[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10868 -> 7253[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7236[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt vuz318 vuz319)) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt vuz318 vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10869[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7236 -> 10869[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10869 -> 7254[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10870[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7236 -> 10870[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10870 -> 7255[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7237[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt vuz318 vuz319)) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt vuz318 vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10871[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7237 -> 10871[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10871 -> 7256[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10872[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7237 -> 10872[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10872 -> 7257[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7238[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd3 (vuz316 * Pos vuz3170 + vuz318 * Pos vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7238 -> 7258[label="",style="solid", color="black", weight=3]; 67.32/34.79 7239[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd3 (vuz316 * Neg vuz3170 + vuz318 * Pos vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7239 -> 7259[label="",style="solid", color="black", weight=3]; 67.32/34.79 7240[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd3 (vuz316 * Pos vuz3170 + vuz318 * Neg vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7240 -> 7260[label="",style="solid", color="black", weight=3]; 67.32/34.79 7241[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd3 (vuz316 * Neg vuz3170 + vuz318 * Neg vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7241 -> 7261[label="",style="solid", color="black", weight=3]; 67.32/34.79 7564[label="Succ (Succ (primPlusNat vuz3350 vuz307100))",fontsize=16,color="green",shape="box"];7564 -> 7571[label="",style="dashed", color="green", weight=3]; 67.32/34.79 7565[label="Succ vuz307100",fontsize=16,color="green",shape="box"];7250[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) vuz319)) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10873[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7250 -> 10873[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10873 -> 7268[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10874[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7250 -> 10874[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10874 -> 7269[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7251[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) vuz319)) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10875[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7251 -> 10875[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10875 -> 7270[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10876[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7251 -> 10876[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10876 -> 7271[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7252[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) vuz319)) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10877[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7252 -> 10877[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10877 -> 7272[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10878[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7252 -> 10878[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10878 -> 7273[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7253[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) vuz319)) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10879[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7253 -> 10879[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10879 -> 7274[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10880[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7253 -> 10880[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10880 -> 7275[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7254[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) vuz319)) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10881[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7254 -> 10881[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10881 -> 7276[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10882[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7254 -> 10882[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10882 -> 7277[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7255[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) vuz319)) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10883[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7255 -> 10883[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10883 -> 7278[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10884[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7255 -> 10884[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10884 -> 7279[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7256[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) vuz319)) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10885[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7256 -> 10885[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10885 -> 7280[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10886[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7256 -> 10886[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10886 -> 7281[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7257[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) vuz319)) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10887[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7257 -> 10887[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10887 -> 7282[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10888[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7257 -> 10888[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10888 -> 7283[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7258[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (vuz316 * Pos vuz3170 + vuz318 * Pos vuz3190 == fromInt (Pos Zero)) (vuz316 * Pos vuz3170 + vuz318 * Pos vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7258 -> 7284[label="",style="solid", color="black", weight=3]; 67.32/34.79 7259[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (vuz316 * Neg vuz3170 + vuz318 * Pos vuz3190 == fromInt (Pos Zero)) (vuz316 * Neg vuz3170 + vuz318 * Pos vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7259 -> 7285[label="",style="solid", color="black", weight=3]; 67.32/34.79 7260[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (vuz316 * Pos vuz3170 + vuz318 * Neg vuz3190 == fromInt (Pos Zero)) (vuz316 * Pos vuz3170 + vuz318 * Neg vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7260 -> 7286[label="",style="solid", color="black", weight=3]; 67.32/34.79 7261[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (vuz316 * Neg vuz3170 + vuz318 * Neg vuz3190 == fromInt (Pos Zero)) (vuz316 * Neg vuz3170 + vuz318 * Neg vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7261 -> 7287[label="",style="solid", color="black", weight=3]; 67.32/34.79 7571[label="primPlusNat vuz3350 vuz307100",fontsize=16,color="burlywood",shape="triangle"];10889[label="vuz3350/Succ vuz33500",fontsize=10,color="white",style="solid",shape="box"];7571 -> 10889[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10889 -> 7585[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10890[label="vuz3350/Zero",fontsize=10,color="white",style="solid",shape="box"];7571 -> 10890[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10890 -> 7586[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7268[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Pos vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Pos vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7268 -> 7296[label="",style="solid", color="black", weight=3]; 67.32/34.79 7269[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Neg vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Neg vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7269 -> 7297[label="",style="solid", color="black", weight=3]; 67.32/34.79 7270[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Pos vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Pos vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7270 -> 7298[label="",style="solid", color="black", weight=3]; 67.32/34.79 7271[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Neg vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Neg vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7271 -> 7299[label="",style="solid", color="black", weight=3]; 67.32/34.79 7272[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Pos vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Pos vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7272 -> 7300[label="",style="solid", color="black", weight=3]; 67.32/34.79 7273[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Neg vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Neg vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7273 -> 7301[label="",style="solid", color="black", weight=3]; 67.32/34.79 7274[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Pos vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Pos vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7274 -> 7302[label="",style="solid", color="black", weight=3]; 67.32/34.79 7275[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Neg vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Neg vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7275 -> 7303[label="",style="solid", color="black", weight=3]; 67.32/34.79 7276[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Pos vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Pos vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7276 -> 7304[label="",style="solid", color="black", weight=3]; 67.32/34.79 7277[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Neg vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Neg vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7277 -> 7305[label="",style="solid", color="black", weight=3]; 67.32/34.79 7278[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Pos vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Pos vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7278 -> 7306[label="",style="solid", color="black", weight=3]; 67.32/34.79 7279[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Neg vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Neg vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7279 -> 7307[label="",style="solid", color="black", weight=3]; 67.32/34.79 7280[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Pos vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Pos vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7280 -> 7308[label="",style="solid", color="black", weight=3]; 67.32/34.79 7281[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Neg vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Neg vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7281 -> 7309[label="",style="solid", color="black", weight=3]; 67.32/34.79 7282[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Pos vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Pos vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7282 -> 7310[label="",style="solid", color="black", weight=3]; 67.32/34.79 7283[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Neg vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Neg vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7283 -> 7311[label="",style="solid", color="black", weight=3]; 67.32/34.79 7284[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (vuz316 * Pos vuz3170 + vuz318 * Pos vuz3190) (fromInt (Pos Zero))) (vuz316 * Pos vuz3170 + vuz318 * Pos vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7284 -> 7312[label="",style="solid", color="black", weight=3]; 67.32/34.79 7285[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (vuz316 * Neg vuz3170 + vuz318 * Pos vuz3190) (fromInt (Pos Zero))) (vuz316 * Neg vuz3170 + vuz318 * Pos vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7285 -> 7313[label="",style="solid", color="black", weight=3]; 67.32/34.79 7286[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (vuz316 * Pos vuz3170 + vuz318 * Neg vuz3190) (fromInt (Pos Zero))) (vuz316 * Pos vuz3170 + vuz318 * Neg vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7286 -> 7314[label="",style="solid", color="black", weight=3]; 67.32/34.79 7287[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (vuz316 * Neg vuz3170 + vuz318 * Neg vuz3190) (fromInt (Pos Zero))) (vuz316 * Neg vuz3170 + vuz318 * Neg vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7287 -> 7315[label="",style="solid", color="black", weight=3]; 67.32/34.79 7585[label="primPlusNat (Succ vuz33500) vuz307100",fontsize=16,color="burlywood",shape="box"];10891[label="vuz307100/Succ vuz3071000",fontsize=10,color="white",style="solid",shape="box"];7585 -> 10891[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10891 -> 7590[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10892[label="vuz307100/Zero",fontsize=10,color="white",style="solid",shape="box"];7585 -> 10892[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10892 -> 7591[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7586[label="primPlusNat Zero vuz307100",fontsize=16,color="burlywood",shape="box"];10893[label="vuz307100/Succ vuz3071000",fontsize=10,color="white",style="solid",shape="box"];7586 -> 10893[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10893 -> 7592[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10894[label="vuz307100/Zero",fontsize=10,color="white",style="solid",shape="box"];7586 -> 10894[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10894 -> 7593[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7296[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7296 -> 7324[label="",style="solid", color="black", weight=3]; 67.32/34.79 7297[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7297 -> 7325[label="",style="solid", color="black", weight=3]; 67.32/34.79 7298[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7298 -> 7326[label="",style="solid", color="black", weight=3]; 67.32/34.79 7299[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7299 -> 7327[label="",style="solid", color="black", weight=3]; 67.32/34.79 7300[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7300 -> 7328[label="",style="solid", color="black", weight=3]; 67.32/34.79 7301[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7301 -> 7329[label="",style="solid", color="black", weight=3]; 67.32/34.79 7302[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7302 -> 7330[label="",style="solid", color="black", weight=3]; 67.32/34.79 7303[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7303 -> 7331[label="",style="solid", color="black", weight=3]; 67.32/34.79 7304[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7304 -> 7332[label="",style="solid", color="black", weight=3]; 67.32/34.79 7305[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7305 -> 7333[label="",style="solid", color="black", weight=3]; 67.32/34.79 7306[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7306 -> 7334[label="",style="solid", color="black", weight=3]; 67.32/34.79 7307[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7307 -> 7335[label="",style="solid", color="black", weight=3]; 67.32/34.79 7308[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7308 -> 7336[label="",style="solid", color="black", weight=3]; 67.32/34.79 7309[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7309 -> 7337[label="",style="solid", color="black", weight=3]; 67.32/34.79 7310[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7310 -> 7338[label="",style="solid", color="black", weight=3]; 67.32/34.79 7311[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7311 -> 7339[label="",style="solid", color="black", weight=3]; 67.32/34.79 7312[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (vuz316 * Pos vuz3170) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (vuz316 * Pos vuz3170) (vuz318 * Pos vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7312 -> 7340[label="",style="solid", color="black", weight=3]; 67.32/34.79 7313[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (vuz316 * Neg vuz3170) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (vuz316 * Neg vuz3170) (vuz318 * Pos vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7313 -> 7341[label="",style="solid", color="black", weight=3]; 67.32/34.79 7314[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (vuz316 * Pos vuz3170) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (vuz316 * Pos vuz3170) (vuz318 * Neg vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7314 -> 7342[label="",style="solid", color="black", weight=3]; 67.32/34.79 7315[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (vuz316 * Neg vuz3170) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (vuz316 * Neg vuz3170) (vuz318 * Neg vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7315 -> 7343[label="",style="solid", color="black", weight=3]; 67.32/34.79 7590[label="primPlusNat (Succ vuz33500) (Succ vuz3071000)",fontsize=16,color="black",shape="box"];7590 -> 7601[label="",style="solid", color="black", weight=3]; 67.32/34.79 7591[label="primPlusNat (Succ vuz33500) Zero",fontsize=16,color="black",shape="box"];7591 -> 7602[label="",style="solid", color="black", weight=3]; 67.32/34.79 7592[label="primPlusNat Zero (Succ vuz3071000)",fontsize=16,color="black",shape="box"];7592 -> 7603[label="",style="solid", color="black", weight=3]; 67.32/34.79 7593[label="primPlusNat Zero Zero",fontsize=16,color="black",shape="box"];7593 -> 7604[label="",style="solid", color="black", weight=3]; 67.32/34.79 7324[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (reduce2D (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7324 -> 7356[label="",style="solid", color="black", weight=3]; 67.32/34.79 7325[label="primQuotInt (primMinusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10895[label="vuz3160/Succ vuz31600",fontsize=10,color="white",style="solid",shape="box"];7325 -> 10895[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10895 -> 7357[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10896[label="vuz3160/Zero",fontsize=10,color="white",style="solid",shape="box"];7325 -> 10896[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10896 -> 7358[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7326[label="primQuotInt (primMinusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10897[label="vuz3160/Succ vuz31600",fontsize=10,color="white",style="solid",shape="box"];7326 -> 10897[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10897 -> 7359[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10898[label="vuz3160/Zero",fontsize=10,color="white",style="solid",shape="box"];7326 -> 10898[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10898 -> 7360[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7327[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (reduce2D (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7327 -> 7361[label="",style="solid", color="black", weight=3]; 67.32/34.79 7328[label="primQuotInt (primMinusNat (primMulNat vuz3180 vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat vuz3180 vuz3190) (primMulNat vuz3160 vuz3170)) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10899[label="vuz3180/Succ vuz31800",fontsize=10,color="white",style="solid",shape="box"];7328 -> 10899[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10899 -> 7362[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10900[label="vuz3180/Zero",fontsize=10,color="white",style="solid",shape="box"];7328 -> 10900[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10900 -> 7363[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7329[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (reduce2D (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7329 -> 7364[label="",style="solid", color="black", weight=3]; 67.32/34.79 7330[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (reduce2D (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7330 -> 7365[label="",style="solid", color="black", weight=3]; 67.32/34.79 7331[label="primQuotInt (primMinusNat (primMulNat vuz3180 vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat vuz3180 vuz3190) (primMulNat vuz3160 vuz3170)) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10901[label="vuz3180/Succ vuz31800",fontsize=10,color="white",style="solid",shape="box"];7331 -> 10901[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10901 -> 7366[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10902[label="vuz3180/Zero",fontsize=10,color="white",style="solid",shape="box"];7331 -> 10902[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10902 -> 7367[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7332[label="primQuotInt (primMinusNat (primMulNat vuz3180 vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat vuz3180 vuz3190) (primMulNat vuz3160 vuz3170)) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10903[label="vuz3180/Succ vuz31800",fontsize=10,color="white",style="solid",shape="box"];7332 -> 10903[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10903 -> 7368[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10904[label="vuz3180/Zero",fontsize=10,color="white",style="solid",shape="box"];7332 -> 10904[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10904 -> 7369[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7333[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (reduce2D (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7333 -> 7370[label="",style="solid", color="black", weight=3]; 67.32/34.79 7334[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (reduce2D (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7334 -> 7371[label="",style="solid", color="black", weight=3]; 67.32/34.79 7335[label="primQuotInt (primMinusNat (primMulNat vuz3180 vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat vuz3180 vuz3190) (primMulNat vuz3160 vuz3170)) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10905[label="vuz3180/Succ vuz31800",fontsize=10,color="white",style="solid",shape="box"];7335 -> 10905[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10905 -> 7372[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10906[label="vuz3180/Zero",fontsize=10,color="white",style="solid",shape="box"];7335 -> 10906[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10906 -> 7373[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7336[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (reduce2D (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7336 -> 7374[label="",style="solid", color="black", weight=3]; 67.32/34.79 7337[label="primQuotInt (primMinusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10907[label="vuz3160/Succ vuz31600",fontsize=10,color="white",style="solid",shape="box"];7337 -> 10907[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10907 -> 7375[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10908[label="vuz3160/Zero",fontsize=10,color="white",style="solid",shape="box"];7337 -> 10908[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10908 -> 7376[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7338[label="primQuotInt (primMinusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10909[label="vuz3160/Succ vuz31600",fontsize=10,color="white",style="solid",shape="box"];7338 -> 10909[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10909 -> 7377[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10910[label="vuz3160/Zero",fontsize=10,color="white",style="solid",shape="box"];7338 -> 10910[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10910 -> 7378[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7339[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (reduce2D (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7339 -> 7379[label="",style="solid", color="black", weight=3]; 67.32/34.79 7340[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt vuz316 (Pos vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt vuz316 (Pos vuz3170)) (vuz318 * Pos vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="burlywood",shape="box"];10911[label="vuz316/Pos vuz3160",fontsize=10,color="white",style="solid",shape="box"];7340 -> 10911[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10911 -> 7380[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10912[label="vuz316/Neg vuz3160",fontsize=10,color="white",style="solid",shape="box"];7340 -> 10912[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10912 -> 7381[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7341[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt vuz316 (Neg vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt vuz316 (Neg vuz3170)) (vuz318 * Pos vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="burlywood",shape="box"];10913[label="vuz316/Pos vuz3160",fontsize=10,color="white",style="solid",shape="box"];7341 -> 10913[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10913 -> 7382[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10914[label="vuz316/Neg vuz3160",fontsize=10,color="white",style="solid",shape="box"];7341 -> 10914[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10914 -> 7383[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7342[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt vuz316 (Pos vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt vuz316 (Pos vuz3170)) (vuz318 * Neg vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="burlywood",shape="box"];10915[label="vuz316/Pos vuz3160",fontsize=10,color="white",style="solid",shape="box"];7342 -> 10915[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10915 -> 7384[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10916[label="vuz316/Neg vuz3160",fontsize=10,color="white",style="solid",shape="box"];7342 -> 10916[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10916 -> 7385[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7343[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt vuz316 (Neg vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt vuz316 (Neg vuz3170)) (vuz318 * Neg vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="burlywood",shape="box"];10917[label="vuz316/Pos vuz3160",fontsize=10,color="white",style="solid",shape="box"];7343 -> 10917[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10917 -> 7386[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10918[label="vuz316/Neg vuz3160",fontsize=10,color="white",style="solid",shape="box"];7343 -> 10918[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10918 -> 7387[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7601[label="Succ (Succ (primPlusNat vuz33500 vuz3071000))",fontsize=16,color="green",shape="box"];7601 -> 7616[label="",style="dashed", color="green", weight=3]; 67.32/34.79 7602[label="Succ vuz33500",fontsize=16,color="green",shape="box"];7603[label="Succ vuz3071000",fontsize=16,color="green",shape="box"];7604[label="Zero",fontsize=16,color="green",shape="box"];7356[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7356 -> 7427[label="",style="solid", color="black", weight=3]; 67.32/34.79 7357[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) vuz3170) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10919[label="vuz3170/Succ vuz31700",fontsize=10,color="white",style="solid",shape="box"];7357 -> 10919[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10919 -> 7428[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10920[label="vuz3170/Zero",fontsize=10,color="white",style="solid",shape="box"];7357 -> 10920[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10920 -> 7429[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7358[label="primQuotInt (primMinusNat (primMulNat Zero vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero vuz3170) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10921[label="vuz3170/Succ vuz31700",fontsize=10,color="white",style="solid",shape="box"];7358 -> 10921[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10921 -> 7430[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10922[label="vuz3170/Zero",fontsize=10,color="white",style="solid",shape="box"];7358 -> 10922[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10922 -> 7431[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7359[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) vuz3170) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10923[label="vuz3170/Succ vuz31700",fontsize=10,color="white",style="solid",shape="box"];7359 -> 10923[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10923 -> 7432[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10924[label="vuz3170/Zero",fontsize=10,color="white",style="solid",shape="box"];7359 -> 10924[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10924 -> 7433[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7360[label="primQuotInt (primMinusNat (primMulNat Zero vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero vuz3170) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10925[label="vuz3170/Succ vuz31700",fontsize=10,color="white",style="solid",shape="box"];7360 -> 10925[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10925 -> 7434[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10926[label="vuz3170/Zero",fontsize=10,color="white",style="solid",shape="box"];7360 -> 10926[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10926 -> 7435[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7361[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7361 -> 7436[label="",style="solid", color="black", weight=3]; 67.32/34.79 7362[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) vuz3190) (primMulNat vuz3160 vuz3170)) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10927[label="vuz3190/Succ vuz31900",fontsize=10,color="white",style="solid",shape="box"];7362 -> 10927[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10927 -> 7437[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10928[label="vuz3190/Zero",fontsize=10,color="white",style="solid",shape="box"];7362 -> 10928[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10928 -> 7438[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7363[label="primQuotInt (primMinusNat (primMulNat Zero vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero vuz3190) (primMulNat vuz3160 vuz3170)) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10929[label="vuz3190/Succ vuz31900",fontsize=10,color="white",style="solid",shape="box"];7363 -> 10929[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10929 -> 7439[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10930[label="vuz3190/Zero",fontsize=10,color="white",style="solid",shape="box"];7363 -> 10930[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10930 -> 7440[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7364[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7364 -> 7441[label="",style="solid", color="black", weight=3]; 67.32/34.79 7365[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7365 -> 7442[label="",style="solid", color="black", weight=3]; 67.32/34.79 7366[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) vuz3190) (primMulNat vuz3160 vuz3170)) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10931[label="vuz3190/Succ vuz31900",fontsize=10,color="white",style="solid",shape="box"];7366 -> 10931[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10931 -> 7443[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10932[label="vuz3190/Zero",fontsize=10,color="white",style="solid",shape="box"];7366 -> 10932[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10932 -> 7444[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7367[label="primQuotInt (primMinusNat (primMulNat Zero vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero vuz3190) (primMulNat vuz3160 vuz3170)) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10933[label="vuz3190/Succ vuz31900",fontsize=10,color="white",style="solid",shape="box"];7367 -> 10933[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10933 -> 7445[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10934[label="vuz3190/Zero",fontsize=10,color="white",style="solid",shape="box"];7367 -> 10934[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10934 -> 7446[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7368[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) vuz3190) (primMulNat vuz3160 vuz3170)) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10935[label="vuz3190/Succ vuz31900",fontsize=10,color="white",style="solid",shape="box"];7368 -> 10935[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10935 -> 7447[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10936[label="vuz3190/Zero",fontsize=10,color="white",style="solid",shape="box"];7368 -> 10936[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10936 -> 7448[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7369[label="primQuotInt (primMinusNat (primMulNat Zero vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero vuz3190) (primMulNat vuz3160 vuz3170)) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10937[label="vuz3190/Succ vuz31900",fontsize=10,color="white",style="solid",shape="box"];7369 -> 10937[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10937 -> 7449[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10938[label="vuz3190/Zero",fontsize=10,color="white",style="solid",shape="box"];7369 -> 10938[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10938 -> 7450[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7370[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7370 -> 7451[label="",style="solid", color="black", weight=3]; 67.32/34.79 7371[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7371 -> 7452[label="",style="solid", color="black", weight=3]; 67.32/34.79 7372[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) vuz3190) (primMulNat vuz3160 vuz3170)) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10939[label="vuz3190/Succ vuz31900",fontsize=10,color="white",style="solid",shape="box"];7372 -> 10939[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10939 -> 7453[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10940[label="vuz3190/Zero",fontsize=10,color="white",style="solid",shape="box"];7372 -> 10940[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10940 -> 7454[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7373[label="primQuotInt (primMinusNat (primMulNat Zero vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero vuz3190) (primMulNat vuz3160 vuz3170)) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10941[label="vuz3190/Succ vuz31900",fontsize=10,color="white",style="solid",shape="box"];7373 -> 10941[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10941 -> 7455[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10942[label="vuz3190/Zero",fontsize=10,color="white",style="solid",shape="box"];7373 -> 10942[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10942 -> 7456[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7374[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7374 -> 7457[label="",style="solid", color="black", weight=3]; 67.32/34.79 7375[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) vuz3170) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10943[label="vuz3170/Succ vuz31700",fontsize=10,color="white",style="solid",shape="box"];7375 -> 10943[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10943 -> 7458[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10944[label="vuz3170/Zero",fontsize=10,color="white",style="solid",shape="box"];7375 -> 10944[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10944 -> 7459[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7376[label="primQuotInt (primMinusNat (primMulNat Zero vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero vuz3170) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10945[label="vuz3170/Succ vuz31700",fontsize=10,color="white",style="solid",shape="box"];7376 -> 10945[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10945 -> 7460[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10946[label="vuz3170/Zero",fontsize=10,color="white",style="solid",shape="box"];7376 -> 10946[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10946 -> 7461[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7377[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) vuz3170) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10947[label="vuz3170/Succ vuz31700",fontsize=10,color="white",style="solid",shape="box"];7377 -> 10947[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10947 -> 7462[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10948[label="vuz3170/Zero",fontsize=10,color="white",style="solid",shape="box"];7377 -> 10948[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10948 -> 7463[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7378[label="primQuotInt (primMinusNat (primMulNat Zero vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero vuz3170) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10949[label="vuz3170/Succ vuz31700",fontsize=10,color="white",style="solid",shape="box"];7378 -> 10949[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10949 -> 7464[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10950[label="vuz3170/Zero",fontsize=10,color="white",style="solid",shape="box"];7378 -> 10950[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10950 -> 7465[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7379[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7379 -> 7466[label="",style="solid", color="black", weight=3]; 67.32/34.79 7380[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt (Pos vuz3160) (Pos vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Pos vuz3160) (Pos vuz3170)) (vuz318 * Pos vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7380 -> 7467[label="",style="solid", color="black", weight=3]; 67.32/34.79 7381[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt (Neg vuz3160) (Pos vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Neg vuz3160) (Pos vuz3170)) (vuz318 * Pos vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7381 -> 7468[label="",style="solid", color="black", weight=3]; 67.32/34.79 7382[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt (Pos vuz3160) (Neg vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Pos vuz3160) (Neg vuz3170)) (vuz318 * Pos vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7382 -> 7469[label="",style="solid", color="black", weight=3]; 67.32/34.79 7383[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt (Neg vuz3160) (Neg vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Neg vuz3160) (Neg vuz3170)) (vuz318 * Pos vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7383 -> 7470[label="",style="solid", color="black", weight=3]; 67.32/34.79 7384[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt (Pos vuz3160) (Pos vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Pos vuz3160) (Pos vuz3170)) (vuz318 * Neg vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7384 -> 7471[label="",style="solid", color="black", weight=3]; 67.32/34.79 7385[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt (Neg vuz3160) (Pos vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Neg vuz3160) (Pos vuz3170)) (vuz318 * Neg vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7385 -> 7472[label="",style="solid", color="black", weight=3]; 67.32/34.79 7386[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt (Pos vuz3160) (Neg vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Pos vuz3160) (Neg vuz3170)) (vuz318 * Neg vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7386 -> 7473[label="",style="solid", color="black", weight=3]; 67.32/34.79 7387[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt (Neg vuz3160) (Neg vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Neg vuz3160) (Neg vuz3170)) (vuz318 * Neg vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7387 -> 7474[label="",style="solid", color="black", weight=3]; 67.32/34.79 7616 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7616[label="primPlusNat vuz33500 vuz3071000",fontsize=16,color="magenta"];7616 -> 7622[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7616 -> 7623[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7427 -> 7667[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7427[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd3 (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];7427 -> 7668[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7427 -> 7669[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7428[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];7428 -> 7534[label="",style="solid", color="black", weight=3]; 67.32/34.79 7429[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) Zero) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) Zero) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];7429 -> 7535[label="",style="solid", color="black", weight=3]; 67.32/34.79 7430[label="primQuotInt (primMinusNat (primMulNat Zero (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];7430 -> 7536[label="",style="solid", color="black", weight=3]; 67.32/34.79 7431[label="primQuotInt (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];7431 -> 7537[label="",style="solid", color="black", weight=3]; 67.32/34.79 7432[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];7432 -> 7538[label="",style="solid", color="black", weight=3]; 67.32/34.79 7433[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) Zero) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) Zero) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];7433 -> 7539[label="",style="solid", color="black", weight=3]; 67.32/34.79 7434[label="primQuotInt (primMinusNat (primMulNat Zero (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];7434 -> 7540[label="",style="solid", color="black", weight=3]; 67.32/34.79 7435[label="primQuotInt (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];7435 -> 7541[label="",style="solid", color="black", weight=3]; 67.32/34.79 7436 -> 7713[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7436[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd3 (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];7436 -> 7714[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7436 -> 7715[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7437[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];7437 -> 7555[label="",style="solid", color="black", weight=3]; 67.32/34.79 7438[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) Zero) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) Zero) (primMulNat vuz3160 vuz3170)) (Pos Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];7438 -> 7556[label="",style="solid", color="black", weight=3]; 67.32/34.79 7439[label="primQuotInt (primMinusNat (primMulNat Zero (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];7439 -> 7557[label="",style="solid", color="black", weight=3]; 67.32/34.79 7440[label="primQuotInt (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3160 vuz3170)) (Pos Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];7440 -> 7558[label="",style="solid", color="black", weight=3]; 67.32/34.79 7441 -> 7745[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7441[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd3 (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];7441 -> 7746[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7441 -> 7747[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7442 -> 7763[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7442[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd3 (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];7442 -> 7764[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7442 -> 7765[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7443[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];7443 -> 7572[label="",style="solid", color="black", weight=3]; 67.32/34.79 7444[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) Zero) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) Zero) (primMulNat vuz3160 vuz3170)) (Neg Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];7444 -> 7573[label="",style="solid", color="black", weight=3]; 67.32/34.79 7445[label="primQuotInt (primMinusNat (primMulNat Zero (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];7445 -> 7574[label="",style="solid", color="black", weight=3]; 67.32/34.79 7446[label="primQuotInt (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3160 vuz3170)) (Neg Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];7446 -> 7575[label="",style="solid", color="black", weight=3]; 67.32/34.79 7447[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];7447 -> 7576[label="",style="solid", color="black", weight=3]; 67.32/34.79 7448[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) Zero) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) Zero) (primMulNat vuz3160 vuz3170)) (Pos Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];7448 -> 7577[label="",style="solid", color="black", weight=3]; 67.32/34.79 7449[label="primQuotInt (primMinusNat (primMulNat Zero (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];7449 -> 7578[label="",style="solid", color="black", weight=3]; 67.32/34.79 7450[label="primQuotInt (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3160 vuz3170)) (Pos Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];7450 -> 7579[label="",style="solid", color="black", weight=3]; 67.32/34.79 7451 -> 7809[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7451[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd3 (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];7451 -> 7810[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7451 -> 7811[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7452 -> 7587[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7452[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd3 (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];7452 -> 7588[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7452 -> 7589[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7453[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];7453 -> 7594[label="",style="solid", color="black", weight=3]; 67.32/34.79 7454[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) Zero) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) Zero) (primMulNat vuz3160 vuz3170)) (Neg Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];7454 -> 7595[label="",style="solid", color="black", weight=3]; 67.32/34.79 7455[label="primQuotInt (primMinusNat (primMulNat Zero (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];7455 -> 7596[label="",style="solid", color="black", weight=3]; 67.32/34.79 7456[label="primQuotInt (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3160 vuz3170)) (Neg Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];7456 -> 7597[label="",style="solid", color="black", weight=3]; 67.32/34.79 7457 -> 7598[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7457[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd3 (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];7457 -> 7599[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7457 -> 7600[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7458[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];7458 -> 7605[label="",style="solid", color="black", weight=3]; 67.32/34.79 7459[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) Zero) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) Zero) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];7459 -> 7606[label="",style="solid", color="black", weight=3]; 67.32/34.79 7460[label="primQuotInt (primMinusNat (primMulNat Zero (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];7460 -> 7607[label="",style="solid", color="black", weight=3]; 67.32/34.79 7461[label="primQuotInt (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];7461 -> 7608[label="",style="solid", color="black", weight=3]; 67.32/34.79 7462[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];7462 -> 7609[label="",style="solid", color="black", weight=3]; 67.32/34.79 7463[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) Zero) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) Zero) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];7463 -> 7610[label="",style="solid", color="black", weight=3]; 67.32/34.79 7464[label="primQuotInt (primMinusNat (primMulNat Zero (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];7464 -> 7611[label="",style="solid", color="black", weight=3]; 67.32/34.79 7465[label="primQuotInt (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];7465 -> 7612[label="",style="solid", color="black", weight=3]; 67.32/34.79 7466 -> 7613[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7466[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd3 (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];7466 -> 7614[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7466 -> 7615[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7467 -> 7617[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7467[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * Pos vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="magenta"];7467 -> 7618[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7467 -> 7619[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7467 -> 7620[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7467 -> 7621[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7468 -> 7624[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7468[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * Pos vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="magenta"];7468 -> 7625[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7468 -> 7626[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7468 -> 7627[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7468 -> 7628[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7469 -> 7629[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7469[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * Pos vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="magenta"];7469 -> 7630[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7469 -> 7631[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7469 -> 7632[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7469 -> 7633[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7470 -> 7634[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7470[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * Pos vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="magenta"];7470 -> 7635[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7470 -> 7636[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7470 -> 7637[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7470 -> 7638[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7471 -> 7639[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7471[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * Neg vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="magenta"];7471 -> 7640[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7471 -> 7641[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7471 -> 7642[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7471 -> 7643[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7472 -> 7644[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7472[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * Neg vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="magenta"];7472 -> 7645[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7472 -> 7646[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7472 -> 7647[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7472 -> 7648[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7473 -> 7649[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7473[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * Neg vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="magenta"];7473 -> 7650[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7473 -> 7651[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7473 -> 7652[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7473 -> 7653[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7474 -> 7654[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7474[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * Neg vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="magenta"];7474 -> 7655[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7474 -> 7656[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7474 -> 7657[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7474 -> 7658[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7622[label="vuz33500",fontsize=16,color="green",shape="box"];7623[label="vuz3071000",fontsize=16,color="green",shape="box"];7668 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7668[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7668 -> 7672[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7668 -> 7673[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7669 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7669[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7669 -> 7674[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7669 -> 7675[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7667[label="primQuotInt (Pos vuz398) (gcd3 (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="triangle"];7667 -> 7676[label="",style="solid", color="black", weight=3]; 67.32/34.79 7534 -> 7677[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7534[label="primQuotInt (primMinusNat (primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];7534 -> 7678[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7534 -> 7679[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7534 -> 7680[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7534 -> 7681[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7535 -> 7686[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7535[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos Zero))",fontsize=16,color="magenta"];7535 -> 7687[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7535 -> 7688[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7536 -> 7677[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7536[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];7536 -> 7682[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7536 -> 7683[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7536 -> 7684[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7536 -> 7685[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7537 -> 7686[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7537[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos Zero))",fontsize=16,color="magenta"];7537 -> 7689[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7537 -> 7690[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7538 -> 7691[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7538[label="primQuotInt (primMinusNat (primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];7538 -> 7692[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7538 -> 7693[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7538 -> 7694[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7538 -> 7695[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7539 -> 7700[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7539[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos Zero))",fontsize=16,color="magenta"];7539 -> 7701[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7539 -> 7702[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7540 -> 7691[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7540[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];7540 -> 7696[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7540 -> 7697[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7540 -> 7698[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7540 -> 7699[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7541 -> 7700[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7541[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos Zero))",fontsize=16,color="magenta"];7541 -> 7703[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7541 -> 7704[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7714 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7714[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7714 -> 7718[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7714 -> 7719[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7715 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7715[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7715 -> 7720[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7715 -> 7721[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7713[label="primQuotInt (Pos vuz416) (gcd3 (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="triangle"];7713 -> 7722[label="",style="solid", color="black", weight=3]; 67.32/34.79 7555 -> 7723[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7555[label="primQuotInt (primMinusNat (primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];7555 -> 7724[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7555 -> 7725[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7555 -> 7726[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7555 -> 7727[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7556 -> 7732[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7556[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Pos Zero * Neg vuz3170))",fontsize=16,color="magenta"];7556 -> 7733[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7556 -> 7734[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7557 -> 7723[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7557[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];7557 -> 7728[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7557 -> 7729[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7557 -> 7730[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7557 -> 7731[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7558 -> 7732[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7558[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Pos Zero * Neg vuz3170))",fontsize=16,color="magenta"];7558 -> 7735[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7558 -> 7736[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7746 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7746[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7746 -> 7750[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7746 -> 7751[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7747 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7747[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7747 -> 7752[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7747 -> 7753[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7745[label="primQuotInt (Neg vuz426) (gcd3 (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="triangle"];7745 -> 7754[label="",style="solid", color="black", weight=3]; 67.32/34.79 7764 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7764[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7764 -> 7768[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7764 -> 7769[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7765 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7765[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7765 -> 7770[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7765 -> 7771[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7763[label="primQuotInt (Neg vuz428) (gcd3 (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="triangle"];7763 -> 7772[label="",style="solid", color="black", weight=3]; 67.32/34.79 7572 -> 7773[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7572[label="primQuotInt (primMinusNat (primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];7572 -> 7774[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7572 -> 7775[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7572 -> 7776[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7572 -> 7777[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7573 -> 7782[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7573[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Neg Zero * Neg vuz3170))",fontsize=16,color="magenta"];7573 -> 7783[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7573 -> 7784[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7574 -> 7773[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7574[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];7574 -> 7778[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7574 -> 7779[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7574 -> 7780[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7574 -> 7781[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7575 -> 7782[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7575[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Neg Zero * Neg vuz3170))",fontsize=16,color="magenta"];7575 -> 7785[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7575 -> 7786[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7576 -> 7787[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7576[label="primQuotInt (primMinusNat (primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];7576 -> 7788[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7576 -> 7789[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7576 -> 7790[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7576 -> 7791[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7577 -> 7796[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7577[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Pos Zero * Pos vuz3170))",fontsize=16,color="magenta"];7577 -> 7797[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7577 -> 7798[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7578 -> 7787[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7578[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];7578 -> 7792[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7578 -> 7793[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7578 -> 7794[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7578 -> 7795[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7579 -> 7796[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7579[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Pos Zero * Pos vuz3170))",fontsize=16,color="magenta"];7579 -> 7799[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7579 -> 7800[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7810 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7810[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7810 -> 7814[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7810 -> 7815[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7811 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7811[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7811 -> 7816[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7811 -> 7817[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7809[label="primQuotInt (Neg vuz446) (gcd3 (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="triangle"];7809 -> 7818[label="",style="solid", color="black", weight=3]; 67.32/34.79 7588 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7588[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7588 -> 7819[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7588 -> 7820[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7589 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7589[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7589 -> 7821[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7589 -> 7822[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7587[label="primQuotInt (Neg vuz348) (gcd3 (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="triangle"];7587 -> 7823[label="",style="solid", color="black", weight=3]; 67.32/34.79 7594 -> 7824[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7594[label="primQuotInt (primMinusNat (primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];7594 -> 7825[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7594 -> 7826[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7594 -> 7827[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7594 -> 7828[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7595 -> 7833[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7595[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Neg Zero * Pos vuz3170))",fontsize=16,color="magenta"];7595 -> 7834[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7595 -> 7835[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7596 -> 7824[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7596[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];7596 -> 7829[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7596 -> 7830[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7596 -> 7831[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7596 -> 7832[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7597 -> 7833[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7597[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Neg Zero * Pos vuz3170))",fontsize=16,color="magenta"];7597 -> 7836[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7597 -> 7837[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7599 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7599[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7599 -> 7838[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7599 -> 7839[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7600 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7600[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7600 -> 7840[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7600 -> 7841[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7598[label="primQuotInt (Pos vuz354) (gcd3 (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="triangle"];7598 -> 7842[label="",style="solid", color="black", weight=3]; 67.32/34.79 7605 -> 7843[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7605[label="primQuotInt (primMinusNat (primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];7605 -> 7844[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7605 -> 7845[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7605 -> 7846[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7605 -> 7847[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7606 -> 7852[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7606[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg Zero))",fontsize=16,color="magenta"];7606 -> 7853[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7606 -> 7854[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7607 -> 7843[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7607[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];7607 -> 7848[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7607 -> 7849[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7607 -> 7850[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7607 -> 7851[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7608 -> 7852[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7608[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg Zero))",fontsize=16,color="magenta"];7608 -> 7855[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7608 -> 7856[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7609 -> 7857[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7609[label="primQuotInt (primMinusNat (primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];7609 -> 7858[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7609 -> 7859[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7609 -> 7860[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7609 -> 7861[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7610 -> 7866[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7610[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg Zero))",fontsize=16,color="magenta"];7610 -> 7867[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7610 -> 7868[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7611 -> 7857[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7611[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];7611 -> 7862[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7611 -> 7863[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7611 -> 7864[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7611 -> 7865[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7612 -> 7866[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7612[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg Zero))",fontsize=16,color="magenta"];7612 -> 7869[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7612 -> 7870[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7614 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7614[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7614 -> 7871[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7614 -> 7872[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7615 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7615[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7615 -> 7873[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7615 -> 7874[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7613[label="primQuotInt (Pos vuz360) (gcd3 (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="triangle"];7613 -> 7875[label="",style="solid", color="black", weight=3]; 67.32/34.79 7618 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7618[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7618 -> 7876[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7618 -> 7877[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7619 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7619[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7619 -> 7878[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7619 -> 7879[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7620 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7620[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7620 -> 7880[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7620 -> 7881[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7621 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7621[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7621 -> 7882[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7621 -> 7883[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7617[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primPlusInt (Pos vuz369) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz368) (vuz318 * Pos vuz3190)) (Pos vuz367))",fontsize=16,color="black",shape="triangle"];7617 -> 7884[label="",style="solid", color="black", weight=3]; 67.32/34.79 7625 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7625[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7625 -> 7885[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7625 -> 7886[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7626 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7626[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7626 -> 7887[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7626 -> 7888[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7627 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7627[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7627 -> 7889[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7627 -> 7890[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7628 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7628[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7628 -> 7891[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7628 -> 7892[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7624[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primPlusInt (Neg vuz373) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz372) (vuz318 * Pos vuz3190)) (Pos vuz371))",fontsize=16,color="black",shape="triangle"];7624 -> 7893[label="",style="solid", color="black", weight=3]; 67.32/34.79 7630 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7630[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7630 -> 7894[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7630 -> 7895[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7631 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7631[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7631 -> 7896[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7631 -> 7897[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7632 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7632[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7632 -> 7898[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7632 -> 7899[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7633 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7633[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7633 -> 7900[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7633 -> 7901[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7629[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primPlusInt (Neg vuz377) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz376) (vuz318 * Pos vuz3190)) (Neg vuz375))",fontsize=16,color="black",shape="triangle"];7629 -> 7902[label="",style="solid", color="black", weight=3]; 67.32/34.79 7635 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7635[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7635 -> 7903[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7635 -> 7904[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7636 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7636[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7636 -> 7905[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7636 -> 7906[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7637 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7637[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7637 -> 7907[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7637 -> 7908[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7638 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7638[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7638 -> 7909[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7638 -> 7910[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7634[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primPlusInt (Pos vuz381) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz380) (vuz318 * Pos vuz3190)) (Neg vuz379))",fontsize=16,color="black",shape="triangle"];7634 -> 7911[label="",style="solid", color="black", weight=3]; 67.32/34.79 7640 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7640[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7640 -> 7912[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7640 -> 7913[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7641 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7641[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7641 -> 7914[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7641 -> 7915[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7642 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7642[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7642 -> 7916[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7642 -> 7917[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7643 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7643[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7643 -> 7918[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7643 -> 7919[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7639[label="primQuotInt (Neg vuz382) (gcd2 (primEqInt (primPlusInt (Pos vuz385) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz384) (vuz318 * Neg vuz3190)) (Neg vuz383))",fontsize=16,color="black",shape="triangle"];7639 -> 7920[label="",style="solid", color="black", weight=3]; 67.32/34.79 7645 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7645[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7645 -> 7921[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7645 -> 7922[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7646 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7646[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7646 -> 7923[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7646 -> 7924[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7647 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7647[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7647 -> 7925[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7647 -> 7926[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7648 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7648[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7648 -> 7927[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7648 -> 7928[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7644[label="primQuotInt (Neg vuz386) (gcd2 (primEqInt (primPlusInt (Neg vuz389) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz388) (vuz318 * Neg vuz3190)) (Neg vuz387))",fontsize=16,color="black",shape="triangle"];7644 -> 7929[label="",style="solid", color="black", weight=3]; 67.32/34.79 7650 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7650[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7650 -> 7930[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7650 -> 7931[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7651 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7651[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7651 -> 7932[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7651 -> 7933[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7652 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7652[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7652 -> 7934[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7652 -> 7935[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7653 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7653[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7653 -> 7936[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7653 -> 7937[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7649[label="primQuotInt (Pos vuz390) (gcd2 (primEqInt (primPlusInt (Neg vuz393) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz392) (vuz318 * Neg vuz3190)) (Pos vuz391))",fontsize=16,color="black",shape="triangle"];7649 -> 7938[label="",style="solid", color="black", weight=3]; 67.32/34.79 7655 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7655[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7655 -> 7939[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7655 -> 7940[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7656 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7656[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7656 -> 7941[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7656 -> 7942[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7657 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7657[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7657 -> 7943[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7657 -> 7944[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7658 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7658[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7658 -> 7945[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7658 -> 7946[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7654[label="primQuotInt (Pos vuz394) (gcd2 (primEqInt (primPlusInt (Pos vuz397) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz396) (vuz318 * Neg vuz3190)) (Pos vuz395))",fontsize=16,color="black",shape="triangle"];7654 -> 7947[label="",style="solid", color="black", weight=3]; 67.32/34.79 7672 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7672[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7672 -> 7948[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7672 -> 7949[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7673 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7673[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7673 -> 7950[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7673 -> 7951[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7674 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7674[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7674 -> 7952[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7674 -> 7953[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7675 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7675[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7675 -> 7954[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7675 -> 7955[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7676 -> 8228[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7676[label="primQuotInt (Pos vuz398) (gcd2 (Pos vuz399 == fromInt (Pos Zero)) (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];7676 -> 8229[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7678 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7678[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7678 -> 7957[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7678 -> 7958[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7679 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7679[label="primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)",fontsize=16,color="magenta"];7679 -> 7959[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7679 -> 7960[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7680 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7680[label="primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)",fontsize=16,color="magenta"];7680 -> 7961[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7680 -> 7962[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7681 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7681[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7681 -> 7963[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7681 -> 7964[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7677[label="primQuotInt (primMinusNat vuz401 vuz400) (reduce2D (primMinusNat vuz403 vuz402) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="burlywood",shape="triangle"];10951[label="vuz401/Succ vuz4010",fontsize=10,color="white",style="solid",shape="box"];7677 -> 10951[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10951 -> 7965[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10952[label="vuz401/Zero",fontsize=10,color="white",style="solid",shape="box"];7677 -> 10952[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10952 -> 7966[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7687 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7687[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7687 -> 7967[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7687 -> 7968[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7688 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7688[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7688 -> 7969[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7688 -> 7970[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7686[label="primQuotInt (primMinusNat Zero vuz406) (reduce2D (primMinusNat Zero vuz407) (Neg vuz3190 * Pos Zero))",fontsize=16,color="burlywood",shape="triangle"];10953[label="vuz406/Succ vuz4060",fontsize=10,color="white",style="solid",shape="box"];7686 -> 10953[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10953 -> 7971[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10954[label="vuz406/Zero",fontsize=10,color="white",style="solid",shape="box"];7686 -> 10954[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10954 -> 7972[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7682 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7682[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7682 -> 7973[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7682 -> 7974[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7683[label="Zero",fontsize=16,color="green",shape="box"];7684[label="Zero",fontsize=16,color="green",shape="box"];7685 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7685[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7685 -> 7975[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7685 -> 7976[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7689 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7689[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7689 -> 7977[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7689 -> 7978[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7690 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7690[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7690 -> 7979[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7690 -> 7980[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7692 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7692[label="primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)",fontsize=16,color="magenta"];7692 -> 7981[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7692 -> 7982[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7693 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7693[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7693 -> 7983[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7693 -> 7984[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7694 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7694[label="primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)",fontsize=16,color="magenta"];7694 -> 7985[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7694 -> 7986[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7695 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7695[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7695 -> 7987[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7695 -> 7988[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7691[label="primQuotInt (primMinusNat vuz409 vuz408) (reduce2D (primMinusNat vuz411 vuz410) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="burlywood",shape="triangle"];10955[label="vuz409/Succ vuz4090",fontsize=10,color="white",style="solid",shape="box"];7691 -> 10955[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10955 -> 7989[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10956[label="vuz409/Zero",fontsize=10,color="white",style="solid",shape="box"];7691 -> 10956[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10956 -> 7990[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7701 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7701[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7701 -> 7991[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7701 -> 7992[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7702 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7702[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7702 -> 7993[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7702 -> 7994[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7700[label="primQuotInt (primMinusNat Zero vuz414) (reduce2D (primMinusNat Zero vuz415) (Pos vuz3190 * Pos Zero))",fontsize=16,color="burlywood",shape="triangle"];10957[label="vuz414/Succ vuz4140",fontsize=10,color="white",style="solid",shape="box"];7700 -> 10957[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10957 -> 7995[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10958[label="vuz414/Zero",fontsize=10,color="white",style="solid",shape="box"];7700 -> 10958[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10958 -> 7996[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7696[label="Zero",fontsize=16,color="green",shape="box"];7697 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7697[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7697 -> 7997[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7697 -> 7998[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7698[label="Zero",fontsize=16,color="green",shape="box"];7699 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7699[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7699 -> 7999[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7699 -> 8000[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7703 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7703[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7703 -> 8001[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7703 -> 8002[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7704 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7704[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7704 -> 8003[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7704 -> 8004[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7718 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7718[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7718 -> 8005[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7718 -> 8006[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7719 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7719[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7719 -> 8007[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7719 -> 8008[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7720 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7720[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7720 -> 8009[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7720 -> 8010[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7721 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7721[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7721 -> 8011[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7721 -> 8012[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7722 -> 8254[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7722[label="primQuotInt (Pos vuz416) (gcd2 (Pos vuz417 == fromInt (Pos Zero)) (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];7722 -> 8255[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7724 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7724[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7724 -> 8014[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7724 -> 8015[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7725 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7725[label="primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)",fontsize=16,color="magenta"];7725 -> 8016[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7725 -> 8017[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7726 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7726[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7726 -> 8018[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7726 -> 8019[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7727 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7727[label="primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)",fontsize=16,color="magenta"];7727 -> 8020[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7727 -> 8021[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7723[label="primQuotInt (primMinusNat vuz419 vuz418) (reduce2D (primMinusNat vuz421 vuz420) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10959[label="vuz419/Succ vuz4190",fontsize=10,color="white",style="solid",shape="box"];7723 -> 10959[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10959 -> 8022[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10960[label="vuz419/Zero",fontsize=10,color="white",style="solid",shape="box"];7723 -> 10960[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10960 -> 8023[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7733 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7733[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7733 -> 8024[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7733 -> 8025[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7734 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7734[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7734 -> 8026[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7734 -> 8027[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7732[label="primQuotInt (primMinusNat Zero vuz424) (reduce2D (primMinusNat Zero vuz425) (Pos Zero * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10961[label="vuz424/Succ vuz4240",fontsize=10,color="white",style="solid",shape="box"];7732 -> 10961[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10961 -> 8028[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10962[label="vuz424/Zero",fontsize=10,color="white",style="solid",shape="box"];7732 -> 10962[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10962 -> 8029[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7728 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7728[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7728 -> 8030[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7728 -> 8031[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7729[label="Zero",fontsize=16,color="green",shape="box"];7730 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7730[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7730 -> 8032[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7730 -> 8033[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7731[label="Zero",fontsize=16,color="green",shape="box"];7735 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7735[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7735 -> 8034[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7735 -> 8035[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7736 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7736[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7736 -> 8036[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7736 -> 8037[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7750 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7750[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7750 -> 8038[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7750 -> 8039[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7751 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7751[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7751 -> 8040[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7751 -> 8041[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7752 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7752[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7752 -> 8042[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7752 -> 8043[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7753 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7753[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7753 -> 8044[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7753 -> 8045[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7754 -> 8270[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7754[label="primQuotInt (Neg vuz426) (gcd2 (Neg vuz427 == fromInt (Pos Zero)) (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];7754 -> 8271[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7768 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7768[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7768 -> 8047[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7768 -> 8048[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7769 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7769[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7769 -> 8049[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7769 -> 8050[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7770 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7770[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7770 -> 8051[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7770 -> 8052[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7771 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7771[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7771 -> 8053[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7771 -> 8054[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7772 -> 8276[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7772[label="primQuotInt (Neg vuz428) (gcd2 (Neg vuz429 == fromInt (Pos Zero)) (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];7772 -> 8277[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7774 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7774[label="primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)",fontsize=16,color="magenta"];7774 -> 8056[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7774 -> 8057[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7775 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7775[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7775 -> 8058[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7775 -> 8059[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7776 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7776[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7776 -> 8060[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7776 -> 8061[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7777 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7777[label="primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)",fontsize=16,color="magenta"];7777 -> 8062[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7777 -> 8063[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7773[label="primQuotInt (primMinusNat vuz431 vuz430) (reduce2D (primMinusNat vuz433 vuz432) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10963[label="vuz431/Succ vuz4310",fontsize=10,color="white",style="solid",shape="box"];7773 -> 10963[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10963 -> 8064[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10964[label="vuz431/Zero",fontsize=10,color="white",style="solid",shape="box"];7773 -> 10964[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10964 -> 8065[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7783 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7783[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7783 -> 8066[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7783 -> 8067[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7784 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7784[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7784 -> 8068[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7784 -> 8069[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7782[label="primQuotInt (primMinusNat Zero vuz436) (reduce2D (primMinusNat Zero vuz437) (Neg Zero * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10965[label="vuz436/Succ vuz4360",fontsize=10,color="white",style="solid",shape="box"];7782 -> 10965[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10965 -> 8070[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10966[label="vuz436/Zero",fontsize=10,color="white",style="solid",shape="box"];7782 -> 10966[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10966 -> 8071[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7778[label="Zero",fontsize=16,color="green",shape="box"];7779 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7779[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7779 -> 8072[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7779 -> 8073[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7780 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7780[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7780 -> 8074[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7780 -> 8075[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7781[label="Zero",fontsize=16,color="green",shape="box"];7785 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7785[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7785 -> 8076[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7785 -> 8077[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7786 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7786[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7786 -> 8078[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7786 -> 8079[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7788 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7788[label="primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)",fontsize=16,color="magenta"];7788 -> 8080[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7788 -> 8081[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7789 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7789[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7789 -> 8082[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7789 -> 8083[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7790 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7790[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7790 -> 8084[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7790 -> 8085[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7791 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7791[label="primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)",fontsize=16,color="magenta"];7791 -> 8086[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7791 -> 8087[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7787[label="primQuotInt (primMinusNat vuz439 vuz438) (reduce2D (primMinusNat vuz441 vuz440) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10967[label="vuz439/Succ vuz4390",fontsize=10,color="white",style="solid",shape="box"];7787 -> 10967[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10967 -> 8088[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10968[label="vuz439/Zero",fontsize=10,color="white",style="solid",shape="box"];7787 -> 10968[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10968 -> 8089[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7797 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7797[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7797 -> 8090[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7797 -> 8091[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7798 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7798[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7798 -> 8092[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7798 -> 8093[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7796[label="primQuotInt (primMinusNat Zero vuz444) (reduce2D (primMinusNat Zero vuz445) (Pos Zero * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10969[label="vuz444/Succ vuz4440",fontsize=10,color="white",style="solid",shape="box"];7796 -> 10969[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10969 -> 8094[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10970[label="vuz444/Zero",fontsize=10,color="white",style="solid",shape="box"];7796 -> 10970[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10970 -> 8095[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7792[label="Zero",fontsize=16,color="green",shape="box"];7793 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7793[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7793 -> 8096[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7793 -> 8097[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7794 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7794[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7794 -> 8098[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7794 -> 8099[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7795[label="Zero",fontsize=16,color="green",shape="box"];7799 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7799[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7799 -> 8100[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7799 -> 8101[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7800 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7800[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7800 -> 8102[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7800 -> 8103[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7814 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7814[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7814 -> 8104[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7814 -> 8105[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7815 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7815[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7815 -> 8106[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7815 -> 8107[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7816 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7816[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7816 -> 8108[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7816 -> 8109[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7817 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7817[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7817 -> 8110[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7817 -> 8111[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7818 -> 8302[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7818[label="primQuotInt (Neg vuz446) (gcd2 (Neg vuz447 == fromInt (Pos Zero)) (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];7818 -> 8303[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7819 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7819[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7819 -> 8113[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7819 -> 8114[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7820 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7820[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7820 -> 8115[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7820 -> 8116[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7821 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7821[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7821 -> 8117[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7821 -> 8118[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7822 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7822[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7822 -> 8119[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7822 -> 8120[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7823 -> 8308[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7823[label="primQuotInt (Neg vuz348) (gcd2 (Neg vuz349 == fromInt (Pos Zero)) (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];7823 -> 8309[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7825 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7825[label="primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)",fontsize=16,color="magenta"];7825 -> 8122[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7825 -> 8123[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7826 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7826[label="primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)",fontsize=16,color="magenta"];7826 -> 8124[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7826 -> 8125[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7827 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7827[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7827 -> 8126[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7827 -> 8127[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7828 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7828[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7828 -> 8128[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7828 -> 8129[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7824[label="primQuotInt (primMinusNat vuz449 vuz448) (reduce2D (primMinusNat vuz451 vuz450) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10971[label="vuz449/Succ vuz4490",fontsize=10,color="white",style="solid",shape="box"];7824 -> 10971[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10971 -> 8130[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10972[label="vuz449/Zero",fontsize=10,color="white",style="solid",shape="box"];7824 -> 10972[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10972 -> 8131[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7834 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7834[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7834 -> 8132[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7834 -> 8133[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7835 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7835[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7835 -> 8134[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7835 -> 8135[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7833[label="primQuotInt (primMinusNat Zero vuz454) (reduce2D (primMinusNat Zero vuz455) (Neg Zero * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10973[label="vuz454/Succ vuz4540",fontsize=10,color="white",style="solid",shape="box"];7833 -> 10973[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10973 -> 8136[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10974[label="vuz454/Zero",fontsize=10,color="white",style="solid",shape="box"];7833 -> 10974[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10974 -> 8137[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7829[label="Zero",fontsize=16,color="green",shape="box"];7830[label="Zero",fontsize=16,color="green",shape="box"];7831 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7831[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7831 -> 8138[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7831 -> 8139[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7832 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7832[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7832 -> 8140[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7832 -> 8141[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7836 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7836[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7836 -> 8142[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7836 -> 8143[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7837 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7837[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7837 -> 8144[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7837 -> 8145[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7838 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7838[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7838 -> 8146[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7838 -> 8147[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7839 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7839[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7839 -> 8148[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7839 -> 8149[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7840 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7840[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7840 -> 8150[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7840 -> 8151[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7841 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7841[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7841 -> 8152[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7841 -> 8153[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7842 -> 8324[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7842[label="primQuotInt (Pos vuz354) (gcd2 (Pos vuz355 == fromInt (Pos Zero)) (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];7842 -> 8325[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7844 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7844[label="primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)",fontsize=16,color="magenta"];7844 -> 8155[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7844 -> 8156[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7845 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7845[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7845 -> 8157[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7845 -> 8158[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7846 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7846[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7846 -> 8159[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7846 -> 8160[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7847 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7847[label="primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)",fontsize=16,color="magenta"];7847 -> 8161[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7847 -> 8162[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7843[label="primQuotInt (primMinusNat vuz457 vuz456) (reduce2D (primMinusNat vuz459 vuz458) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="burlywood",shape="triangle"];10975[label="vuz457/Succ vuz4570",fontsize=10,color="white",style="solid",shape="box"];7843 -> 10975[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10975 -> 8163[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10976[label="vuz457/Zero",fontsize=10,color="white",style="solid",shape="box"];7843 -> 10976[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10976 -> 8164[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7853 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7853[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7853 -> 8165[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7853 -> 8166[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7854 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7854[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7854 -> 8167[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7854 -> 8168[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7852[label="primQuotInt (primMinusNat Zero vuz462) (reduce2D (primMinusNat Zero vuz463) (Neg vuz3190 * Neg Zero))",fontsize=16,color="burlywood",shape="triangle"];10977[label="vuz462/Succ vuz4620",fontsize=10,color="white",style="solid",shape="box"];7852 -> 10977[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10977 -> 8169[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10978[label="vuz462/Zero",fontsize=10,color="white",style="solid",shape="box"];7852 -> 10978[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10978 -> 8170[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7848[label="Zero",fontsize=16,color="green",shape="box"];7849 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7849[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7849 -> 8171[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7849 -> 8172[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7850 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7850[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7850 -> 8173[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7850 -> 8174[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7851[label="Zero",fontsize=16,color="green",shape="box"];7855 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7855[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7855 -> 8175[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7855 -> 8176[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7856 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7856[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7856 -> 8177[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7856 -> 8178[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7858 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7858[label="primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)",fontsize=16,color="magenta"];7858 -> 8179[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7858 -> 8180[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7859 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7859[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7859 -> 8181[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7859 -> 8182[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7860 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7860[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7860 -> 8183[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7860 -> 8184[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7861 -> 7571[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7861[label="primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)",fontsize=16,color="magenta"];7861 -> 8185[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7861 -> 8186[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7857[label="primQuotInt (primMinusNat vuz465 vuz464) (reduce2D (primMinusNat vuz467 vuz466) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="burlywood",shape="triangle"];10979[label="vuz465/Succ vuz4650",fontsize=10,color="white",style="solid",shape="box"];7857 -> 10979[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10979 -> 8187[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10980[label="vuz465/Zero",fontsize=10,color="white",style="solid",shape="box"];7857 -> 10980[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10980 -> 8188[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7867 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7867[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7867 -> 8189[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7867 -> 8190[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7868 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7868[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7868 -> 8191[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7868 -> 8192[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7866[label="primQuotInt (primMinusNat Zero vuz470) (reduce2D (primMinusNat Zero vuz471) (Pos vuz3190 * Neg Zero))",fontsize=16,color="burlywood",shape="triangle"];10981[label="vuz470/Succ vuz4700",fontsize=10,color="white",style="solid",shape="box"];7866 -> 10981[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10981 -> 8193[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10982[label="vuz470/Zero",fontsize=10,color="white",style="solid",shape="box"];7866 -> 10982[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10982 -> 8194[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7862[label="Zero",fontsize=16,color="green",shape="box"];7863 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7863[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7863 -> 8195[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7863 -> 8196[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7864 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7864[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7864 -> 8197[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7864 -> 8198[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7865[label="Zero",fontsize=16,color="green",shape="box"];7869 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7869[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7869 -> 8199[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7869 -> 8200[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7870 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7870[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7870 -> 8201[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7870 -> 8202[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7871 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7871[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7871 -> 8203[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7871 -> 8204[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7872 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7872[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7872 -> 8205[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7872 -> 8206[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7873 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7873[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7873 -> 8207[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7873 -> 8208[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7874 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7874[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7874 -> 8209[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7874 -> 8210[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7875 -> 8350[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7875[label="primQuotInt (Pos vuz360) (gcd2 (Pos vuz361 == fromInt (Pos Zero)) (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];7875 -> 8351[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7876[label="vuz3190",fontsize=16,color="green",shape="box"];7877[label="vuz3170",fontsize=16,color="green",shape="box"];7878[label="vuz3160",fontsize=16,color="green",shape="box"];7879[label="vuz3170",fontsize=16,color="green",shape="box"];7880[label="vuz3160",fontsize=16,color="green",shape="box"];7881[label="vuz3170",fontsize=16,color="green",shape="box"];7882[label="vuz3190",fontsize=16,color="green",shape="box"];7883[label="vuz3170",fontsize=16,color="green",shape="box"];7884[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primPlusInt (Pos vuz369) (primMulInt vuz318 (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz368) (primMulInt vuz318 (Pos vuz3190))) (Pos vuz367))",fontsize=16,color="burlywood",shape="box"];10983[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7884 -> 10983[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10983 -> 8212[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10984[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7884 -> 10984[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10984 -> 8213[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7885[label="vuz3160",fontsize=16,color="green",shape="box"];7886[label="vuz3170",fontsize=16,color="green",shape="box"];7887[label="vuz3160",fontsize=16,color="green",shape="box"];7888[label="vuz3170",fontsize=16,color="green",shape="box"];7889[label="vuz3190",fontsize=16,color="green",shape="box"];7890[label="vuz3170",fontsize=16,color="green",shape="box"];7891[label="vuz3190",fontsize=16,color="green",shape="box"];7892[label="vuz3170",fontsize=16,color="green",shape="box"];7893[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primPlusInt (Neg vuz373) (primMulInt vuz318 (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz372) (primMulInt vuz318 (Pos vuz3190))) (Pos vuz371))",fontsize=16,color="burlywood",shape="box"];10985[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7893 -> 10985[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10985 -> 8214[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10986[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7893 -> 10986[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10986 -> 8215[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7894[label="vuz3190",fontsize=16,color="green",shape="box"];7895[label="vuz3170",fontsize=16,color="green",shape="box"];7896[label="vuz3160",fontsize=16,color="green",shape="box"];7897[label="vuz3170",fontsize=16,color="green",shape="box"];7898[label="vuz3190",fontsize=16,color="green",shape="box"];7899[label="vuz3170",fontsize=16,color="green",shape="box"];7900[label="vuz3160",fontsize=16,color="green",shape="box"];7901[label="vuz3170",fontsize=16,color="green",shape="box"];7902[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primPlusInt (Neg vuz377) (primMulInt vuz318 (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz376) (primMulInt vuz318 (Pos vuz3190))) (Neg vuz375))",fontsize=16,color="burlywood",shape="box"];10987[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7902 -> 10987[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10987 -> 8216[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10988[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7902 -> 10988[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10988 -> 8217[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7903[label="vuz3190",fontsize=16,color="green",shape="box"];7904[label="vuz3170",fontsize=16,color="green",shape="box"];7905[label="vuz3160",fontsize=16,color="green",shape="box"];7906[label="vuz3170",fontsize=16,color="green",shape="box"];7907[label="vuz3160",fontsize=16,color="green",shape="box"];7908[label="vuz3170",fontsize=16,color="green",shape="box"];7909[label="vuz3190",fontsize=16,color="green",shape="box"];7910[label="vuz3170",fontsize=16,color="green",shape="box"];7911[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primPlusInt (Pos vuz381) (primMulInt vuz318 (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz380) (primMulInt vuz318 (Pos vuz3190))) (Neg vuz379))",fontsize=16,color="burlywood",shape="box"];10989[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7911 -> 10989[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10989 -> 8218[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10990[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7911 -> 10990[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10990 -> 8219[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7912[label="vuz3190",fontsize=16,color="green",shape="box"];7913[label="vuz3170",fontsize=16,color="green",shape="box"];7914[label="vuz3190",fontsize=16,color="green",shape="box"];7915[label="vuz3170",fontsize=16,color="green",shape="box"];7916[label="vuz3160",fontsize=16,color="green",shape="box"];7917[label="vuz3170",fontsize=16,color="green",shape="box"];7918[label="vuz3160",fontsize=16,color="green",shape="box"];7919[label="vuz3170",fontsize=16,color="green",shape="box"];7920[label="primQuotInt (Neg vuz382) (gcd2 (primEqInt (primPlusInt (Pos vuz385) (primMulInt vuz318 (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz384) (primMulInt vuz318 (Neg vuz3190))) (Neg vuz383))",fontsize=16,color="burlywood",shape="box"];10991[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7920 -> 10991[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10991 -> 8220[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10992[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7920 -> 10992[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10992 -> 8221[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7921[label="vuz3190",fontsize=16,color="green",shape="box"];7922[label="vuz3170",fontsize=16,color="green",shape="box"];7923[label="vuz3160",fontsize=16,color="green",shape="box"];7924[label="vuz3170",fontsize=16,color="green",shape="box"];7925[label="vuz3160",fontsize=16,color="green",shape="box"];7926[label="vuz3170",fontsize=16,color="green",shape="box"];7927[label="vuz3190",fontsize=16,color="green",shape="box"];7928[label="vuz3170",fontsize=16,color="green",shape="box"];7929[label="primQuotInt (Neg vuz386) (gcd2 (primEqInt (primPlusInt (Neg vuz389) (primMulInt vuz318 (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz388) (primMulInt vuz318 (Neg vuz3190))) (Neg vuz387))",fontsize=16,color="burlywood",shape="box"];10993[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7929 -> 10993[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10993 -> 8222[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10994[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7929 -> 10994[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10994 -> 8223[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7930[label="vuz3190",fontsize=16,color="green",shape="box"];7931[label="vuz3170",fontsize=16,color="green",shape="box"];7932[label="vuz3160",fontsize=16,color="green",shape="box"];7933[label="vuz3170",fontsize=16,color="green",shape="box"];7934[label="vuz3160",fontsize=16,color="green",shape="box"];7935[label="vuz3170",fontsize=16,color="green",shape="box"];7936[label="vuz3190",fontsize=16,color="green",shape="box"];7937[label="vuz3170",fontsize=16,color="green",shape="box"];7938[label="primQuotInt (Pos vuz390) (gcd2 (primEqInt (primPlusInt (Neg vuz393) (primMulInt vuz318 (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz392) (primMulInt vuz318 (Neg vuz3190))) (Pos vuz391))",fontsize=16,color="burlywood",shape="box"];10995[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7938 -> 10995[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10995 -> 8224[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10996[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7938 -> 10996[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10996 -> 8225[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7939[label="vuz3190",fontsize=16,color="green",shape="box"];7940[label="vuz3170",fontsize=16,color="green",shape="box"];7941[label="vuz3160",fontsize=16,color="green",shape="box"];7942[label="vuz3170",fontsize=16,color="green",shape="box"];7943[label="vuz3190",fontsize=16,color="green",shape="box"];7944[label="vuz3170",fontsize=16,color="green",shape="box"];7945[label="vuz3160",fontsize=16,color="green",shape="box"];7946[label="vuz3170",fontsize=16,color="green",shape="box"];7947[label="primQuotInt (Pos vuz394) (gcd2 (primEqInt (primPlusInt (Pos vuz397) (primMulInt vuz318 (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz396) (primMulInt vuz318 (Neg vuz3190))) (Pos vuz395))",fontsize=16,color="burlywood",shape="box"];10997[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7947 -> 10997[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10997 -> 8226[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 10998[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7947 -> 10998[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10998 -> 8227[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7948[label="vuz3160",fontsize=16,color="green",shape="box"];7949[label="vuz3170",fontsize=16,color="green",shape="box"];7950[label="vuz3180",fontsize=16,color="green",shape="box"];7951[label="vuz3190",fontsize=16,color="green",shape="box"];7952[label="vuz3160",fontsize=16,color="green",shape="box"];7953[label="vuz3170",fontsize=16,color="green",shape="box"];7954[label="vuz3180",fontsize=16,color="green",shape="box"];7955[label="vuz3190",fontsize=16,color="green",shape="box"];8229 -> 9987[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8229[label="Pos vuz399 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8229 -> 9989[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8228[label="primQuotInt (Pos vuz398) (gcd2 vuz472 (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10999[label="vuz472/False",fontsize=10,color="white",style="solid",shape="box"];8228 -> 10999[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 10999 -> 8232[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11000[label="vuz472/True",fontsize=10,color="white",style="solid",shape="box"];8228 -> 11000[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11000 -> 8233[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7957[label="vuz3180",fontsize=16,color="green",shape="box"];7958[label="vuz3190",fontsize=16,color="green",shape="box"];7959 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7959[label="primMulNat vuz31600 (Succ vuz31700)",fontsize=16,color="magenta"];7959 -> 8234[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7959 -> 8235[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7960[label="Succ vuz31700",fontsize=16,color="green",shape="box"];7961 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7961[label="primMulNat vuz31600 (Succ vuz31700)",fontsize=16,color="magenta"];7961 -> 8236[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7961 -> 8237[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7962[label="Succ vuz31700",fontsize=16,color="green",shape="box"];7963[label="vuz3180",fontsize=16,color="green",shape="box"];7964[label="vuz3190",fontsize=16,color="green",shape="box"];7965[label="primQuotInt (primMinusNat (Succ vuz4010) vuz400) (reduce2D (primMinusNat vuz403 vuz402) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="burlywood",shape="box"];11001[label="vuz400/Succ vuz4000",fontsize=10,color="white",style="solid",shape="box"];7965 -> 11001[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11001 -> 8238[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11002[label="vuz400/Zero",fontsize=10,color="white",style="solid",shape="box"];7965 -> 11002[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11002 -> 8239[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7966[label="primQuotInt (primMinusNat Zero vuz400) (reduce2D (primMinusNat vuz403 vuz402) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="burlywood",shape="box"];11003[label="vuz400/Succ vuz4000",fontsize=10,color="white",style="solid",shape="box"];7966 -> 11003[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11003 -> 8240[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11004[label="vuz400/Zero",fontsize=10,color="white",style="solid",shape="box"];7966 -> 11004[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11004 -> 8241[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7967[label="vuz3180",fontsize=16,color="green",shape="box"];7968[label="vuz3190",fontsize=16,color="green",shape="box"];7969[label="vuz3180",fontsize=16,color="green",shape="box"];7970[label="vuz3190",fontsize=16,color="green",shape="box"];7971[label="primQuotInt (primMinusNat Zero (Succ vuz4060)) (reduce2D (primMinusNat Zero vuz407) (Neg vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];7971 -> 8242[label="",style="solid", color="black", weight=3]; 67.32/34.79 7972[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero vuz407) (Neg vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];7972 -> 8243[label="",style="solid", color="black", weight=3]; 67.32/34.79 7973[label="vuz3180",fontsize=16,color="green",shape="box"];7974[label="vuz3190",fontsize=16,color="green",shape="box"];7975[label="vuz3180",fontsize=16,color="green",shape="box"];7976[label="vuz3190",fontsize=16,color="green",shape="box"];7977[label="vuz3180",fontsize=16,color="green",shape="box"];7978[label="vuz3190",fontsize=16,color="green",shape="box"];7979[label="vuz3180",fontsize=16,color="green",shape="box"];7980[label="vuz3190",fontsize=16,color="green",shape="box"];7981 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7981[label="primMulNat vuz31600 (Succ vuz31700)",fontsize=16,color="magenta"];7981 -> 8244[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7981 -> 8245[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7982[label="Succ vuz31700",fontsize=16,color="green",shape="box"];7983[label="vuz3180",fontsize=16,color="green",shape="box"];7984[label="vuz3190",fontsize=16,color="green",shape="box"];7985 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 7985[label="primMulNat vuz31600 (Succ vuz31700)",fontsize=16,color="magenta"];7985 -> 8246[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7985 -> 8247[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 7986[label="Succ vuz31700",fontsize=16,color="green",shape="box"];7987[label="vuz3180",fontsize=16,color="green",shape="box"];7988[label="vuz3190",fontsize=16,color="green",shape="box"];7989[label="primQuotInt (primMinusNat (Succ vuz4090) vuz408) (reduce2D (primMinusNat vuz411 vuz410) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="burlywood",shape="box"];11005[label="vuz408/Succ vuz4080",fontsize=10,color="white",style="solid",shape="box"];7989 -> 11005[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11005 -> 8248[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11006[label="vuz408/Zero",fontsize=10,color="white",style="solid",shape="box"];7989 -> 11006[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11006 -> 8249[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7990[label="primQuotInt (primMinusNat Zero vuz408) (reduce2D (primMinusNat vuz411 vuz410) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="burlywood",shape="box"];11007[label="vuz408/Succ vuz4080",fontsize=10,color="white",style="solid",shape="box"];7990 -> 11007[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11007 -> 8250[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11008[label="vuz408/Zero",fontsize=10,color="white",style="solid",shape="box"];7990 -> 11008[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11008 -> 8251[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 7991[label="vuz3180",fontsize=16,color="green",shape="box"];7992[label="vuz3190",fontsize=16,color="green",shape="box"];7993[label="vuz3180",fontsize=16,color="green",shape="box"];7994[label="vuz3190",fontsize=16,color="green",shape="box"];7995[label="primQuotInt (primMinusNat Zero (Succ vuz4140)) (reduce2D (primMinusNat Zero vuz415) (Pos vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];7995 -> 8252[label="",style="solid", color="black", weight=3]; 67.32/34.79 7996[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero vuz415) (Pos vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];7996 -> 8253[label="",style="solid", color="black", weight=3]; 67.32/34.79 7997[label="vuz3180",fontsize=16,color="green",shape="box"];7998[label="vuz3190",fontsize=16,color="green",shape="box"];7999[label="vuz3180",fontsize=16,color="green",shape="box"];8000[label="vuz3190",fontsize=16,color="green",shape="box"];8001[label="vuz3180",fontsize=16,color="green",shape="box"];8002[label="vuz3190",fontsize=16,color="green",shape="box"];8003[label="vuz3180",fontsize=16,color="green",shape="box"];8004[label="vuz3190",fontsize=16,color="green",shape="box"];8005[label="vuz3160",fontsize=16,color="green",shape="box"];8006[label="vuz3170",fontsize=16,color="green",shape="box"];8007[label="vuz3180",fontsize=16,color="green",shape="box"];8008[label="vuz3190",fontsize=16,color="green",shape="box"];8009[label="vuz3160",fontsize=16,color="green",shape="box"];8010[label="vuz3170",fontsize=16,color="green",shape="box"];8011[label="vuz3180",fontsize=16,color="green",shape="box"];8012[label="vuz3190",fontsize=16,color="green",shape="box"];8255 -> 9987[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8255[label="Pos vuz417 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8255 -> 9990[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8254[label="primQuotInt (Pos vuz416) (gcd2 vuz473 (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11009[label="vuz473/False",fontsize=10,color="white",style="solid",shape="box"];8254 -> 11009[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11009 -> 8258[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11010[label="vuz473/True",fontsize=10,color="white",style="solid",shape="box"];8254 -> 11010[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11010 -> 8259[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8014[label="vuz3160",fontsize=16,color="green",shape="box"];8015[label="vuz3170",fontsize=16,color="green",shape="box"];8016 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8016[label="primMulNat vuz31800 (Succ vuz31900)",fontsize=16,color="magenta"];8016 -> 8260[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8016 -> 8261[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8017[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8018[label="vuz3160",fontsize=16,color="green",shape="box"];8019[label="vuz3170",fontsize=16,color="green",shape="box"];8020 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8020[label="primMulNat vuz31800 (Succ vuz31900)",fontsize=16,color="magenta"];8020 -> 8262[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8020 -> 8263[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8021[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8022[label="primQuotInt (primMinusNat (Succ vuz4190) vuz418) (reduce2D (primMinusNat vuz421 vuz420) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];11011[label="vuz418/Succ vuz4180",fontsize=10,color="white",style="solid",shape="box"];8022 -> 11011[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11011 -> 8264[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11012[label="vuz418/Zero",fontsize=10,color="white",style="solid",shape="box"];8022 -> 11012[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11012 -> 8265[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8023[label="primQuotInt (primMinusNat Zero vuz418) (reduce2D (primMinusNat vuz421 vuz420) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];11013[label="vuz418/Succ vuz4180",fontsize=10,color="white",style="solid",shape="box"];8023 -> 11013[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11013 -> 8266[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11014[label="vuz418/Zero",fontsize=10,color="white",style="solid",shape="box"];8023 -> 11014[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11014 -> 8267[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8024[label="vuz3160",fontsize=16,color="green",shape="box"];8025[label="vuz3170",fontsize=16,color="green",shape="box"];8026[label="vuz3160",fontsize=16,color="green",shape="box"];8027[label="vuz3170",fontsize=16,color="green",shape="box"];8028[label="primQuotInt (primMinusNat Zero (Succ vuz4240)) (reduce2D (primMinusNat Zero vuz425) (Pos Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8028 -> 8268[label="",style="solid", color="black", weight=3]; 67.32/34.79 8029[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero vuz425) (Pos Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8029 -> 8269[label="",style="solid", color="black", weight=3]; 67.32/34.79 8030[label="vuz3160",fontsize=16,color="green",shape="box"];8031[label="vuz3170",fontsize=16,color="green",shape="box"];8032[label="vuz3160",fontsize=16,color="green",shape="box"];8033[label="vuz3170",fontsize=16,color="green",shape="box"];8034[label="vuz3160",fontsize=16,color="green",shape="box"];8035[label="vuz3170",fontsize=16,color="green",shape="box"];8036[label="vuz3160",fontsize=16,color="green",shape="box"];8037[label="vuz3170",fontsize=16,color="green",shape="box"];8038[label="vuz3160",fontsize=16,color="green",shape="box"];8039[label="vuz3170",fontsize=16,color="green",shape="box"];8040[label="vuz3180",fontsize=16,color="green",shape="box"];8041[label="vuz3190",fontsize=16,color="green",shape="box"];8042[label="vuz3160",fontsize=16,color="green",shape="box"];8043[label="vuz3170",fontsize=16,color="green",shape="box"];8044[label="vuz3180",fontsize=16,color="green",shape="box"];8045[label="vuz3190",fontsize=16,color="green",shape="box"];8271 -> 9987[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8271[label="Neg vuz427 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8271 -> 9991[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8270[label="primQuotInt (Neg vuz426) (gcd2 vuz474 (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11015[label="vuz474/False",fontsize=10,color="white",style="solid",shape="box"];8270 -> 11015[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11015 -> 8274[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11016[label="vuz474/True",fontsize=10,color="white",style="solid",shape="box"];8270 -> 11016[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11016 -> 8275[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8047[label="vuz3160",fontsize=16,color="green",shape="box"];8048[label="vuz3170",fontsize=16,color="green",shape="box"];8049[label="vuz3180",fontsize=16,color="green",shape="box"];8050[label="vuz3190",fontsize=16,color="green",shape="box"];8051[label="vuz3160",fontsize=16,color="green",shape="box"];8052[label="vuz3170",fontsize=16,color="green",shape="box"];8053[label="vuz3180",fontsize=16,color="green",shape="box"];8054[label="vuz3190",fontsize=16,color="green",shape="box"];8277 -> 9987[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8277[label="Neg vuz429 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8277 -> 9992[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8276[label="primQuotInt (Neg vuz428) (gcd2 vuz475 (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11017[label="vuz475/False",fontsize=10,color="white",style="solid",shape="box"];8276 -> 11017[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11017 -> 8280[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11018[label="vuz475/True",fontsize=10,color="white",style="solid",shape="box"];8276 -> 11018[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11018 -> 8281[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8056 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8056[label="primMulNat vuz31800 (Succ vuz31900)",fontsize=16,color="magenta"];8056 -> 8282[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8056 -> 8283[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8057[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8058[label="vuz3160",fontsize=16,color="green",shape="box"];8059[label="vuz3170",fontsize=16,color="green",shape="box"];8060[label="vuz3160",fontsize=16,color="green",shape="box"];8061[label="vuz3170",fontsize=16,color="green",shape="box"];8062 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8062[label="primMulNat vuz31800 (Succ vuz31900)",fontsize=16,color="magenta"];8062 -> 8284[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8062 -> 8285[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8063[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8064[label="primQuotInt (primMinusNat (Succ vuz4310) vuz430) (reduce2D (primMinusNat vuz433 vuz432) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];11019[label="vuz430/Succ vuz4300",fontsize=10,color="white",style="solid",shape="box"];8064 -> 11019[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11019 -> 8286[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11020[label="vuz430/Zero",fontsize=10,color="white",style="solid",shape="box"];8064 -> 11020[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11020 -> 8287[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8065[label="primQuotInt (primMinusNat Zero vuz430) (reduce2D (primMinusNat vuz433 vuz432) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];11021[label="vuz430/Succ vuz4300",fontsize=10,color="white",style="solid",shape="box"];8065 -> 11021[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11021 -> 8288[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11022[label="vuz430/Zero",fontsize=10,color="white",style="solid",shape="box"];8065 -> 11022[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11022 -> 8289[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8066[label="vuz3160",fontsize=16,color="green",shape="box"];8067[label="vuz3170",fontsize=16,color="green",shape="box"];8068[label="vuz3160",fontsize=16,color="green",shape="box"];8069[label="vuz3170",fontsize=16,color="green",shape="box"];8070[label="primQuotInt (primMinusNat Zero (Succ vuz4360)) (reduce2D (primMinusNat Zero vuz437) (Neg Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8070 -> 8290[label="",style="solid", color="black", weight=3]; 67.32/34.79 8071[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero vuz437) (Neg Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8071 -> 8291[label="",style="solid", color="black", weight=3]; 67.32/34.79 8072[label="vuz3160",fontsize=16,color="green",shape="box"];8073[label="vuz3170",fontsize=16,color="green",shape="box"];8074[label="vuz3160",fontsize=16,color="green",shape="box"];8075[label="vuz3170",fontsize=16,color="green",shape="box"];8076[label="vuz3160",fontsize=16,color="green",shape="box"];8077[label="vuz3170",fontsize=16,color="green",shape="box"];8078[label="vuz3160",fontsize=16,color="green",shape="box"];8079[label="vuz3170",fontsize=16,color="green",shape="box"];8080 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8080[label="primMulNat vuz31800 (Succ vuz31900)",fontsize=16,color="magenta"];8080 -> 8292[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8080 -> 8293[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8081[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8082[label="vuz3160",fontsize=16,color="green",shape="box"];8083[label="vuz3170",fontsize=16,color="green",shape="box"];8084[label="vuz3160",fontsize=16,color="green",shape="box"];8085[label="vuz3170",fontsize=16,color="green",shape="box"];8086 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8086[label="primMulNat vuz31800 (Succ vuz31900)",fontsize=16,color="magenta"];8086 -> 8294[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8086 -> 8295[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8087[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8088[label="primQuotInt (primMinusNat (Succ vuz4390) vuz438) (reduce2D (primMinusNat vuz441 vuz440) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];11023[label="vuz438/Succ vuz4380",fontsize=10,color="white",style="solid",shape="box"];8088 -> 11023[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11023 -> 8296[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11024[label="vuz438/Zero",fontsize=10,color="white",style="solid",shape="box"];8088 -> 11024[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11024 -> 8297[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8089[label="primQuotInt (primMinusNat Zero vuz438) (reduce2D (primMinusNat vuz441 vuz440) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];11025[label="vuz438/Succ vuz4380",fontsize=10,color="white",style="solid",shape="box"];8089 -> 11025[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11025 -> 8298[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11026[label="vuz438/Zero",fontsize=10,color="white",style="solid",shape="box"];8089 -> 11026[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11026 -> 8299[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8090[label="vuz3160",fontsize=16,color="green",shape="box"];8091[label="vuz3170",fontsize=16,color="green",shape="box"];8092[label="vuz3160",fontsize=16,color="green",shape="box"];8093[label="vuz3170",fontsize=16,color="green",shape="box"];8094[label="primQuotInt (primMinusNat Zero (Succ vuz4440)) (reduce2D (primMinusNat Zero vuz445) (Pos Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8094 -> 8300[label="",style="solid", color="black", weight=3]; 67.32/34.79 8095[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero vuz445) (Pos Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8095 -> 8301[label="",style="solid", color="black", weight=3]; 67.32/34.79 8096[label="vuz3160",fontsize=16,color="green",shape="box"];8097[label="vuz3170",fontsize=16,color="green",shape="box"];8098[label="vuz3160",fontsize=16,color="green",shape="box"];8099[label="vuz3170",fontsize=16,color="green",shape="box"];8100[label="vuz3160",fontsize=16,color="green",shape="box"];8101[label="vuz3170",fontsize=16,color="green",shape="box"];8102[label="vuz3160",fontsize=16,color="green",shape="box"];8103[label="vuz3170",fontsize=16,color="green",shape="box"];8104[label="vuz3160",fontsize=16,color="green",shape="box"];8105[label="vuz3170",fontsize=16,color="green",shape="box"];8106[label="vuz3180",fontsize=16,color="green",shape="box"];8107[label="vuz3190",fontsize=16,color="green",shape="box"];8108[label="vuz3160",fontsize=16,color="green",shape="box"];8109[label="vuz3170",fontsize=16,color="green",shape="box"];8110[label="vuz3180",fontsize=16,color="green",shape="box"];8111[label="vuz3190",fontsize=16,color="green",shape="box"];8303 -> 9987[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8303[label="Neg vuz447 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8303 -> 9993[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8302[label="primQuotInt (Neg vuz446) (gcd2 vuz476 (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11027[label="vuz476/False",fontsize=10,color="white",style="solid",shape="box"];8302 -> 11027[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11027 -> 8306[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11028[label="vuz476/True",fontsize=10,color="white",style="solid",shape="box"];8302 -> 11028[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11028 -> 8307[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8113[label="vuz3160",fontsize=16,color="green",shape="box"];8114[label="vuz3170",fontsize=16,color="green",shape="box"];8115[label="vuz3180",fontsize=16,color="green",shape="box"];8116[label="vuz3190",fontsize=16,color="green",shape="box"];8117[label="vuz3160",fontsize=16,color="green",shape="box"];8118[label="vuz3170",fontsize=16,color="green",shape="box"];8119[label="vuz3180",fontsize=16,color="green",shape="box"];8120[label="vuz3190",fontsize=16,color="green",shape="box"];8309 -> 9987[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8309[label="Neg vuz349 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8309 -> 9994[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8308[label="primQuotInt (Neg vuz348) (gcd2 vuz477 (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11029[label="vuz477/False",fontsize=10,color="white",style="solid",shape="box"];8308 -> 11029[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11029 -> 8312[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11030[label="vuz477/True",fontsize=10,color="white",style="solid",shape="box"];8308 -> 11030[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11030 -> 8313[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8122 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8122[label="primMulNat vuz31800 (Succ vuz31900)",fontsize=16,color="magenta"];8122 -> 8314[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8122 -> 8315[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8123[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8124 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8124[label="primMulNat vuz31800 (Succ vuz31900)",fontsize=16,color="magenta"];8124 -> 8316[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8124 -> 8317[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8125[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8126[label="vuz3160",fontsize=16,color="green",shape="box"];8127[label="vuz3170",fontsize=16,color="green",shape="box"];8128[label="vuz3160",fontsize=16,color="green",shape="box"];8129[label="vuz3170",fontsize=16,color="green",shape="box"];8130[label="primQuotInt (primMinusNat (Succ vuz4490) vuz448) (reduce2D (primMinusNat vuz451 vuz450) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];11031[label="vuz448/Succ vuz4480",fontsize=10,color="white",style="solid",shape="box"];8130 -> 11031[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11031 -> 8318[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11032[label="vuz448/Zero",fontsize=10,color="white",style="solid",shape="box"];8130 -> 11032[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11032 -> 8319[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8131[label="primQuotInt (primMinusNat Zero vuz448) (reduce2D (primMinusNat vuz451 vuz450) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];11033[label="vuz448/Succ vuz4480",fontsize=10,color="white",style="solid",shape="box"];8131 -> 11033[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11033 -> 8320[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11034[label="vuz448/Zero",fontsize=10,color="white",style="solid",shape="box"];8131 -> 11034[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11034 -> 8321[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8132[label="vuz3160",fontsize=16,color="green",shape="box"];8133[label="vuz3170",fontsize=16,color="green",shape="box"];8134[label="vuz3160",fontsize=16,color="green",shape="box"];8135[label="vuz3170",fontsize=16,color="green",shape="box"];8136[label="primQuotInt (primMinusNat Zero (Succ vuz4540)) (reduce2D (primMinusNat Zero vuz455) (Neg Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8136 -> 8322[label="",style="solid", color="black", weight=3]; 67.32/34.79 8137[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero vuz455) (Neg Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8137 -> 8323[label="",style="solid", color="black", weight=3]; 67.32/34.79 8138[label="vuz3160",fontsize=16,color="green",shape="box"];8139[label="vuz3170",fontsize=16,color="green",shape="box"];8140[label="vuz3160",fontsize=16,color="green",shape="box"];8141[label="vuz3170",fontsize=16,color="green",shape="box"];8142[label="vuz3160",fontsize=16,color="green",shape="box"];8143[label="vuz3170",fontsize=16,color="green",shape="box"];8144[label="vuz3160",fontsize=16,color="green",shape="box"];8145[label="vuz3170",fontsize=16,color="green",shape="box"];8146[label="vuz3160",fontsize=16,color="green",shape="box"];8147[label="vuz3170",fontsize=16,color="green",shape="box"];8148[label="vuz3180",fontsize=16,color="green",shape="box"];8149[label="vuz3190",fontsize=16,color="green",shape="box"];8150[label="vuz3160",fontsize=16,color="green",shape="box"];8151[label="vuz3170",fontsize=16,color="green",shape="box"];8152[label="vuz3180",fontsize=16,color="green",shape="box"];8153[label="vuz3190",fontsize=16,color="green",shape="box"];8325 -> 9987[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8325[label="Pos vuz355 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8325 -> 9995[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8324[label="primQuotInt (Pos vuz354) (gcd2 vuz478 (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11035[label="vuz478/False",fontsize=10,color="white",style="solid",shape="box"];8324 -> 11035[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11035 -> 8328[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11036[label="vuz478/True",fontsize=10,color="white",style="solid",shape="box"];8324 -> 11036[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11036 -> 8329[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8155 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8155[label="primMulNat vuz31600 (Succ vuz31700)",fontsize=16,color="magenta"];8155 -> 8330[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8155 -> 8331[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8156[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8157[label="vuz3180",fontsize=16,color="green",shape="box"];8158[label="vuz3190",fontsize=16,color="green",shape="box"];8159[label="vuz3180",fontsize=16,color="green",shape="box"];8160[label="vuz3190",fontsize=16,color="green",shape="box"];8161 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8161[label="primMulNat vuz31600 (Succ vuz31700)",fontsize=16,color="magenta"];8161 -> 8332[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8161 -> 8333[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8162[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8163[label="primQuotInt (primMinusNat (Succ vuz4570) vuz456) (reduce2D (primMinusNat vuz459 vuz458) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="burlywood",shape="box"];11037[label="vuz456/Succ vuz4560",fontsize=10,color="white",style="solid",shape="box"];8163 -> 11037[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11037 -> 8334[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11038[label="vuz456/Zero",fontsize=10,color="white",style="solid",shape="box"];8163 -> 11038[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11038 -> 8335[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8164[label="primQuotInt (primMinusNat Zero vuz456) (reduce2D (primMinusNat vuz459 vuz458) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="burlywood",shape="box"];11039[label="vuz456/Succ vuz4560",fontsize=10,color="white",style="solid",shape="box"];8164 -> 11039[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11039 -> 8336[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11040[label="vuz456/Zero",fontsize=10,color="white",style="solid",shape="box"];8164 -> 11040[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11040 -> 8337[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8165[label="vuz3180",fontsize=16,color="green",shape="box"];8166[label="vuz3190",fontsize=16,color="green",shape="box"];8167[label="vuz3180",fontsize=16,color="green",shape="box"];8168[label="vuz3190",fontsize=16,color="green",shape="box"];8169[label="primQuotInt (primMinusNat Zero (Succ vuz4620)) (reduce2D (primMinusNat Zero vuz463) (Neg vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8169 -> 8338[label="",style="solid", color="black", weight=3]; 67.32/34.79 8170[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero vuz463) (Neg vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8170 -> 8339[label="",style="solid", color="black", weight=3]; 67.32/34.79 8171[label="vuz3180",fontsize=16,color="green",shape="box"];8172[label="vuz3190",fontsize=16,color="green",shape="box"];8173[label="vuz3180",fontsize=16,color="green",shape="box"];8174[label="vuz3190",fontsize=16,color="green",shape="box"];8175[label="vuz3180",fontsize=16,color="green",shape="box"];8176[label="vuz3190",fontsize=16,color="green",shape="box"];8177[label="vuz3180",fontsize=16,color="green",shape="box"];8178[label="vuz3190",fontsize=16,color="green",shape="box"];8179 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8179[label="primMulNat vuz31600 (Succ vuz31700)",fontsize=16,color="magenta"];8179 -> 8340[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8179 -> 8341[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8180[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8181[label="vuz3180",fontsize=16,color="green",shape="box"];8182[label="vuz3190",fontsize=16,color="green",shape="box"];8183[label="vuz3180",fontsize=16,color="green",shape="box"];8184[label="vuz3190",fontsize=16,color="green",shape="box"];8185 -> 7480[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8185[label="primMulNat vuz31600 (Succ vuz31700)",fontsize=16,color="magenta"];8185 -> 8342[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8185 -> 8343[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8186[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8187[label="primQuotInt (primMinusNat (Succ vuz4650) vuz464) (reduce2D (primMinusNat vuz467 vuz466) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="burlywood",shape="box"];11041[label="vuz464/Succ vuz4640",fontsize=10,color="white",style="solid",shape="box"];8187 -> 11041[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11041 -> 8344[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11042[label="vuz464/Zero",fontsize=10,color="white",style="solid",shape="box"];8187 -> 11042[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11042 -> 8345[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8188[label="primQuotInt (primMinusNat Zero vuz464) (reduce2D (primMinusNat vuz467 vuz466) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="burlywood",shape="box"];11043[label="vuz464/Succ vuz4640",fontsize=10,color="white",style="solid",shape="box"];8188 -> 11043[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11043 -> 8346[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11044[label="vuz464/Zero",fontsize=10,color="white",style="solid",shape="box"];8188 -> 11044[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11044 -> 8347[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8189[label="vuz3180",fontsize=16,color="green",shape="box"];8190[label="vuz3190",fontsize=16,color="green",shape="box"];8191[label="vuz3180",fontsize=16,color="green",shape="box"];8192[label="vuz3190",fontsize=16,color="green",shape="box"];8193[label="primQuotInt (primMinusNat Zero (Succ vuz4700)) (reduce2D (primMinusNat Zero vuz471) (Pos vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8193 -> 8348[label="",style="solid", color="black", weight=3]; 67.32/34.79 8194[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero vuz471) (Pos vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8194 -> 8349[label="",style="solid", color="black", weight=3]; 67.32/34.79 8195[label="vuz3180",fontsize=16,color="green",shape="box"];8196[label="vuz3190",fontsize=16,color="green",shape="box"];8197[label="vuz3180",fontsize=16,color="green",shape="box"];8198[label="vuz3190",fontsize=16,color="green",shape="box"];8199[label="vuz3180",fontsize=16,color="green",shape="box"];8200[label="vuz3190",fontsize=16,color="green",shape="box"];8201[label="vuz3180",fontsize=16,color="green",shape="box"];8202[label="vuz3190",fontsize=16,color="green",shape="box"];8203[label="vuz3160",fontsize=16,color="green",shape="box"];8204[label="vuz3170",fontsize=16,color="green",shape="box"];8205[label="vuz3180",fontsize=16,color="green",shape="box"];8206[label="vuz3190",fontsize=16,color="green",shape="box"];8207[label="vuz3160",fontsize=16,color="green",shape="box"];8208[label="vuz3170",fontsize=16,color="green",shape="box"];8209[label="vuz3180",fontsize=16,color="green",shape="box"];8210[label="vuz3190",fontsize=16,color="green",shape="box"];8351 -> 9987[label="",style="dashed", color="red", weight=0]; 67.32/34.79 8351[label="Pos vuz361 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8351 -> 9996[label="",style="dashed", color="magenta", weight=3]; 67.32/34.79 8350[label="primQuotInt (Pos vuz360) (gcd2 vuz479 (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11045[label="vuz479/False",fontsize=10,color="white",style="solid",shape="box"];8350 -> 11045[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11045 -> 8354[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 11046[label="vuz479/True",fontsize=10,color="white",style="solid",shape="box"];8350 -> 11046[label="",style="solid", color="burlywood", weight=9]; 67.32/34.79 11046 -> 8355[label="",style="solid", color="burlywood", weight=3]; 67.32/34.79 8212[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primPlusInt (Pos vuz369) (primMulInt (Pos vuz3180) (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz368) (primMulInt (Pos vuz3180) (Pos vuz3190))) (Pos vuz367))",fontsize=16,color="black",shape="box"];8212 -> 8356[label="",style="solid", color="black", weight=3]; 67.32/34.79 8213[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primPlusInt (Pos vuz369) (primMulInt (Neg vuz3180) (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz368) (primMulInt (Neg vuz3180) (Pos vuz3190))) (Pos vuz367))",fontsize=16,color="black",shape="box"];8213 -> 8357[label="",style="solid", color="black", weight=3]; 67.32/34.79 8214[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primPlusInt (Neg vuz373) (primMulInt (Pos vuz3180) (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz372) (primMulInt (Pos vuz3180) (Pos vuz3190))) (Pos vuz371))",fontsize=16,color="black",shape="box"];8214 -> 8358[label="",style="solid", color="black", weight=3]; 67.32/34.79 8215[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primPlusInt (Neg vuz373) (primMulInt (Neg vuz3180) (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz372) (primMulInt (Neg vuz3180) (Pos vuz3190))) (Pos vuz371))",fontsize=16,color="black",shape="box"];8215 -> 8359[label="",style="solid", color="black", weight=3]; 67.32/34.79 8216[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primPlusInt (Neg vuz377) (primMulInt (Pos vuz3180) (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz376) (primMulInt (Pos vuz3180) (Pos vuz3190))) (Neg vuz375))",fontsize=16,color="black",shape="box"];8216 -> 8360[label="",style="solid", color="black", weight=3]; 67.32/34.79 8217[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primPlusInt (Neg vuz377) (primMulInt (Neg vuz3180) (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz376) (primMulInt (Neg vuz3180) (Pos vuz3190))) (Neg vuz375))",fontsize=16,color="black",shape="box"];8217 -> 8361[label="",style="solid", color="black", weight=3]; 67.32/34.79 8218[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primPlusInt (Pos vuz381) (primMulInt (Pos vuz3180) (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz380) (primMulInt (Pos vuz3180) (Pos vuz3190))) (Neg vuz379))",fontsize=16,color="black",shape="box"];8218 -> 8362[label="",style="solid", color="black", weight=3]; 67.32/34.79 8219[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primPlusInt (Pos vuz381) (primMulInt (Neg vuz3180) (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz380) (primMulInt (Neg vuz3180) (Pos vuz3190))) (Neg vuz379))",fontsize=16,color="black",shape="box"];8219 -> 8363[label="",style="solid", color="black", weight=3]; 67.32/34.79 8220[label="primQuotInt (Neg vuz382) (gcd2 (primEqInt (primPlusInt (Pos vuz385) (primMulInt (Pos vuz3180) (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz384) (primMulInt (Pos vuz3180) (Neg vuz3190))) (Neg vuz383))",fontsize=16,color="black",shape="box"];8220 -> 8364[label="",style="solid", color="black", weight=3]; 67.32/34.79 8221[label="primQuotInt (Neg vuz382) (gcd2 (primEqInt (primPlusInt (Pos vuz385) (primMulInt (Neg vuz3180) (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz384) (primMulInt (Neg vuz3180) (Neg vuz3190))) (Neg vuz383))",fontsize=16,color="black",shape="box"];8221 -> 8365[label="",style="solid", color="black", weight=3]; 67.32/34.79 8222[label="primQuotInt (Neg vuz386) (gcd2 (primEqInt (primPlusInt (Neg vuz389) (primMulInt (Pos vuz3180) (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz388) (primMulInt (Pos vuz3180) (Neg vuz3190))) (Neg vuz387))",fontsize=16,color="black",shape="box"];8222 -> 8366[label="",style="solid", color="black", weight=3]; 67.32/34.79 8223[label="primQuotInt (Neg vuz386) (gcd2 (primEqInt (primPlusInt (Neg vuz389) (primMulInt (Neg vuz3180) (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz388) (primMulInt (Neg vuz3180) (Neg vuz3190))) (Neg vuz387))",fontsize=16,color="black",shape="box"];8223 -> 8367[label="",style="solid", color="black", weight=3]; 67.32/34.79 8224[label="primQuotInt (Pos vuz390) (gcd2 (primEqInt (primPlusInt (Neg vuz393) (primMulInt (Pos vuz3180) (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz392) (primMulInt (Pos vuz3180) (Neg vuz3190))) (Pos vuz391))",fontsize=16,color="black",shape="box"];8224 -> 8368[label="",style="solid", color="black", weight=3]; 67.32/34.79 8225[label="primQuotInt (Pos vuz390) (gcd2 (primEqInt (primPlusInt (Neg vuz393) (primMulInt (Neg vuz3180) (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz392) (primMulInt (Neg vuz3180) (Neg vuz3190))) (Pos vuz391))",fontsize=16,color="black",shape="box"];8225 -> 8369[label="",style="solid", color="black", weight=3]; 67.32/34.79 8226[label="primQuotInt (Pos vuz394) (gcd2 (primEqInt (primPlusInt (Pos vuz397) (primMulInt (Pos vuz3180) (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz396) (primMulInt (Pos vuz3180) (Neg vuz3190))) (Pos vuz395))",fontsize=16,color="black",shape="box"];8226 -> 8370[label="",style="solid", color="black", weight=3]; 67.32/34.79 8227[label="primQuotInt (Pos vuz394) (gcd2 (primEqInt (primPlusInt (Pos vuz397) (primMulInt (Neg vuz3180) (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz396) (primMulInt (Neg vuz3180) (Neg vuz3190))) (Pos vuz395))",fontsize=16,color="black",shape="box"];8227 -> 8371[label="",style="solid", color="black", weight=3]; 67.32/34.79 9989[label="Pos vuz399",fontsize=16,color="green",shape="box"];8232[label="primQuotInt (Pos vuz398) (gcd2 False (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8232 -> 8373[label="",style="solid", color="black", weight=3]; 67.32/34.79 8233[label="primQuotInt (Pos vuz398) (gcd2 True (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8233 -> 8374[label="",style="solid", color="black", weight=3]; 67.32/34.79 8234[label="vuz31600",fontsize=16,color="green",shape="box"];8235[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8236[label="vuz31600",fontsize=16,color="green",shape="box"];8237[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8238[label="primQuotInt (primMinusNat (Succ vuz4010) (Succ vuz4000)) (reduce2D (primMinusNat vuz403 vuz402) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8238 -> 8375[label="",style="solid", color="black", weight=3]; 67.32/34.79 8239[label="primQuotInt (primMinusNat (Succ vuz4010) Zero) (reduce2D (primMinusNat vuz403 vuz402) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8239 -> 8376[label="",style="solid", color="black", weight=3]; 67.32/34.79 8240[label="primQuotInt (primMinusNat Zero (Succ vuz4000)) (reduce2D (primMinusNat vuz403 vuz402) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8240 -> 8377[label="",style="solid", color="black", weight=3]; 67.32/34.79 8241[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat vuz403 vuz402) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8241 -> 8378[label="",style="solid", color="black", weight=3]; 67.32/34.79 8242[label="primQuotInt (Neg (Succ vuz4060)) (reduce2D (Neg (Succ vuz4060)) (Neg vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];8242 -> 8379[label="",style="solid", color="black", weight=3]; 67.32/34.79 8243[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];8243 -> 8380[label="",style="solid", color="black", weight=3]; 67.32/34.79 8244[label="vuz31600",fontsize=16,color="green",shape="box"];8245[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8246[label="vuz31600",fontsize=16,color="green",shape="box"];8247[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8248[label="primQuotInt (primMinusNat (Succ vuz4090) (Succ vuz4080)) (reduce2D (primMinusNat vuz411 vuz410) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8248 -> 8381[label="",style="solid", color="black", weight=3]; 67.32/34.79 8249[label="primQuotInt (primMinusNat (Succ vuz4090) Zero) (reduce2D (primMinusNat vuz411 vuz410) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8249 -> 8382[label="",style="solid", color="black", weight=3]; 67.32/34.79 8250[label="primQuotInt (primMinusNat Zero (Succ vuz4080)) (reduce2D (primMinusNat vuz411 vuz410) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8250 -> 8383[label="",style="solid", color="black", weight=3]; 67.32/34.79 8251[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat vuz411 vuz410) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8251 -> 8384[label="",style="solid", color="black", weight=3]; 67.32/34.79 8252[label="primQuotInt (Neg (Succ vuz4140)) (reduce2D (Neg (Succ vuz4140)) (Pos vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];8252 -> 8385[label="",style="solid", color="black", weight=3]; 67.32/34.79 8253[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];8253 -> 8386[label="",style="solid", color="black", weight=3]; 67.32/34.79 9990[label="Pos vuz417",fontsize=16,color="green",shape="box"];8258[label="primQuotInt (Pos vuz416) (gcd2 False (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8258 -> 8387[label="",style="solid", color="black", weight=3]; 67.32/34.79 8259[label="primQuotInt (Pos vuz416) (gcd2 True (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8259 -> 8388[label="",style="solid", color="black", weight=3]; 67.32/34.79 8260[label="vuz31800",fontsize=16,color="green",shape="box"];8261[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8262[label="vuz31800",fontsize=16,color="green",shape="box"];8263[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8264[label="primQuotInt (primMinusNat (Succ vuz4190) (Succ vuz4180)) (reduce2D (primMinusNat vuz421 vuz420) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8264 -> 8389[label="",style="solid", color="black", weight=3]; 67.32/34.79 8265[label="primQuotInt (primMinusNat (Succ vuz4190) Zero) (reduce2D (primMinusNat vuz421 vuz420) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8265 -> 8390[label="",style="solid", color="black", weight=3]; 67.32/34.79 8266[label="primQuotInt (primMinusNat Zero (Succ vuz4180)) (reduce2D (primMinusNat vuz421 vuz420) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8266 -> 8391[label="",style="solid", color="black", weight=3]; 67.32/34.79 8267[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat vuz421 vuz420) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8267 -> 8392[label="",style="solid", color="black", weight=3]; 67.32/34.79 8268[label="primQuotInt (Neg (Succ vuz4240)) (reduce2D (Neg (Succ vuz4240)) (Pos Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8268 -> 8393[label="",style="solid", color="black", weight=3]; 67.32/34.79 8269[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8269 -> 8394[label="",style="solid", color="black", weight=3]; 67.32/34.79 9991[label="Neg vuz427",fontsize=16,color="green",shape="box"];8274[label="primQuotInt (Neg vuz426) (gcd2 False (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8274 -> 8396[label="",style="solid", color="black", weight=3]; 67.32/34.79 8275[label="primQuotInt (Neg vuz426) (gcd2 True (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8275 -> 8397[label="",style="solid", color="black", weight=3]; 67.32/34.79 9992[label="Neg vuz429",fontsize=16,color="green",shape="box"];8280[label="primQuotInt (Neg vuz428) (gcd2 False (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8280 -> 8398[label="",style="solid", color="black", weight=3]; 67.32/34.79 8281[label="primQuotInt (Neg vuz428) (gcd2 True (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8281 -> 8399[label="",style="solid", color="black", weight=3]; 67.32/34.79 8282[label="vuz31800",fontsize=16,color="green",shape="box"];8283[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8284[label="vuz31800",fontsize=16,color="green",shape="box"];8285[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8286[label="primQuotInt (primMinusNat (Succ vuz4310) (Succ vuz4300)) (reduce2D (primMinusNat vuz433 vuz432) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8286 -> 8400[label="",style="solid", color="black", weight=3]; 67.32/34.79 8287[label="primQuotInt (primMinusNat (Succ vuz4310) Zero) (reduce2D (primMinusNat vuz433 vuz432) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8287 -> 8401[label="",style="solid", color="black", weight=3]; 67.32/34.79 8288[label="primQuotInt (primMinusNat Zero (Succ vuz4300)) (reduce2D (primMinusNat vuz433 vuz432) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8288 -> 8402[label="",style="solid", color="black", weight=3]; 67.32/34.79 8289[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat vuz433 vuz432) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8289 -> 8403[label="",style="solid", color="black", weight=3]; 67.32/34.79 8290[label="primQuotInt (Neg (Succ vuz4360)) (reduce2D (Neg (Succ vuz4360)) (Neg Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8290 -> 8404[label="",style="solid", color="black", weight=3]; 67.32/34.79 8291[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8291 -> 8405[label="",style="solid", color="black", weight=3]; 67.32/34.79 8292[label="vuz31800",fontsize=16,color="green",shape="box"];8293[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8294[label="vuz31800",fontsize=16,color="green",shape="box"];8295[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8296[label="primQuotInt (primMinusNat (Succ vuz4390) (Succ vuz4380)) (reduce2D (primMinusNat vuz441 vuz440) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8296 -> 8406[label="",style="solid", color="black", weight=3]; 67.32/34.79 8297[label="primQuotInt (primMinusNat (Succ vuz4390) Zero) (reduce2D (primMinusNat vuz441 vuz440) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8297 -> 8407[label="",style="solid", color="black", weight=3]; 67.32/34.79 8298[label="primQuotInt (primMinusNat Zero (Succ vuz4380)) (reduce2D (primMinusNat vuz441 vuz440) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8298 -> 8408[label="",style="solid", color="black", weight=3]; 67.32/34.79 8299[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat vuz441 vuz440) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8299 -> 8409[label="",style="solid", color="black", weight=3]; 67.32/34.79 8300[label="primQuotInt (Neg (Succ vuz4440)) (reduce2D (Neg (Succ vuz4440)) (Pos Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8300 -> 8410[label="",style="solid", color="black", weight=3]; 67.32/34.79 8301[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8301 -> 8411[label="",style="solid", color="black", weight=3]; 67.32/34.79 9993[label="Neg vuz447",fontsize=16,color="green",shape="box"];8306[label="primQuotInt (Neg vuz446) (gcd2 False (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8306 -> 8412[label="",style="solid", color="black", weight=3]; 67.32/34.79 8307[label="primQuotInt (Neg vuz446) (gcd2 True (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8307 -> 8413[label="",style="solid", color="black", weight=3]; 67.32/34.79 9994[label="Neg vuz349",fontsize=16,color="green",shape="box"];8312[label="primQuotInt (Neg vuz348) (gcd2 False (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8312 -> 8414[label="",style="solid", color="black", weight=3]; 67.32/34.79 8313[label="primQuotInt (Neg vuz348) (gcd2 True (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8313 -> 8415[label="",style="solid", color="black", weight=3]; 67.32/34.79 8314[label="vuz31800",fontsize=16,color="green",shape="box"];8315[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8316[label="vuz31800",fontsize=16,color="green",shape="box"];8317[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8318[label="primQuotInt (primMinusNat (Succ vuz4490) (Succ vuz4480)) (reduce2D (primMinusNat vuz451 vuz450) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8318 -> 8416[label="",style="solid", color="black", weight=3]; 67.32/34.79 8319[label="primQuotInt (primMinusNat (Succ vuz4490) Zero) (reduce2D (primMinusNat vuz451 vuz450) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8319 -> 8417[label="",style="solid", color="black", weight=3]; 67.71/34.80 8320[label="primQuotInt (primMinusNat Zero (Succ vuz4480)) (reduce2D (primMinusNat vuz451 vuz450) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8320 -> 8418[label="",style="solid", color="black", weight=3]; 67.71/34.80 8321[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat vuz451 vuz450) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8321 -> 8419[label="",style="solid", color="black", weight=3]; 67.71/34.80 8322[label="primQuotInt (Neg (Succ vuz4540)) (reduce2D (Neg (Succ vuz4540)) (Neg Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8322 -> 8420[label="",style="solid", color="black", weight=3]; 67.71/34.80 8323[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8323 -> 8421[label="",style="solid", color="black", weight=3]; 67.71/34.80 9995[label="Pos vuz355",fontsize=16,color="green",shape="box"];8328[label="primQuotInt (Pos vuz354) (gcd2 False (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8328 -> 8422[label="",style="solid", color="black", weight=3]; 67.71/34.80 8329[label="primQuotInt (Pos vuz354) (gcd2 True (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8329 -> 8423[label="",style="solid", color="black", weight=3]; 67.71/34.80 8330[label="vuz31600",fontsize=16,color="green",shape="box"];8331[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8332[label="vuz31600",fontsize=16,color="green",shape="box"];8333[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8334[label="primQuotInt (primMinusNat (Succ vuz4570) (Succ vuz4560)) (reduce2D (primMinusNat vuz459 vuz458) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8334 -> 8424[label="",style="solid", color="black", weight=3]; 67.71/34.80 8335[label="primQuotInt (primMinusNat (Succ vuz4570) Zero) (reduce2D (primMinusNat vuz459 vuz458) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8335 -> 8425[label="",style="solid", color="black", weight=3]; 67.71/34.80 8336[label="primQuotInt (primMinusNat Zero (Succ vuz4560)) (reduce2D (primMinusNat vuz459 vuz458) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8336 -> 8426[label="",style="solid", color="black", weight=3]; 67.71/34.80 8337[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat vuz459 vuz458) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8337 -> 8427[label="",style="solid", color="black", weight=3]; 67.71/34.80 8338[label="primQuotInt (Neg (Succ vuz4620)) (reduce2D (Neg (Succ vuz4620)) (Neg vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8338 -> 8428[label="",style="solid", color="black", weight=3]; 67.71/34.80 8339[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8339 -> 8429[label="",style="solid", color="black", weight=3]; 67.71/34.80 8340[label="vuz31600",fontsize=16,color="green",shape="box"];8341[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8342[label="vuz31600",fontsize=16,color="green",shape="box"];8343[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8344[label="primQuotInt (primMinusNat (Succ vuz4650) (Succ vuz4640)) (reduce2D (primMinusNat vuz467 vuz466) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8344 -> 8430[label="",style="solid", color="black", weight=3]; 67.71/34.80 8345[label="primQuotInt (primMinusNat (Succ vuz4650) Zero) (reduce2D (primMinusNat vuz467 vuz466) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8345 -> 8431[label="",style="solid", color="black", weight=3]; 67.71/34.80 8346[label="primQuotInt (primMinusNat Zero (Succ vuz4640)) (reduce2D (primMinusNat vuz467 vuz466) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8346 -> 8432[label="",style="solid", color="black", weight=3]; 67.71/34.80 8347[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat vuz467 vuz466) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8347 -> 8433[label="",style="solid", color="black", weight=3]; 67.71/34.80 8348[label="primQuotInt (Neg (Succ vuz4700)) (reduce2D (Neg (Succ vuz4700)) (Pos vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8348 -> 8434[label="",style="solid", color="black", weight=3]; 67.71/34.80 8349[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8349 -> 8435[label="",style="solid", color="black", weight=3]; 67.71/34.80 9996[label="Pos vuz361",fontsize=16,color="green",shape="box"];8354[label="primQuotInt (Pos vuz360) (gcd2 False (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8354 -> 8436[label="",style="solid", color="black", weight=3]; 67.71/34.80 8355[label="primQuotInt (Pos vuz360) (gcd2 True (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8355 -> 8437[label="",style="solid", color="black", weight=3]; 67.71/34.80 8356 -> 8438[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8356[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primPlusInt (Pos vuz369) (Pos (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz368) (Pos (primMulNat vuz3180 vuz3190))) (Pos vuz367))",fontsize=16,color="magenta"];8356 -> 8439[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8356 -> 8440[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8357 -> 8447[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8357[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primPlusInt (Pos vuz369) (Neg (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz368) (Neg (primMulNat vuz3180 vuz3190))) (Pos vuz367))",fontsize=16,color="magenta"];8357 -> 8448[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8357 -> 8449[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8358 -> 8456[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8358[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primPlusInt (Neg vuz373) (Pos (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz372) (Pos (primMulNat vuz3180 vuz3190))) (Pos vuz371))",fontsize=16,color="magenta"];8358 -> 8457[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8358 -> 8458[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8359 -> 8465[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8359[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primPlusInt (Neg vuz373) (Neg (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz372) (Neg (primMulNat vuz3180 vuz3190))) (Pos vuz371))",fontsize=16,color="magenta"];8359 -> 8466[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8359 -> 8467[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8360 -> 8474[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8360[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primPlusInt (Neg vuz377) (Pos (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz376) (Pos (primMulNat vuz3180 vuz3190))) (Neg vuz375))",fontsize=16,color="magenta"];8360 -> 8475[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8360 -> 8476[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8361 -> 8483[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8361[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primPlusInt (Neg vuz377) (Neg (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz376) (Neg (primMulNat vuz3180 vuz3190))) (Neg vuz375))",fontsize=16,color="magenta"];8361 -> 8484[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8361 -> 8485[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8362 -> 8492[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8362[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primPlusInt (Pos vuz381) (Pos (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz380) (Pos (primMulNat vuz3180 vuz3190))) (Neg vuz379))",fontsize=16,color="magenta"];8362 -> 8493[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8362 -> 8494[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8363 -> 8501[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8363[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primPlusInt (Pos vuz381) (Neg (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz380) (Neg (primMulNat vuz3180 vuz3190))) (Neg vuz379))",fontsize=16,color="magenta"];8363 -> 8502[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8363 -> 8503[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8364 -> 8501[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8364[label="primQuotInt (Neg vuz382) (gcd2 (primEqInt (primPlusInt (Pos vuz385) (Neg (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz384) (Neg (primMulNat vuz3180 vuz3190))) (Neg vuz383))",fontsize=16,color="magenta"];8364 -> 8504[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8364 -> 8505[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8364 -> 8506[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8364 -> 8507[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8364 -> 8508[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8364 -> 8509[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8365 -> 8492[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8365[label="primQuotInt (Neg vuz382) (gcd2 (primEqInt (primPlusInt (Pos vuz385) (Pos (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz384) (Pos (primMulNat vuz3180 vuz3190))) (Neg vuz383))",fontsize=16,color="magenta"];8365 -> 8495[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8365 -> 8496[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8365 -> 8497[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8365 -> 8498[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8365 -> 8499[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8365 -> 8500[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8366 -> 8483[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8366[label="primQuotInt (Neg vuz386) (gcd2 (primEqInt (primPlusInt (Neg vuz389) (Neg (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz388) (Neg (primMulNat vuz3180 vuz3190))) (Neg vuz387))",fontsize=16,color="magenta"];8366 -> 8486[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8366 -> 8487[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8366 -> 8488[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8366 -> 8489[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8366 -> 8490[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8366 -> 8491[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8367 -> 8474[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8367[label="primQuotInt (Neg vuz386) (gcd2 (primEqInt (primPlusInt (Neg vuz389) (Pos (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz388) (Pos (primMulNat vuz3180 vuz3190))) (Neg vuz387))",fontsize=16,color="magenta"];8367 -> 8477[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8367 -> 8478[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8367 -> 8479[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8367 -> 8480[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8367 -> 8481[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8367 -> 8482[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8368 -> 8465[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8368[label="primQuotInt (Pos vuz390) (gcd2 (primEqInt (primPlusInt (Neg vuz393) (Neg (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz392) (Neg (primMulNat vuz3180 vuz3190))) (Pos vuz391))",fontsize=16,color="magenta"];8368 -> 8468[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8368 -> 8469[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8368 -> 8470[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8368 -> 8471[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8368 -> 8472[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8368 -> 8473[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8369 -> 8456[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8369[label="primQuotInt (Pos vuz390) (gcd2 (primEqInt (primPlusInt (Neg vuz393) (Pos (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz392) (Pos (primMulNat vuz3180 vuz3190))) (Pos vuz391))",fontsize=16,color="magenta"];8369 -> 8459[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8369 -> 8460[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8369 -> 8461[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8369 -> 8462[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8369 -> 8463[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8369 -> 8464[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8370 -> 8447[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8370[label="primQuotInt (Pos vuz394) (gcd2 (primEqInt (primPlusInt (Pos vuz397) (Neg (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz396) (Neg (primMulNat vuz3180 vuz3190))) (Pos vuz395))",fontsize=16,color="magenta"];8370 -> 8450[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8370 -> 8451[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8370 -> 8452[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8370 -> 8453[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8370 -> 8454[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8370 -> 8455[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8371 -> 8438[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8371[label="primQuotInt (Pos vuz394) (gcd2 (primEqInt (primPlusInt (Pos vuz397) (Pos (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz396) (Pos (primMulNat vuz3180 vuz3190))) (Pos vuz395))",fontsize=16,color="magenta"];8371 -> 8441[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8371 -> 8442[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8371 -> 8443[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8371 -> 8444[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8371 -> 8445[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8371 -> 8446[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8373[label="primQuotInt (Pos vuz398) (gcd0 (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="triangle"];8373 -> 8510[label="",style="solid", color="black", weight=3]; 67.71/34.80 8374 -> 8511[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8374[label="primQuotInt (Pos vuz398) (gcd1 (Pos vuz3190 * Pos vuz3170 == fromInt (Pos Zero)) (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];8374 -> 8512[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8375 -> 7677[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8375[label="primQuotInt (primMinusNat vuz4010 vuz4000) (reduce2D (primMinusNat vuz4010 vuz4000) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];8375 -> 8513[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8375 -> 8514[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8375 -> 8515[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8375 -> 8516[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8376[label="primQuotInt (Pos (Succ vuz4010)) (reduce2D (Pos (Succ vuz4010)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8376 -> 8517[label="",style="solid", color="black", weight=3]; 67.71/34.80 8377[label="primQuotInt (Neg (Succ vuz4000)) (reduce2D (Neg (Succ vuz4000)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8377 -> 8518[label="",style="solid", color="black", weight=3]; 67.71/34.80 8378[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8378 -> 8519[label="",style="solid", color="black", weight=3]; 67.71/34.80 8379[label="primQuotInt (Neg (Succ vuz4060)) (gcd (Neg (Succ vuz4060)) (Neg vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];8379 -> 8520[label="",style="solid", color="black", weight=3]; 67.71/34.80 8380[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Neg vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];8380 -> 8521[label="",style="solid", color="black", weight=3]; 67.71/34.80 8381 -> 7691[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8381[label="primQuotInt (primMinusNat vuz4090 vuz4080) (reduce2D (primMinusNat vuz4090 vuz4080) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];8381 -> 8522[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8381 -> 8523[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8381 -> 8524[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8381 -> 8525[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8382[label="primQuotInt (Pos (Succ vuz4090)) (reduce2D (Pos (Succ vuz4090)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8382 -> 8526[label="",style="solid", color="black", weight=3]; 67.71/34.80 8383[label="primQuotInt (Neg (Succ vuz4080)) (reduce2D (Neg (Succ vuz4080)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8383 -> 8527[label="",style="solid", color="black", weight=3]; 67.71/34.80 8384[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8384 -> 8528[label="",style="solid", color="black", weight=3]; 67.71/34.80 8385[label="primQuotInt (Neg (Succ vuz4140)) (gcd (Neg (Succ vuz4140)) (Pos vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];8385 -> 8529[label="",style="solid", color="black", weight=3]; 67.71/34.80 8386[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Pos vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];8386 -> 8530[label="",style="solid", color="black", weight=3]; 67.71/34.80 8387[label="primQuotInt (Pos vuz416) (gcd0 (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="triangle"];8387 -> 8531[label="",style="solid", color="black", weight=3]; 67.71/34.80 8388 -> 8532[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8388[label="primQuotInt (Pos vuz416) (gcd1 (Neg vuz3190 * Pos vuz3170 == fromInt (Pos Zero)) (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];8388 -> 8533[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8389 -> 7723[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8389[label="primQuotInt (primMinusNat vuz4190 vuz4180) (reduce2D (primMinusNat vuz4190 vuz4180) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];8389 -> 8534[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8389 -> 8535[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8389 -> 8536[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8389 -> 8537[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8390[label="primQuotInt (Pos (Succ vuz4190)) (reduce2D (Pos (Succ vuz4190)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8390 -> 8538[label="",style="solid", color="black", weight=3]; 67.71/34.80 8391[label="primQuotInt (Neg (Succ vuz4180)) (reduce2D (Neg (Succ vuz4180)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8391 -> 8539[label="",style="solid", color="black", weight=3]; 67.71/34.80 8392[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8392 -> 8540[label="",style="solid", color="black", weight=3]; 67.71/34.80 8393[label="primQuotInt (Neg (Succ vuz4240)) (gcd (Neg (Succ vuz4240)) (Pos Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8393 -> 8541[label="",style="solid", color="black", weight=3]; 67.71/34.80 8394[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Pos Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8394 -> 8542[label="",style="solid", color="black", weight=3]; 67.71/34.80 8396[label="primQuotInt (Neg vuz426) (gcd0 (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="triangle"];8396 -> 8543[label="",style="solid", color="black", weight=3]; 67.71/34.80 8397 -> 8544[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8397[label="primQuotInt (Neg vuz426) (gcd1 (Neg vuz3190 * Neg vuz3170 == fromInt (Pos Zero)) (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];8397 -> 8545[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8398[label="primQuotInt (Neg vuz428) (gcd0 (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="triangle"];8398 -> 8546[label="",style="solid", color="black", weight=3]; 67.71/34.80 8399 -> 8547[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8399[label="primQuotInt (Neg vuz428) (gcd1 (Pos vuz3190 * Neg vuz3170 == fromInt (Pos Zero)) (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];8399 -> 8548[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8400 -> 7773[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8400[label="primQuotInt (primMinusNat vuz4310 vuz4300) (reduce2D (primMinusNat vuz4310 vuz4300) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];8400 -> 8549[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8400 -> 8550[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8400 -> 8551[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8400 -> 8552[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8401[label="primQuotInt (Pos (Succ vuz4310)) (reduce2D (Pos (Succ vuz4310)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8401 -> 8553[label="",style="solid", color="black", weight=3]; 67.71/34.80 8402[label="primQuotInt (Neg (Succ vuz4300)) (reduce2D (Neg (Succ vuz4300)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8402 -> 8554[label="",style="solid", color="black", weight=3]; 67.71/34.80 8403[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8403 -> 8555[label="",style="solid", color="black", weight=3]; 67.71/34.80 8404[label="primQuotInt (Neg (Succ vuz4360)) (gcd (Neg (Succ vuz4360)) (Neg Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8404 -> 8556[label="",style="solid", color="black", weight=3]; 67.71/34.80 8405[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Neg Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8405 -> 8557[label="",style="solid", color="black", weight=3]; 67.71/34.80 8406 -> 7787[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8406[label="primQuotInt (primMinusNat vuz4390 vuz4380) (reduce2D (primMinusNat vuz4390 vuz4380) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];8406 -> 8558[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8406 -> 8559[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8406 -> 8560[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8406 -> 8561[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8407[label="primQuotInt (Pos (Succ vuz4390)) (reduce2D (Pos (Succ vuz4390)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8407 -> 8562[label="",style="solid", color="black", weight=3]; 67.71/34.80 8408[label="primQuotInt (Neg (Succ vuz4380)) (reduce2D (Neg (Succ vuz4380)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8408 -> 8563[label="",style="solid", color="black", weight=3]; 67.71/34.80 8409[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8409 -> 8564[label="",style="solid", color="black", weight=3]; 67.71/34.80 8410[label="primQuotInt (Neg (Succ vuz4440)) (gcd (Neg (Succ vuz4440)) (Pos Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8410 -> 8565[label="",style="solid", color="black", weight=3]; 67.71/34.80 8411[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Pos Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8411 -> 8566[label="",style="solid", color="black", weight=3]; 67.71/34.80 8412[label="primQuotInt (Neg vuz446) (gcd0 (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="triangle"];8412 -> 8567[label="",style="solid", color="black", weight=3]; 67.71/34.80 8413 -> 8568[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8413[label="primQuotInt (Neg vuz446) (gcd1 (Neg vuz3190 * Pos vuz3170 == fromInt (Pos Zero)) (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];8413 -> 8569[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8414[label="primQuotInt (Neg vuz348) (gcd0 (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="triangle"];8414 -> 8570[label="",style="solid", color="black", weight=3]; 67.71/34.80 8415 -> 8571[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8415[label="primQuotInt (Neg vuz348) (gcd1 (Pos vuz3190 * Pos vuz3170 == fromInt (Pos Zero)) (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];8415 -> 8572[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8416 -> 7824[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8416[label="primQuotInt (primMinusNat vuz4490 vuz4480) (reduce2D (primMinusNat vuz4490 vuz4480) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];8416 -> 8573[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8416 -> 8574[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8416 -> 8575[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8416 -> 8576[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8417[label="primQuotInt (Pos (Succ vuz4490)) (reduce2D (Pos (Succ vuz4490)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8417 -> 8577[label="",style="solid", color="black", weight=3]; 67.71/34.80 8418[label="primQuotInt (Neg (Succ vuz4480)) (reduce2D (Neg (Succ vuz4480)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8418 -> 8578[label="",style="solid", color="black", weight=3]; 67.71/34.80 8419[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8419 -> 8579[label="",style="solid", color="black", weight=3]; 67.71/34.80 8420[label="primQuotInt (Neg (Succ vuz4540)) (gcd (Neg (Succ vuz4540)) (Neg Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8420 -> 8580[label="",style="solid", color="black", weight=3]; 67.71/34.80 8421[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Neg Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8421 -> 8581[label="",style="solid", color="black", weight=3]; 67.71/34.80 8422[label="primQuotInt (Pos vuz354) (gcd0 (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="triangle"];8422 -> 8582[label="",style="solid", color="black", weight=3]; 67.71/34.80 8423 -> 8583[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8423[label="primQuotInt (Pos vuz354) (gcd1 (Pos vuz3190 * Neg vuz3170 == fromInt (Pos Zero)) (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];8423 -> 8584[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8424 -> 7843[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8424[label="primQuotInt (primMinusNat vuz4570 vuz4560) (reduce2D (primMinusNat vuz4570 vuz4560) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];8424 -> 8585[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8424 -> 8586[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8424 -> 8587[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8424 -> 8588[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8425[label="primQuotInt (Pos (Succ vuz4570)) (reduce2D (Pos (Succ vuz4570)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8425 -> 8589[label="",style="solid", color="black", weight=3]; 67.71/34.80 8426[label="primQuotInt (Neg (Succ vuz4560)) (reduce2D (Neg (Succ vuz4560)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8426 -> 8590[label="",style="solid", color="black", weight=3]; 67.71/34.80 8427[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8427 -> 8591[label="",style="solid", color="black", weight=3]; 67.71/34.80 8428[label="primQuotInt (Neg (Succ vuz4620)) (gcd (Neg (Succ vuz4620)) (Neg vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8428 -> 8592[label="",style="solid", color="black", weight=3]; 67.71/34.80 8429[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Neg vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8429 -> 8593[label="",style="solid", color="black", weight=3]; 67.71/34.80 8430 -> 7857[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8430[label="primQuotInt (primMinusNat vuz4650 vuz4640) (reduce2D (primMinusNat vuz4650 vuz4640) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];8430 -> 8594[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8430 -> 8595[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8430 -> 8596[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8430 -> 8597[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8431[label="primQuotInt (Pos (Succ vuz4650)) (reduce2D (Pos (Succ vuz4650)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8431 -> 8598[label="",style="solid", color="black", weight=3]; 67.71/34.80 8432[label="primQuotInt (Neg (Succ vuz4640)) (reduce2D (Neg (Succ vuz4640)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8432 -> 8599[label="",style="solid", color="black", weight=3]; 67.71/34.80 8433[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8433 -> 8600[label="",style="solid", color="black", weight=3]; 67.71/34.80 8434[label="primQuotInt (Neg (Succ vuz4700)) (gcd (Neg (Succ vuz4700)) (Pos vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8434 -> 8601[label="",style="solid", color="black", weight=3]; 67.71/34.80 8435[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Pos vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8435 -> 8602[label="",style="solid", color="black", weight=3]; 67.71/34.80 8436[label="primQuotInt (Pos vuz360) (gcd0 (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="triangle"];8436 -> 8603[label="",style="solid", color="black", weight=3]; 67.71/34.80 8437 -> 8604[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8437[label="primQuotInt (Pos vuz360) (gcd1 (Neg vuz3190 * Neg vuz3170 == fromInt (Pos Zero)) (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];8437 -> 8605[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8439 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8439[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8439 -> 8606[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8439 -> 8607[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8440 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8440[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8440 -> 8608[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8440 -> 8609[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8438[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primPlusInt (Pos vuz369) (Pos vuz481)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz368) (Pos vuz480)) (Pos vuz367))",fontsize=16,color="black",shape="triangle"];8438 -> 8610[label="",style="solid", color="black", weight=3]; 67.71/34.80 8448 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8448[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8448 -> 8611[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8448 -> 8612[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8449 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8449[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8449 -> 8613[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8449 -> 8614[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8447[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primPlusInt (Pos vuz369) (Neg vuz483)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz368) (Neg vuz482)) (Pos vuz367))",fontsize=16,color="black",shape="triangle"];8447 -> 8615[label="",style="solid", color="black", weight=3]; 67.71/34.80 8457 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8457[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8457 -> 8616[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8457 -> 8617[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8458 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8458[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8458 -> 8618[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8458 -> 8619[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8456[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primPlusInt (Neg vuz373) (Pos vuz485)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz372) (Pos vuz484)) (Pos vuz371))",fontsize=16,color="black",shape="triangle"];8456 -> 8620[label="",style="solid", color="black", weight=3]; 67.71/34.80 8466 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8466[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8466 -> 8621[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8466 -> 8622[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8467 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8467[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8467 -> 8623[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8467 -> 8624[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8465[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primPlusInt (Neg vuz373) (Neg vuz487)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz372) (Neg vuz486)) (Pos vuz371))",fontsize=16,color="black",shape="triangle"];8465 -> 8625[label="",style="solid", color="black", weight=3]; 67.71/34.80 8475 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8475[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8475 -> 8626[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8475 -> 8627[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8476 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8476[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8476 -> 8628[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8476 -> 8629[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8474[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primPlusInt (Neg vuz377) (Pos vuz489)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz376) (Pos vuz488)) (Neg vuz375))",fontsize=16,color="black",shape="triangle"];8474 -> 8630[label="",style="solid", color="black", weight=3]; 67.71/34.80 8484 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8484[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8484 -> 8631[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8484 -> 8632[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8485 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8485[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8485 -> 8633[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8485 -> 8634[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8483[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primPlusInt (Neg vuz377) (Neg vuz491)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz376) (Neg vuz490)) (Neg vuz375))",fontsize=16,color="black",shape="triangle"];8483 -> 8635[label="",style="solid", color="black", weight=3]; 67.71/34.80 8493 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8493[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8493 -> 8636[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8493 -> 8637[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8494 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8494[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8494 -> 8638[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8494 -> 8639[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8492[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primPlusInt (Pos vuz381) (Pos vuz493)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz380) (Pos vuz492)) (Neg vuz379))",fontsize=16,color="black",shape="triangle"];8492 -> 8640[label="",style="solid", color="black", weight=3]; 67.71/34.80 8502 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8502[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8502 -> 8641[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8502 -> 8642[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8503 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8503[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8503 -> 8643[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8503 -> 8644[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8501[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primPlusInt (Pos vuz381) (Neg vuz495)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz380) (Neg vuz494)) (Neg vuz379))",fontsize=16,color="black",shape="triangle"];8501 -> 8645[label="",style="solid", color="black", weight=3]; 67.71/34.80 8504[label="vuz383",fontsize=16,color="green",shape="box"];8505[label="vuz384",fontsize=16,color="green",shape="box"];8506 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8506[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8506 -> 8646[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8506 -> 8647[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8507[label="vuz385",fontsize=16,color="green",shape="box"];8508 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8508[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8508 -> 8648[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8508 -> 8649[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8509[label="vuz382",fontsize=16,color="green",shape="box"];8495[label="vuz383",fontsize=16,color="green",shape="box"];8496[label="vuz384",fontsize=16,color="green",shape="box"];8497[label="vuz385",fontsize=16,color="green",shape="box"];8498 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8498[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8498 -> 8650[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8498 -> 8651[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8499[label="vuz382",fontsize=16,color="green",shape="box"];8500 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8500[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8500 -> 8652[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8500 -> 8653[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8486 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8486[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8486 -> 8654[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8486 -> 8655[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8487[label="vuz387",fontsize=16,color="green",shape="box"];8488[label="vuz388",fontsize=16,color="green",shape="box"];8489[label="vuz386",fontsize=16,color="green",shape="box"];8490[label="vuz389",fontsize=16,color="green",shape="box"];8491 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8491[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8491 -> 8656[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8491 -> 8657[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8477 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8477[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8477 -> 8658[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8477 -> 8659[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8478[label="vuz387",fontsize=16,color="green",shape="box"];8479[label="vuz388",fontsize=16,color="green",shape="box"];8480 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8480[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8480 -> 8660[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8480 -> 8661[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8481[label="vuz386",fontsize=16,color="green",shape="box"];8482[label="vuz389",fontsize=16,color="green",shape="box"];8468[label="vuz392",fontsize=16,color="green",shape="box"];8469 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8469[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8469 -> 8662[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8469 -> 8663[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8470[label="vuz393",fontsize=16,color="green",shape="box"];8471[label="vuz390",fontsize=16,color="green",shape="box"];8472[label="vuz391",fontsize=16,color="green",shape="box"];8473 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8473[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8473 -> 8664[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8473 -> 8665[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8459[label="vuz392",fontsize=16,color="green",shape="box"];8460 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8460[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8460 -> 8666[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8460 -> 8667[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8461[label="vuz393",fontsize=16,color="green",shape="box"];8462[label="vuz390",fontsize=16,color="green",shape="box"];8463[label="vuz391",fontsize=16,color="green",shape="box"];8464 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8464[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8464 -> 8668[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8464 -> 8669[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8450[label="vuz395",fontsize=16,color="green",shape="box"];8451[label="vuz397",fontsize=16,color="green",shape="box"];8452[label="vuz396",fontsize=16,color="green",shape="box"];8453 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8453[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8453 -> 8670[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8453 -> 8671[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8454 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8454[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8454 -> 8672[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8454 -> 8673[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8455[label="vuz394",fontsize=16,color="green",shape="box"];8441 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8441[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8441 -> 8674[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8441 -> 8675[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8442[label="vuz395",fontsize=16,color="green",shape="box"];8443[label="vuz397",fontsize=16,color="green",shape="box"];8444 -> 7480[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8444[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8444 -> 8676[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8444 -> 8677[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8445[label="vuz396",fontsize=16,color="green",shape="box"];8446[label="vuz394",fontsize=16,color="green",shape="box"];8510[label="primQuotInt (Pos vuz398) (gcd0Gcd' (abs (Pos vuz399)) (abs (Pos vuz3190 * Pos vuz3170)))",fontsize=16,color="black",shape="box"];8510 -> 8678[label="",style="solid", color="black", weight=3]; 67.71/34.80 8512 -> 9987[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8512[label="Pos vuz3190 * Pos vuz3170 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8512 -> 9997[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8511[label="primQuotInt (Pos vuz398) (gcd1 vuz496 (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11047[label="vuz496/False",fontsize=10,color="white",style="solid",shape="box"];8511 -> 11047[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11047 -> 8681[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 11048[label="vuz496/True",fontsize=10,color="white",style="solid",shape="box"];8511 -> 11048[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11048 -> 8682[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 8513[label="vuz4000",fontsize=16,color="green",shape="box"];8514[label="vuz4010",fontsize=16,color="green",shape="box"];8515[label="vuz4010",fontsize=16,color="green",shape="box"];8516[label="vuz4000",fontsize=16,color="green",shape="box"];8517[label="primQuotInt (Pos (Succ vuz4010)) (gcd (Pos (Succ vuz4010)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8517 -> 8683[label="",style="solid", color="black", weight=3]; 67.71/34.80 8518[label="primQuotInt (Neg (Succ vuz4000)) (gcd (Neg (Succ vuz4000)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8518 -> 8684[label="",style="solid", color="black", weight=3]; 67.71/34.80 8519[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8519 -> 8685[label="",style="solid", color="black", weight=3]; 67.71/34.80 8520 -> 7809[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8520[label="primQuotInt (Neg (Succ vuz4060)) (gcd3 (Neg (Succ vuz4060)) (Neg vuz3190 * Pos Zero))",fontsize=16,color="magenta"];8520 -> 8686[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8520 -> 8687[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8520 -> 8688[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8521 -> 7713[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8521[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Neg vuz3190 * Pos Zero))",fontsize=16,color="magenta"];8521 -> 8689[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8521 -> 8690[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8521 -> 8691[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8522[label="vuz4090",fontsize=16,color="green",shape="box"];8523[label="vuz4080",fontsize=16,color="green",shape="box"];8524[label="vuz4090",fontsize=16,color="green",shape="box"];8525[label="vuz4080",fontsize=16,color="green",shape="box"];8526[label="primQuotInt (Pos (Succ vuz4090)) (gcd (Pos (Succ vuz4090)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8526 -> 8692[label="",style="solid", color="black", weight=3]; 67.71/34.80 8527[label="primQuotInt (Neg (Succ vuz4080)) (gcd (Neg (Succ vuz4080)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8527 -> 8693[label="",style="solid", color="black", weight=3]; 67.71/34.80 8528[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8528 -> 8694[label="",style="solid", color="black", weight=3]; 67.71/34.80 8529 -> 7587[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8529[label="primQuotInt (Neg (Succ vuz4140)) (gcd3 (Neg (Succ vuz4140)) (Pos vuz3190 * Pos Zero))",fontsize=16,color="magenta"];8529 -> 8695[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8529 -> 8696[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8529 -> 8697[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8530 -> 7667[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8530[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Pos vuz3190 * Pos Zero))",fontsize=16,color="magenta"];8530 -> 8698[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8530 -> 8699[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8530 -> 8700[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8531[label="primQuotInt (Pos vuz416) (gcd0Gcd' (abs (Pos vuz417)) (abs (Neg vuz3190 * Pos vuz3170)))",fontsize=16,color="black",shape="box"];8531 -> 8701[label="",style="solid", color="black", weight=3]; 67.71/34.80 8533 -> 9987[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8533[label="Neg vuz3190 * Pos vuz3170 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8533 -> 9998[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8532[label="primQuotInt (Pos vuz416) (gcd1 vuz497 (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11049[label="vuz497/False",fontsize=10,color="white",style="solid",shape="box"];8532 -> 11049[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11049 -> 8704[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 11050[label="vuz497/True",fontsize=10,color="white",style="solid",shape="box"];8532 -> 11050[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11050 -> 8705[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 8534[label="vuz4180",fontsize=16,color="green",shape="box"];8535[label="vuz4190",fontsize=16,color="green",shape="box"];8536[label="vuz4180",fontsize=16,color="green",shape="box"];8537[label="vuz4190",fontsize=16,color="green",shape="box"];8538[label="primQuotInt (Pos (Succ vuz4190)) (gcd (Pos (Succ vuz4190)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8538 -> 8706[label="",style="solid", color="black", weight=3]; 67.71/34.80 8539[label="primQuotInt (Neg (Succ vuz4180)) (gcd (Neg (Succ vuz4180)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8539 -> 8707[label="",style="solid", color="black", weight=3]; 67.71/34.80 8540[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8540 -> 8708[label="",style="solid", color="black", weight=3]; 67.71/34.80 8541 -> 7763[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8541[label="primQuotInt (Neg (Succ vuz4240)) (gcd3 (Neg (Succ vuz4240)) (Pos Zero * Neg vuz3170))",fontsize=16,color="magenta"];8541 -> 8709[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8541 -> 8710[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8541 -> 8711[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8542 -> 7598[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8542[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Pos Zero * Neg vuz3170))",fontsize=16,color="magenta"];8542 -> 8712[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8542 -> 8713[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8542 -> 8714[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8543[label="primQuotInt (Neg vuz426) (gcd0Gcd' (abs (Neg vuz427)) (abs (Neg vuz3190 * Neg vuz3170)))",fontsize=16,color="black",shape="box"];8543 -> 8715[label="",style="solid", color="black", weight=3]; 67.71/34.80 8545 -> 9987[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8545[label="Neg vuz3190 * Neg vuz3170 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8545 -> 9999[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8544[label="primQuotInt (Neg vuz426) (gcd1 vuz498 (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11051[label="vuz498/False",fontsize=10,color="white",style="solid",shape="box"];8544 -> 11051[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11051 -> 8718[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 11052[label="vuz498/True",fontsize=10,color="white",style="solid",shape="box"];8544 -> 11052[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11052 -> 8719[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 8546[label="primQuotInt (Neg vuz428) (gcd0Gcd' (abs (Neg vuz429)) (abs (Pos vuz3190 * Neg vuz3170)))",fontsize=16,color="black",shape="box"];8546 -> 8720[label="",style="solid", color="black", weight=3]; 67.71/34.80 8548 -> 9987[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8548[label="Pos vuz3190 * Neg vuz3170 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8548 -> 10000[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8547[label="primQuotInt (Neg vuz428) (gcd1 vuz499 (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11053[label="vuz499/False",fontsize=10,color="white",style="solid",shape="box"];8547 -> 11053[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11053 -> 8723[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 11054[label="vuz499/True",fontsize=10,color="white",style="solid",shape="box"];8547 -> 11054[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11054 -> 8724[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 8549[label="vuz4310",fontsize=16,color="green",shape="box"];8550[label="vuz4300",fontsize=16,color="green",shape="box"];8551[label="vuz4300",fontsize=16,color="green",shape="box"];8552[label="vuz4310",fontsize=16,color="green",shape="box"];8553[label="primQuotInt (Pos (Succ vuz4310)) (gcd (Pos (Succ vuz4310)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8553 -> 8725[label="",style="solid", color="black", weight=3]; 67.71/34.80 8554[label="primQuotInt (Neg (Succ vuz4300)) (gcd (Neg (Succ vuz4300)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8554 -> 8726[label="",style="solid", color="black", weight=3]; 67.71/34.80 8555[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8555 -> 8727[label="",style="solid", color="black", weight=3]; 67.71/34.80 8556 -> 7745[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8556[label="primQuotInt (Neg (Succ vuz4360)) (gcd3 (Neg (Succ vuz4360)) (Neg Zero * Neg vuz3170))",fontsize=16,color="magenta"];8556 -> 8728[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8556 -> 8729[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8556 -> 8730[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8557 -> 7613[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8557[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Neg Zero * Neg vuz3170))",fontsize=16,color="magenta"];8557 -> 8731[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8557 -> 8732[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8557 -> 8733[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8558[label="vuz4390",fontsize=16,color="green",shape="box"];8559[label="vuz4380",fontsize=16,color="green",shape="box"];8560[label="vuz4380",fontsize=16,color="green",shape="box"];8561[label="vuz4390",fontsize=16,color="green",shape="box"];8562[label="primQuotInt (Pos (Succ vuz4390)) (gcd (Pos (Succ vuz4390)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8562 -> 8734[label="",style="solid", color="black", weight=3]; 67.71/34.80 8563[label="primQuotInt (Neg (Succ vuz4380)) (gcd (Neg (Succ vuz4380)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8563 -> 8735[label="",style="solid", color="black", weight=3]; 67.71/34.80 8564[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8564 -> 8736[label="",style="solid", color="black", weight=3]; 67.71/34.80 8565 -> 7587[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8565[label="primQuotInt (Neg (Succ vuz4440)) (gcd3 (Neg (Succ vuz4440)) (Pos Zero * Pos vuz3170))",fontsize=16,color="magenta"];8565 -> 8737[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8565 -> 8738[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8565 -> 8739[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8566 -> 7667[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8566[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Pos Zero * Pos vuz3170))",fontsize=16,color="magenta"];8566 -> 8740[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8566 -> 8741[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8566 -> 8742[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8567[label="primQuotInt (Neg vuz446) (gcd0Gcd' (abs (Neg vuz447)) (abs (Neg vuz3190 * Pos vuz3170)))",fontsize=16,color="black",shape="box"];8567 -> 8743[label="",style="solid", color="black", weight=3]; 67.71/34.80 8569 -> 9987[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8569[label="Neg vuz3190 * Pos vuz3170 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8569 -> 10001[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8568[label="primQuotInt (Neg vuz446) (gcd1 vuz500 (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11055[label="vuz500/False",fontsize=10,color="white",style="solid",shape="box"];8568 -> 11055[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11055 -> 8746[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 11056[label="vuz500/True",fontsize=10,color="white",style="solid",shape="box"];8568 -> 11056[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11056 -> 8747[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 8570[label="primQuotInt (Neg vuz348) (gcd0Gcd' (abs (Neg vuz349)) (abs (Pos vuz3190 * Pos vuz3170)))",fontsize=16,color="black",shape="box"];8570 -> 8748[label="",style="solid", color="black", weight=3]; 67.71/34.80 8572 -> 9987[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8572[label="Pos vuz3190 * Pos vuz3170 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8572 -> 10002[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8571[label="primQuotInt (Neg vuz348) (gcd1 vuz501 (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11057[label="vuz501/False",fontsize=10,color="white",style="solid",shape="box"];8571 -> 11057[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11057 -> 8751[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 11058[label="vuz501/True",fontsize=10,color="white",style="solid",shape="box"];8571 -> 11058[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11058 -> 8752[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 8573[label="vuz4490",fontsize=16,color="green",shape="box"];8574[label="vuz4490",fontsize=16,color="green",shape="box"];8575[label="vuz4480",fontsize=16,color="green",shape="box"];8576[label="vuz4480",fontsize=16,color="green",shape="box"];8577[label="primQuotInt (Pos (Succ vuz4490)) (gcd (Pos (Succ vuz4490)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8577 -> 8753[label="",style="solid", color="black", weight=3]; 67.71/34.80 8578[label="primQuotInt (Neg (Succ vuz4480)) (gcd (Neg (Succ vuz4480)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8578 -> 8754[label="",style="solid", color="black", weight=3]; 67.71/34.80 8579[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8579 -> 8755[label="",style="solid", color="black", weight=3]; 67.71/34.80 8580 -> 7809[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8580[label="primQuotInt (Neg (Succ vuz4540)) (gcd3 (Neg (Succ vuz4540)) (Neg Zero * Pos vuz3170))",fontsize=16,color="magenta"];8580 -> 8756[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8580 -> 8757[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8580 -> 8758[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8581 -> 7713[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8581[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Neg Zero * Pos vuz3170))",fontsize=16,color="magenta"];8581 -> 8759[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8581 -> 8760[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8581 -> 8761[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8582[label="primQuotInt (Pos vuz354) (gcd0Gcd' (abs (Pos vuz355)) (abs (Pos vuz3190 * Neg vuz3170)))",fontsize=16,color="black",shape="box"];8582 -> 8762[label="",style="solid", color="black", weight=3]; 67.71/34.80 8584 -> 9987[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8584[label="Pos vuz3190 * Neg vuz3170 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8584 -> 10003[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8583[label="primQuotInt (Pos vuz354) (gcd1 vuz502 (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11059[label="vuz502/False",fontsize=10,color="white",style="solid",shape="box"];8583 -> 11059[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11059 -> 8765[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 11060[label="vuz502/True",fontsize=10,color="white",style="solid",shape="box"];8583 -> 11060[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11060 -> 8766[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 8585[label="vuz4570",fontsize=16,color="green",shape="box"];8586[label="vuz4560",fontsize=16,color="green",shape="box"];8587[label="vuz4560",fontsize=16,color="green",shape="box"];8588[label="vuz4570",fontsize=16,color="green",shape="box"];8589[label="primQuotInt (Pos (Succ vuz4570)) (gcd (Pos (Succ vuz4570)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8589 -> 8767[label="",style="solid", color="black", weight=3]; 67.71/34.80 8590[label="primQuotInt (Neg (Succ vuz4560)) (gcd (Neg (Succ vuz4560)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8590 -> 8768[label="",style="solid", color="black", weight=3]; 67.71/34.80 8591[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8591 -> 8769[label="",style="solid", color="black", weight=3]; 67.71/34.80 8592 -> 7745[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8592[label="primQuotInt (Neg (Succ vuz4620)) (gcd3 (Neg (Succ vuz4620)) (Neg vuz3190 * Neg Zero))",fontsize=16,color="magenta"];8592 -> 8770[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8592 -> 8771[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8592 -> 8772[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8593 -> 7613[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8593[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Neg vuz3190 * Neg Zero))",fontsize=16,color="magenta"];8593 -> 8773[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8593 -> 8774[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8593 -> 8775[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8594[label="vuz4650",fontsize=16,color="green",shape="box"];8595[label="vuz4640",fontsize=16,color="green",shape="box"];8596[label="vuz4640",fontsize=16,color="green",shape="box"];8597[label="vuz4650",fontsize=16,color="green",shape="box"];8598[label="primQuotInt (Pos (Succ vuz4650)) (gcd (Pos (Succ vuz4650)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8598 -> 8776[label="",style="solid", color="black", weight=3]; 67.71/34.80 8599[label="primQuotInt (Neg (Succ vuz4640)) (gcd (Neg (Succ vuz4640)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8599 -> 8777[label="",style="solid", color="black", weight=3]; 67.71/34.80 8600[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8600 -> 8778[label="",style="solid", color="black", weight=3]; 67.71/34.80 8601 -> 7763[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8601[label="primQuotInt (Neg (Succ vuz4700)) (gcd3 (Neg (Succ vuz4700)) (Pos vuz3190 * Neg Zero))",fontsize=16,color="magenta"];8601 -> 8779[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8601 -> 8780[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8601 -> 8781[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8602 -> 7598[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8602[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Pos vuz3190 * Neg Zero))",fontsize=16,color="magenta"];8602 -> 8782[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8602 -> 8783[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8602 -> 8784[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8603[label="primQuotInt (Pos vuz360) (gcd0Gcd' (abs (Pos vuz361)) (abs (Neg vuz3190 * Neg vuz3170)))",fontsize=16,color="black",shape="box"];8603 -> 8785[label="",style="solid", color="black", weight=3]; 67.71/34.80 8605 -> 9987[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8605[label="Neg vuz3190 * Neg vuz3170 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8605 -> 10004[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8604[label="primQuotInt (Pos vuz360) (gcd1 vuz503 (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11061[label="vuz503/False",fontsize=10,color="white",style="solid",shape="box"];8604 -> 11061[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11061 -> 8788[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 11062[label="vuz503/True",fontsize=10,color="white",style="solid",shape="box"];8604 -> 11062[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11062 -> 8789[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 8606[label="vuz3180",fontsize=16,color="green",shape="box"];8607[label="vuz3190",fontsize=16,color="green",shape="box"];8608[label="vuz3180",fontsize=16,color="green",shape="box"];8609[label="vuz3190",fontsize=16,color="green",shape="box"];8610 -> 8790[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8610[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (Pos (primPlusNat vuz369 vuz481)) (fromInt (Pos Zero))) (Pos (primPlusNat vuz369 vuz481)) (Pos vuz367))",fontsize=16,color="magenta"];8610 -> 8791[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8610 -> 8792[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8611[label="vuz3180",fontsize=16,color="green",shape="box"];8612[label="vuz3190",fontsize=16,color="green",shape="box"];8613[label="vuz3180",fontsize=16,color="green",shape="box"];8614[label="vuz3190",fontsize=16,color="green",shape="box"];8615[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primMinusNat vuz369 vuz483) (fromInt (Pos Zero))) (primMinusNat vuz369 vuz483) (Pos vuz367))",fontsize=16,color="burlywood",shape="triangle"];11063[label="vuz369/Succ vuz3690",fontsize=10,color="white",style="solid",shape="box"];8615 -> 11063[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11063 -> 8793[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 11064[label="vuz369/Zero",fontsize=10,color="white",style="solid",shape="box"];8615 -> 11064[label="",style="solid", color="burlywood", weight=9]; 67.71/34.80 11064 -> 8794[label="",style="solid", color="burlywood", weight=3]; 67.71/34.80 8616[label="vuz3180",fontsize=16,color="green",shape="box"];8617[label="vuz3190",fontsize=16,color="green",shape="box"];8618[label="vuz3180",fontsize=16,color="green",shape="box"];8619[label="vuz3190",fontsize=16,color="green",shape="box"];8620 -> 8615[label="",style="dashed", color="red", weight=0]; 67.71/34.80 8620[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primMinusNat vuz485 vuz373) (fromInt (Pos Zero))) (primMinusNat vuz485 vuz373) (Pos vuz371))",fontsize=16,color="magenta"];8620 -> 8795[label="",style="dashed", color="magenta", weight=3]; 67.71/34.80 8620 -> 8796[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8620 -> 8797[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8620 -> 8798[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8621[label="vuz3180",fontsize=16,color="green",shape="box"];8622[label="vuz3190",fontsize=16,color="green",shape="box"];8623[label="vuz3180",fontsize=16,color="green",shape="box"];8624[label="vuz3190",fontsize=16,color="green",shape="box"];8625 -> 8799[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8625[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (Neg (primPlusNat vuz373 vuz487)) (fromInt (Pos Zero))) (Neg (primPlusNat vuz373 vuz487)) (Pos vuz371))",fontsize=16,color="magenta"];8625 -> 8800[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8625 -> 8801[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8626[label="vuz3180",fontsize=16,color="green",shape="box"];8627[label="vuz3190",fontsize=16,color="green",shape="box"];8628[label="vuz3180",fontsize=16,color="green",shape="box"];8629[label="vuz3190",fontsize=16,color="green",shape="box"];8630[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primMinusNat vuz489 vuz377) (fromInt (Pos Zero))) (primMinusNat vuz489 vuz377) (Neg vuz375))",fontsize=16,color="burlywood",shape="triangle"];11065[label="vuz489/Succ vuz4890",fontsize=10,color="white",style="solid",shape="box"];8630 -> 11065[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11065 -> 8802[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11066[label="vuz489/Zero",fontsize=10,color="white",style="solid",shape="box"];8630 -> 11066[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11066 -> 8803[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 8631[label="vuz3180",fontsize=16,color="green",shape="box"];8632[label="vuz3190",fontsize=16,color="green",shape="box"];8633[label="vuz3180",fontsize=16,color="green",shape="box"];8634[label="vuz3190",fontsize=16,color="green",shape="box"];8635 -> 8804[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8635[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (Neg (primPlusNat vuz377 vuz491)) (fromInt (Pos Zero))) (Neg (primPlusNat vuz377 vuz491)) (Neg vuz375))",fontsize=16,color="magenta"];8635 -> 8805[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8635 -> 8806[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8636[label="vuz3180",fontsize=16,color="green",shape="box"];8637[label="vuz3190",fontsize=16,color="green",shape="box"];8638[label="vuz3180",fontsize=16,color="green",shape="box"];8639[label="vuz3190",fontsize=16,color="green",shape="box"];8640 -> 8807[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8640[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (Pos (primPlusNat vuz381 vuz493)) (fromInt (Pos Zero))) (Pos (primPlusNat vuz381 vuz493)) (Neg vuz379))",fontsize=16,color="magenta"];8640 -> 8808[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8640 -> 8809[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8641[label="vuz3180",fontsize=16,color="green",shape="box"];8642[label="vuz3190",fontsize=16,color="green",shape="box"];8643[label="vuz3180",fontsize=16,color="green",shape="box"];8644[label="vuz3190",fontsize=16,color="green",shape="box"];8645 -> 8630[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8645[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primMinusNat vuz381 vuz495) (fromInt (Pos Zero))) (primMinusNat vuz381 vuz495) (Neg vuz379))",fontsize=16,color="magenta"];8645 -> 8810[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8645 -> 8811[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8645 -> 8812[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8645 -> 8813[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8646[label="vuz3180",fontsize=16,color="green",shape="box"];8647[label="vuz3190",fontsize=16,color="green",shape="box"];8648[label="vuz3180",fontsize=16,color="green",shape="box"];8649[label="vuz3190",fontsize=16,color="green",shape="box"];8650[label="vuz3180",fontsize=16,color="green",shape="box"];8651[label="vuz3190",fontsize=16,color="green",shape="box"];8652[label="vuz3180",fontsize=16,color="green",shape="box"];8653[label="vuz3190",fontsize=16,color="green",shape="box"];8654[label="vuz3180",fontsize=16,color="green",shape="box"];8655[label="vuz3190",fontsize=16,color="green",shape="box"];8656[label="vuz3180",fontsize=16,color="green",shape="box"];8657[label="vuz3190",fontsize=16,color="green",shape="box"];8658[label="vuz3180",fontsize=16,color="green",shape="box"];8659[label="vuz3190",fontsize=16,color="green",shape="box"];8660[label="vuz3180",fontsize=16,color="green",shape="box"];8661[label="vuz3190",fontsize=16,color="green",shape="box"];8662[label="vuz3180",fontsize=16,color="green",shape="box"];8663[label="vuz3190",fontsize=16,color="green",shape="box"];8664[label="vuz3180",fontsize=16,color="green",shape="box"];8665[label="vuz3190",fontsize=16,color="green",shape="box"];8666[label="vuz3180",fontsize=16,color="green",shape="box"];8667[label="vuz3190",fontsize=16,color="green",shape="box"];8668[label="vuz3180",fontsize=16,color="green",shape="box"];8669[label="vuz3190",fontsize=16,color="green",shape="box"];8670[label="vuz3180",fontsize=16,color="green",shape="box"];8671[label="vuz3190",fontsize=16,color="green",shape="box"];8672[label="vuz3180",fontsize=16,color="green",shape="box"];8673[label="vuz3190",fontsize=16,color="green",shape="box"];8674[label="vuz3180",fontsize=16,color="green",shape="box"];8675[label="vuz3190",fontsize=16,color="green",shape="box"];8676[label="vuz3180",fontsize=16,color="green",shape="box"];8677[label="vuz3190",fontsize=16,color="green",shape="box"];8678[label="primQuotInt (Pos vuz398) (gcd0Gcd'2 (abs (Pos vuz399)) (abs (Pos vuz3190 * Pos vuz3170)))",fontsize=16,color="black",shape="box"];8678 -> 8814[label="",style="solid", color="black", weight=3]; 67.72/34.80 9997 -> 9988[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9997[label="Pos vuz3190 * Pos vuz3170",fontsize=16,color="magenta"];9997 -> 10017[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9997 -> 10018[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8681[label="primQuotInt (Pos vuz398) (gcd1 False (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8681 -> 8815[label="",style="solid", color="black", weight=3]; 67.72/34.80 8682[label="primQuotInt (Pos vuz398) (gcd1 True (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8682 -> 8816[label="",style="solid", color="black", weight=3]; 67.72/34.80 8683 -> 7713[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8683[label="primQuotInt (Pos (Succ vuz4010)) (gcd3 (Pos (Succ vuz4010)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];8683 -> 8817[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8683 -> 8818[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8683 -> 8819[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8684 -> 7809[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8684[label="primQuotInt (Neg (Succ vuz4000)) (gcd3 (Neg (Succ vuz4000)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];8684 -> 8820[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8684 -> 8821[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8684 -> 8822[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8685 -> 7713[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8685[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];8685 -> 8823[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8685 -> 8824[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8685 -> 8825[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8686[label="Succ vuz4060",fontsize=16,color="green",shape="box"];8687[label="Zero",fontsize=16,color="green",shape="box"];8688[label="Succ vuz4060",fontsize=16,color="green",shape="box"];8689[label="Zero",fontsize=16,color="green",shape="box"];8690[label="Zero",fontsize=16,color="green",shape="box"];8691[label="Zero",fontsize=16,color="green",shape="box"];8692 -> 7667[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8692[label="primQuotInt (Pos (Succ vuz4090)) (gcd3 (Pos (Succ vuz4090)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];8692 -> 8826[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8692 -> 8827[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8692 -> 8828[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8693 -> 7587[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8693[label="primQuotInt (Neg (Succ vuz4080)) (gcd3 (Neg (Succ vuz4080)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];8693 -> 8829[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8693 -> 8830[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8693 -> 8831[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8694 -> 7667[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8694[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];8694 -> 8832[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8694 -> 8833[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8694 -> 8834[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8695[label="Succ vuz4140",fontsize=16,color="green",shape="box"];8696[label="Zero",fontsize=16,color="green",shape="box"];8697[label="Succ vuz4140",fontsize=16,color="green",shape="box"];8698[label="Zero",fontsize=16,color="green",shape="box"];8699[label="Zero",fontsize=16,color="green",shape="box"];8700[label="Zero",fontsize=16,color="green",shape="box"];8701[label="primQuotInt (Pos vuz416) (gcd0Gcd'2 (abs (Pos vuz417)) (abs (Neg vuz3190 * Pos vuz3170)))",fontsize=16,color="black",shape="box"];8701 -> 8835[label="",style="solid", color="black", weight=3]; 67.72/34.80 9998 -> 9988[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9998[label="Neg vuz3190 * Pos vuz3170",fontsize=16,color="magenta"];9998 -> 10019[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9998 -> 10020[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8704[label="primQuotInt (Pos vuz416) (gcd1 False (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8704 -> 8836[label="",style="solid", color="black", weight=3]; 67.72/34.80 8705[label="primQuotInt (Pos vuz416) (gcd1 True (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8705 -> 8837[label="",style="solid", color="black", weight=3]; 67.72/34.80 8706 -> 7598[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8706[label="primQuotInt (Pos (Succ vuz4190)) (gcd3 (Pos (Succ vuz4190)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];8706 -> 8838[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8706 -> 8839[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8706 -> 8840[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8707 -> 7763[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8707[label="primQuotInt (Neg (Succ vuz4180)) (gcd3 (Neg (Succ vuz4180)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];8707 -> 8841[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8707 -> 8842[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8707 -> 8843[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8708 -> 7598[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8708[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];8708 -> 8844[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8708 -> 8845[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8708 -> 8846[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8709[label="Succ vuz4240",fontsize=16,color="green",shape="box"];8710[label="Succ vuz4240",fontsize=16,color="green",shape="box"];8711[label="Zero",fontsize=16,color="green",shape="box"];8712[label="Zero",fontsize=16,color="green",shape="box"];8713[label="Zero",fontsize=16,color="green",shape="box"];8714[label="Zero",fontsize=16,color="green",shape="box"];8715[label="primQuotInt (Neg vuz426) (gcd0Gcd'2 (abs (Neg vuz427)) (abs (Neg vuz3190 * Neg vuz3170)))",fontsize=16,color="black",shape="box"];8715 -> 8847[label="",style="solid", color="black", weight=3]; 67.72/34.80 9999 -> 9988[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9999[label="Neg vuz3190 * Neg vuz3170",fontsize=16,color="magenta"];9999 -> 10021[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9999 -> 10022[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8718[label="primQuotInt (Neg vuz426) (gcd1 False (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8718 -> 8848[label="",style="solid", color="black", weight=3]; 67.72/34.80 8719[label="primQuotInt (Neg vuz426) (gcd1 True (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8719 -> 8849[label="",style="solid", color="black", weight=3]; 67.72/34.80 8720[label="primQuotInt (Neg vuz428) (gcd0Gcd'2 (abs (Neg vuz429)) (abs (Pos vuz3190 * Neg vuz3170)))",fontsize=16,color="black",shape="box"];8720 -> 8850[label="",style="solid", color="black", weight=3]; 67.72/34.80 10000 -> 9988[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10000[label="Pos vuz3190 * Neg vuz3170",fontsize=16,color="magenta"];10000 -> 10023[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10000 -> 10024[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8723[label="primQuotInt (Neg vuz428) (gcd1 False (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8723 -> 8851[label="",style="solid", color="black", weight=3]; 67.72/34.80 8724[label="primQuotInt (Neg vuz428) (gcd1 True (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8724 -> 8852[label="",style="solid", color="black", weight=3]; 67.72/34.80 8725 -> 7613[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8725[label="primQuotInt (Pos (Succ vuz4310)) (gcd3 (Pos (Succ vuz4310)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];8725 -> 8853[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8725 -> 8854[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8725 -> 8855[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8726 -> 7745[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8726[label="primQuotInt (Neg (Succ vuz4300)) (gcd3 (Neg (Succ vuz4300)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];8726 -> 8856[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8726 -> 8857[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8726 -> 8858[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8727 -> 7613[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8727[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];8727 -> 8859[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8727 -> 8860[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8727 -> 8861[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8728[label="Succ vuz4360",fontsize=16,color="green",shape="box"];8729[label="Zero",fontsize=16,color="green",shape="box"];8730[label="Succ vuz4360",fontsize=16,color="green",shape="box"];8731[label="Zero",fontsize=16,color="green",shape="box"];8732[label="Zero",fontsize=16,color="green",shape="box"];8733[label="Zero",fontsize=16,color="green",shape="box"];8734 -> 7667[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8734[label="primQuotInt (Pos (Succ vuz4390)) (gcd3 (Pos (Succ vuz4390)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];8734 -> 8862[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8734 -> 8863[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8734 -> 8864[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8735 -> 7587[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8735[label="primQuotInt (Neg (Succ vuz4380)) (gcd3 (Neg (Succ vuz4380)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];8735 -> 8865[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8735 -> 8866[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8735 -> 8867[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8736 -> 7667[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8736[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];8736 -> 8868[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8736 -> 8869[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8736 -> 8870[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8737[label="Succ vuz4440",fontsize=16,color="green",shape="box"];8738[label="Zero",fontsize=16,color="green",shape="box"];8739[label="Succ vuz4440",fontsize=16,color="green",shape="box"];8740[label="Zero",fontsize=16,color="green",shape="box"];8741[label="Zero",fontsize=16,color="green",shape="box"];8742[label="Zero",fontsize=16,color="green",shape="box"];8743[label="primQuotInt (Neg vuz446) (gcd0Gcd'2 (abs (Neg vuz447)) (abs (Neg vuz3190 * Pos vuz3170)))",fontsize=16,color="black",shape="box"];8743 -> 8871[label="",style="solid", color="black", weight=3]; 67.72/34.80 10001 -> 9988[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10001[label="Neg vuz3190 * Pos vuz3170",fontsize=16,color="magenta"];10001 -> 10025[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10001 -> 10026[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8746[label="primQuotInt (Neg vuz446) (gcd1 False (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8746 -> 8872[label="",style="solid", color="black", weight=3]; 67.72/34.80 8747[label="primQuotInt (Neg vuz446) (gcd1 True (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8747 -> 8873[label="",style="solid", color="black", weight=3]; 67.72/34.80 8748[label="primQuotInt (Neg vuz348) (gcd0Gcd'2 (abs (Neg vuz349)) (abs (Pos vuz3190 * Pos vuz3170)))",fontsize=16,color="black",shape="box"];8748 -> 8874[label="",style="solid", color="black", weight=3]; 67.72/34.80 10002 -> 9988[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10002[label="Pos vuz3190 * Pos vuz3170",fontsize=16,color="magenta"];10002 -> 10027[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10002 -> 10028[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8751[label="primQuotInt (Neg vuz348) (gcd1 False (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8751 -> 8875[label="",style="solid", color="black", weight=3]; 67.72/34.80 8752[label="primQuotInt (Neg vuz348) (gcd1 True (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8752 -> 8876[label="",style="solid", color="black", weight=3]; 67.72/34.80 8753 -> 7713[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8753[label="primQuotInt (Pos (Succ vuz4490)) (gcd3 (Pos (Succ vuz4490)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];8753 -> 8877[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8753 -> 8878[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8753 -> 8879[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8754 -> 7809[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8754[label="primQuotInt (Neg (Succ vuz4480)) (gcd3 (Neg (Succ vuz4480)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];8754 -> 8880[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8754 -> 8881[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8754 -> 8882[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8755 -> 7713[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8755[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];8755 -> 8883[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8755 -> 8884[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8755 -> 8885[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8756[label="Succ vuz4540",fontsize=16,color="green",shape="box"];8757[label="Zero",fontsize=16,color="green",shape="box"];8758[label="Succ vuz4540",fontsize=16,color="green",shape="box"];8759[label="Zero",fontsize=16,color="green",shape="box"];8760[label="Zero",fontsize=16,color="green",shape="box"];8761[label="Zero",fontsize=16,color="green",shape="box"];8762[label="primQuotInt (Pos vuz354) (gcd0Gcd'2 (abs (Pos vuz355)) (abs (Pos vuz3190 * Neg vuz3170)))",fontsize=16,color="black",shape="box"];8762 -> 8886[label="",style="solid", color="black", weight=3]; 67.72/34.80 10003 -> 9988[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10003[label="Pos vuz3190 * Neg vuz3170",fontsize=16,color="magenta"];10003 -> 10029[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10003 -> 10030[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8765[label="primQuotInt (Pos vuz354) (gcd1 False (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8765 -> 8887[label="",style="solid", color="black", weight=3]; 67.72/34.80 8766[label="primQuotInt (Pos vuz354) (gcd1 True (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8766 -> 8888[label="",style="solid", color="black", weight=3]; 67.72/34.80 8767 -> 7613[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8767[label="primQuotInt (Pos (Succ vuz4570)) (gcd3 (Pos (Succ vuz4570)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];8767 -> 8889[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8767 -> 8890[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8767 -> 8891[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8768 -> 7745[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8768[label="primQuotInt (Neg (Succ vuz4560)) (gcd3 (Neg (Succ vuz4560)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];8768 -> 8892[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8768 -> 8893[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8768 -> 8894[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8769 -> 7613[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8769[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];8769 -> 8895[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8769 -> 8896[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8769 -> 8897[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8770[label="Succ vuz4620",fontsize=16,color="green",shape="box"];8771[label="Zero",fontsize=16,color="green",shape="box"];8772[label="Succ vuz4620",fontsize=16,color="green",shape="box"];8773[label="Zero",fontsize=16,color="green",shape="box"];8774[label="Zero",fontsize=16,color="green",shape="box"];8775[label="Zero",fontsize=16,color="green",shape="box"];8776 -> 7598[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8776[label="primQuotInt (Pos (Succ vuz4650)) (gcd3 (Pos (Succ vuz4650)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];8776 -> 8898[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8776 -> 8899[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8776 -> 8900[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8777 -> 7763[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8777[label="primQuotInt (Neg (Succ vuz4640)) (gcd3 (Neg (Succ vuz4640)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];8777 -> 8901[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8777 -> 8902[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8777 -> 8903[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8778 -> 7598[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8778[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];8778 -> 8904[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8778 -> 8905[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8778 -> 8906[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8779[label="Succ vuz4700",fontsize=16,color="green",shape="box"];8780[label="Succ vuz4700",fontsize=16,color="green",shape="box"];8781[label="Zero",fontsize=16,color="green",shape="box"];8782[label="Zero",fontsize=16,color="green",shape="box"];8783[label="Zero",fontsize=16,color="green",shape="box"];8784[label="Zero",fontsize=16,color="green",shape="box"];8785[label="primQuotInt (Pos vuz360) (gcd0Gcd'2 (abs (Pos vuz361)) (abs (Neg vuz3190 * Neg vuz3170)))",fontsize=16,color="black",shape="box"];8785 -> 8907[label="",style="solid", color="black", weight=3]; 67.72/34.80 10004 -> 9988[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10004[label="Neg vuz3190 * Neg vuz3170",fontsize=16,color="magenta"];10004 -> 10031[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10004 -> 10032[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8788[label="primQuotInt (Pos vuz360) (gcd1 False (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8788 -> 8908[label="",style="solid", color="black", weight=3]; 67.72/34.80 8789[label="primQuotInt (Pos vuz360) (gcd1 True (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8789 -> 8909[label="",style="solid", color="black", weight=3]; 67.72/34.80 8791 -> 7571[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8791[label="primPlusNat vuz369 vuz481",fontsize=16,color="magenta"];8791 -> 8910[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8791 -> 8911[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8792 -> 7479[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8792[label="primEqInt (Pos (primPlusNat vuz369 vuz481)) (fromInt (Pos Zero))",fontsize=16,color="magenta"];8792 -> 8912[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8790[label="primQuotInt (Pos vuz366) (gcd2 vuz504 (Pos vuz505) (Pos vuz367))",fontsize=16,color="burlywood",shape="triangle"];11067[label="vuz504/False",fontsize=10,color="white",style="solid",shape="box"];8790 -> 11067[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11067 -> 8913[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11068[label="vuz504/True",fontsize=10,color="white",style="solid",shape="box"];8790 -> 11068[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11068 -> 8914[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 8793[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primMinusNat (Succ vuz3690) vuz483) (fromInt (Pos Zero))) (primMinusNat (Succ vuz3690) vuz483) (Pos vuz367))",fontsize=16,color="burlywood",shape="box"];11069[label="vuz483/Succ vuz4830",fontsize=10,color="white",style="solid",shape="box"];8793 -> 11069[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11069 -> 8915[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11070[label="vuz483/Zero",fontsize=10,color="white",style="solid",shape="box"];8793 -> 11070[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11070 -> 8916[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 8794[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primMinusNat Zero vuz483) (fromInt (Pos Zero))) (primMinusNat Zero vuz483) (Pos vuz367))",fontsize=16,color="burlywood",shape="box"];11071[label="vuz483/Succ vuz4830",fontsize=10,color="white",style="solid",shape="box"];8794 -> 11071[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11071 -> 8917[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11072[label="vuz483/Zero",fontsize=10,color="white",style="solid",shape="box"];8794 -> 11072[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11072 -> 8918[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 8795[label="vuz371",fontsize=16,color="green",shape="box"];8796[label="vuz485",fontsize=16,color="green",shape="box"];8797[label="vuz373",fontsize=16,color="green",shape="box"];8798[label="vuz370",fontsize=16,color="green",shape="box"];8800 -> 7498[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8800[label="primEqInt (Neg (primPlusNat vuz373 vuz487)) (fromInt (Pos Zero))",fontsize=16,color="magenta"];8800 -> 8919[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8801 -> 7571[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8801[label="primPlusNat vuz373 vuz487",fontsize=16,color="magenta"];8801 -> 8920[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8801 -> 8921[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8799[label="primQuotInt (Pos vuz370) (gcd2 vuz507 (Neg vuz508) (Pos vuz371))",fontsize=16,color="burlywood",shape="triangle"];11073[label="vuz507/False",fontsize=10,color="white",style="solid",shape="box"];8799 -> 11073[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11073 -> 8922[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11074[label="vuz507/True",fontsize=10,color="white",style="solid",shape="box"];8799 -> 11074[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11074 -> 8923[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 8802[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primMinusNat (Succ vuz4890) vuz377) (fromInt (Pos Zero))) (primMinusNat (Succ vuz4890) vuz377) (Neg vuz375))",fontsize=16,color="burlywood",shape="box"];11075[label="vuz377/Succ vuz3770",fontsize=10,color="white",style="solid",shape="box"];8802 -> 11075[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11075 -> 8924[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11076[label="vuz377/Zero",fontsize=10,color="white",style="solid",shape="box"];8802 -> 11076[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11076 -> 8925[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 8803[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primMinusNat Zero vuz377) (fromInt (Pos Zero))) (primMinusNat Zero vuz377) (Neg vuz375))",fontsize=16,color="burlywood",shape="box"];11077[label="vuz377/Succ vuz3770",fontsize=10,color="white",style="solid",shape="box"];8803 -> 11077[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11077 -> 8926[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11078[label="vuz377/Zero",fontsize=10,color="white",style="solid",shape="box"];8803 -> 11078[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11078 -> 8927[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 8805 -> 7498[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8805[label="primEqInt (Neg (primPlusNat vuz377 vuz491)) (fromInt (Pos Zero))",fontsize=16,color="magenta"];8805 -> 8928[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8806 -> 7571[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8806[label="primPlusNat vuz377 vuz491",fontsize=16,color="magenta"];8806 -> 8929[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8806 -> 8930[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8804[label="primQuotInt (Neg vuz374) (gcd2 vuz510 (Neg vuz511) (Neg vuz375))",fontsize=16,color="burlywood",shape="triangle"];11079[label="vuz510/False",fontsize=10,color="white",style="solid",shape="box"];8804 -> 11079[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11079 -> 8931[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11080[label="vuz510/True",fontsize=10,color="white",style="solid",shape="box"];8804 -> 11080[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11080 -> 8932[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 8808 -> 7479[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8808[label="primEqInt (Pos (primPlusNat vuz381 vuz493)) (fromInt (Pos Zero))",fontsize=16,color="magenta"];8808 -> 8933[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8809 -> 7571[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8809[label="primPlusNat vuz381 vuz493",fontsize=16,color="magenta"];8809 -> 8934[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8809 -> 8935[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8807[label="primQuotInt (Neg vuz378) (gcd2 vuz513 (Pos vuz514) (Neg vuz379))",fontsize=16,color="burlywood",shape="triangle"];11081[label="vuz513/False",fontsize=10,color="white",style="solid",shape="box"];8807 -> 11081[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11081 -> 8936[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11082[label="vuz513/True",fontsize=10,color="white",style="solid",shape="box"];8807 -> 11082[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11082 -> 8937[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 8810[label="vuz379",fontsize=16,color="green",shape="box"];8811[label="vuz381",fontsize=16,color="green",shape="box"];8812[label="vuz378",fontsize=16,color="green",shape="box"];8813[label="vuz495",fontsize=16,color="green",shape="box"];8814 -> 9854[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8814[label="primQuotInt (Pos vuz398) (gcd0Gcd'1 (abs (Pos vuz3190 * Pos vuz3170) == fromInt (Pos Zero)) (abs (Pos vuz399)) (abs (Pos vuz3190 * Pos vuz3170)))",fontsize=16,color="magenta"];8814 -> 9855[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8814 -> 9856[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8814 -> 9857[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8814 -> 9858[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10017[label="Pos vuz3170",fontsize=16,color="green",shape="box"];10018[label="Pos vuz3190",fontsize=16,color="green",shape="box"];8815 -> 8373[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8815[label="primQuotInt (Pos vuz398) (gcd0 (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];8816[label="primQuotInt (Pos vuz398) (error [])",fontsize=16,color="black",shape="triangle"];8816 -> 8939[label="",style="solid", color="black", weight=3]; 67.72/34.80 8817[label="Succ vuz4010",fontsize=16,color="green",shape="box"];8818[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8819[label="Succ vuz4010",fontsize=16,color="green",shape="box"];8820[label="Succ vuz4000",fontsize=16,color="green",shape="box"];8821[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8822[label="Succ vuz4000",fontsize=16,color="green",shape="box"];8823[label="Zero",fontsize=16,color="green",shape="box"];8824[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8825[label="Zero",fontsize=16,color="green",shape="box"];8826[label="Succ vuz4090",fontsize=16,color="green",shape="box"];8827[label="Succ vuz4090",fontsize=16,color="green",shape="box"];8828[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8829[label="Succ vuz4080",fontsize=16,color="green",shape="box"];8830[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8831[label="Succ vuz4080",fontsize=16,color="green",shape="box"];8832[label="Zero",fontsize=16,color="green",shape="box"];8833[label="Zero",fontsize=16,color="green",shape="box"];8834[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8835 -> 9854[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8835[label="primQuotInt (Pos vuz416) (gcd0Gcd'1 (abs (Neg vuz3190 * Pos vuz3170) == fromInt (Pos Zero)) (abs (Pos vuz417)) (abs (Neg vuz3190 * Pos vuz3170)))",fontsize=16,color="magenta"];8835 -> 9859[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8835 -> 9860[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8835 -> 9861[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10019[label="Pos vuz3170",fontsize=16,color="green",shape="box"];10020[label="Neg vuz3190",fontsize=16,color="green",shape="box"];8836 -> 8387[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8836[label="primQuotInt (Pos vuz416) (gcd0 (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];8837 -> 8816[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8837[label="primQuotInt (Pos vuz416) (error [])",fontsize=16,color="magenta"];8837 -> 8941[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8838[label="Succ vuz4190",fontsize=16,color="green",shape="box"];8839[label="Succ vuz4190",fontsize=16,color="green",shape="box"];8840[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8841[label="Succ vuz4180",fontsize=16,color="green",shape="box"];8842[label="Succ vuz4180",fontsize=16,color="green",shape="box"];8843[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8844[label="Zero",fontsize=16,color="green",shape="box"];8845[label="Zero",fontsize=16,color="green",shape="box"];8846[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8847 -> 10039[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8847[label="primQuotInt (Neg vuz426) (gcd0Gcd'1 (abs (Neg vuz3190 * Neg vuz3170) == fromInt (Pos Zero)) (abs (Neg vuz427)) (abs (Neg vuz3190 * Neg vuz3170)))",fontsize=16,color="magenta"];8847 -> 10040[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8847 -> 10041[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8847 -> 10042[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8847 -> 10043[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10021[label="Neg vuz3170",fontsize=16,color="green",shape="box"];10022[label="Neg vuz3190",fontsize=16,color="green",shape="box"];8848 -> 8396[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8848[label="primQuotInt (Neg vuz426) (gcd0 (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];8849[label="primQuotInt (Neg vuz426) (error [])",fontsize=16,color="black",shape="triangle"];8849 -> 8943[label="",style="solid", color="black", weight=3]; 67.72/34.80 8850 -> 10039[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8850[label="primQuotInt (Neg vuz428) (gcd0Gcd'1 (abs (Pos vuz3190 * Neg vuz3170) == fromInt (Pos Zero)) (abs (Neg vuz429)) (abs (Pos vuz3190 * Neg vuz3170)))",fontsize=16,color="magenta"];8850 -> 10044[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8850 -> 10045[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8850 -> 10046[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10023[label="Neg vuz3170",fontsize=16,color="green",shape="box"];10024[label="Pos vuz3190",fontsize=16,color="green",shape="box"];8851 -> 8398[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8851[label="primQuotInt (Neg vuz428) (gcd0 (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];8852 -> 8849[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8852[label="primQuotInt (Neg vuz428) (error [])",fontsize=16,color="magenta"];8852 -> 8945[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8853[label="Succ vuz4310",fontsize=16,color="green",shape="box"];8854[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8855[label="Succ vuz4310",fontsize=16,color="green",shape="box"];8856[label="Succ vuz4300",fontsize=16,color="green",shape="box"];8857[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8858[label="Succ vuz4300",fontsize=16,color="green",shape="box"];8859[label="Zero",fontsize=16,color="green",shape="box"];8860[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8861[label="Zero",fontsize=16,color="green",shape="box"];8862[label="Succ vuz4390",fontsize=16,color="green",shape="box"];8863[label="Succ vuz4390",fontsize=16,color="green",shape="box"];8864[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8865[label="Succ vuz4380",fontsize=16,color="green",shape="box"];8866[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8867[label="Succ vuz4380",fontsize=16,color="green",shape="box"];8868[label="Zero",fontsize=16,color="green",shape="box"];8869[label="Zero",fontsize=16,color="green",shape="box"];8870[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8871 -> 10039[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8871[label="primQuotInt (Neg vuz446) (gcd0Gcd'1 (abs (Neg vuz3190 * Pos vuz3170) == fromInt (Pos Zero)) (abs (Neg vuz447)) (abs (Neg vuz3190 * Pos vuz3170)))",fontsize=16,color="magenta"];8871 -> 10047[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8871 -> 10048[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8871 -> 10049[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8871 -> 10050[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10025[label="Pos vuz3170",fontsize=16,color="green",shape="box"];10026[label="Neg vuz3190",fontsize=16,color="green",shape="box"];8872 -> 8412[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8872[label="primQuotInt (Neg vuz446) (gcd0 (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];8873 -> 8849[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8873[label="primQuotInt (Neg vuz446) (error [])",fontsize=16,color="magenta"];8873 -> 8947[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8874 -> 10039[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8874[label="primQuotInt (Neg vuz348) (gcd0Gcd'1 (abs (Pos vuz3190 * Pos vuz3170) == fromInt (Pos Zero)) (abs (Neg vuz349)) (abs (Pos vuz3190 * Pos vuz3170)))",fontsize=16,color="magenta"];8874 -> 10051[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8874 -> 10052[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8874 -> 10053[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8874 -> 10054[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10027[label="Pos vuz3170",fontsize=16,color="green",shape="box"];10028[label="Pos vuz3190",fontsize=16,color="green",shape="box"];8875 -> 8414[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8875[label="primQuotInt (Neg vuz348) (gcd0 (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];8876 -> 8849[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8876[label="primQuotInt (Neg vuz348) (error [])",fontsize=16,color="magenta"];8876 -> 8949[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8877[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8878[label="Succ vuz4490",fontsize=16,color="green",shape="box"];8879[label="Succ vuz4490",fontsize=16,color="green",shape="box"];8880[label="Succ vuz4480",fontsize=16,color="green",shape="box"];8881[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8882[label="Succ vuz4480",fontsize=16,color="green",shape="box"];8883[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8884[label="Zero",fontsize=16,color="green",shape="box"];8885[label="Zero",fontsize=16,color="green",shape="box"];8886 -> 9854[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8886[label="primQuotInt (Pos vuz354) (gcd0Gcd'1 (abs (Pos vuz3190 * Neg vuz3170) == fromInt (Pos Zero)) (abs (Pos vuz355)) (abs (Pos vuz3190 * Neg vuz3170)))",fontsize=16,color="magenta"];8886 -> 9862[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8886 -> 9863[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8886 -> 9864[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8886 -> 9865[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10029[label="Neg vuz3170",fontsize=16,color="green",shape="box"];10030[label="Pos vuz3190",fontsize=16,color="green",shape="box"];8887 -> 8422[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8887[label="primQuotInt (Pos vuz354) (gcd0 (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];8888 -> 8816[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8888[label="primQuotInt (Pos vuz354) (error [])",fontsize=16,color="magenta"];8888 -> 8951[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8889[label="Succ vuz4570",fontsize=16,color="green",shape="box"];8890[label="Succ vuz4570",fontsize=16,color="green",shape="box"];8891[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8892[label="Succ vuz4560",fontsize=16,color="green",shape="box"];8893[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8894[label="Succ vuz4560",fontsize=16,color="green",shape="box"];8895[label="Zero",fontsize=16,color="green",shape="box"];8896[label="Zero",fontsize=16,color="green",shape="box"];8897[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8898[label="Succ vuz4650",fontsize=16,color="green",shape="box"];8899[label="Succ vuz4650",fontsize=16,color="green",shape="box"];8900[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8901[label="Succ vuz4640",fontsize=16,color="green",shape="box"];8902[label="Succ vuz4640",fontsize=16,color="green",shape="box"];8903[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8904[label="Zero",fontsize=16,color="green",shape="box"];8905[label="Zero",fontsize=16,color="green",shape="box"];8906[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8907 -> 9854[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8907[label="primQuotInt (Pos vuz360) (gcd0Gcd'1 (abs (Neg vuz3190 * Neg vuz3170) == fromInt (Pos Zero)) (abs (Pos vuz361)) (abs (Neg vuz3190 * Neg vuz3170)))",fontsize=16,color="magenta"];8907 -> 9866[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8907 -> 9867[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8907 -> 9868[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8907 -> 9869[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10031[label="Neg vuz3170",fontsize=16,color="green",shape="box"];10032[label="Neg vuz3190",fontsize=16,color="green",shape="box"];8908 -> 8436[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8908[label="primQuotInt (Pos vuz360) (gcd0 (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];8909 -> 8816[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8909[label="primQuotInt (Pos vuz360) (error [])",fontsize=16,color="magenta"];8909 -> 8953[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8910[label="vuz369",fontsize=16,color="green",shape="box"];8911[label="vuz481",fontsize=16,color="green",shape="box"];8912 -> 7571[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8912[label="primPlusNat vuz369 vuz481",fontsize=16,color="magenta"];8912 -> 8954[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8912 -> 8955[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 7479[label="primEqInt (Pos vuz325) (fromInt (Pos Zero))",fontsize=16,color="burlywood",shape="triangle"];11083[label="vuz325/Succ vuz3250",fontsize=10,color="white",style="solid",shape="box"];7479 -> 11083[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11083 -> 7494[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11084[label="vuz325/Zero",fontsize=10,color="white",style="solid",shape="box"];7479 -> 11084[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11084 -> 7495[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 8913[label="primQuotInt (Pos vuz366) (gcd2 False (Pos vuz505) (Pos vuz367))",fontsize=16,color="black",shape="box"];8913 -> 8956[label="",style="solid", color="black", weight=3]; 67.72/34.80 8914[label="primQuotInt (Pos vuz366) (gcd2 True (Pos vuz505) (Pos vuz367))",fontsize=16,color="black",shape="box"];8914 -> 8957[label="",style="solid", color="black", weight=3]; 67.72/34.80 8915[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primMinusNat (Succ vuz3690) (Succ vuz4830)) (fromInt (Pos Zero))) (primMinusNat (Succ vuz3690) (Succ vuz4830)) (Pos vuz367))",fontsize=16,color="black",shape="box"];8915 -> 8958[label="",style="solid", color="black", weight=3]; 67.72/34.80 8916[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primMinusNat (Succ vuz3690) Zero) (fromInt (Pos Zero))) (primMinusNat (Succ vuz3690) Zero) (Pos vuz367))",fontsize=16,color="black",shape="box"];8916 -> 8959[label="",style="solid", color="black", weight=3]; 67.72/34.80 8917[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primMinusNat Zero (Succ vuz4830)) (fromInt (Pos Zero))) (primMinusNat Zero (Succ vuz4830)) (Pos vuz367))",fontsize=16,color="black",shape="box"];8917 -> 8960[label="",style="solid", color="black", weight=3]; 67.72/34.80 8918[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primMinusNat Zero Zero) (fromInt (Pos Zero))) (primMinusNat Zero Zero) (Pos vuz367))",fontsize=16,color="black",shape="box"];8918 -> 8961[label="",style="solid", color="black", weight=3]; 67.72/34.80 8919 -> 7571[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8919[label="primPlusNat vuz373 vuz487",fontsize=16,color="magenta"];8919 -> 8962[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8919 -> 8963[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 7498[label="primEqInt (Neg vuz326) (fromInt (Pos Zero))",fontsize=16,color="burlywood",shape="triangle"];11085[label="vuz326/Succ vuz3260",fontsize=10,color="white",style="solid",shape="box"];7498 -> 11085[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11085 -> 7512[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11086[label="vuz326/Zero",fontsize=10,color="white",style="solid",shape="box"];7498 -> 11086[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11086 -> 7513[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 8920[label="vuz373",fontsize=16,color="green",shape="box"];8921[label="vuz487",fontsize=16,color="green",shape="box"];8922[label="primQuotInt (Pos vuz370) (gcd2 False (Neg vuz508) (Pos vuz371))",fontsize=16,color="black",shape="box"];8922 -> 8964[label="",style="solid", color="black", weight=3]; 67.72/34.80 8923[label="primQuotInt (Pos vuz370) (gcd2 True (Neg vuz508) (Pos vuz371))",fontsize=16,color="black",shape="box"];8923 -> 8965[label="",style="solid", color="black", weight=3]; 67.72/34.80 8924[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primMinusNat (Succ vuz4890) (Succ vuz3770)) (fromInt (Pos Zero))) (primMinusNat (Succ vuz4890) (Succ vuz3770)) (Neg vuz375))",fontsize=16,color="black",shape="box"];8924 -> 8966[label="",style="solid", color="black", weight=3]; 67.72/34.80 8925[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primMinusNat (Succ vuz4890) Zero) (fromInt (Pos Zero))) (primMinusNat (Succ vuz4890) Zero) (Neg vuz375))",fontsize=16,color="black",shape="box"];8925 -> 8967[label="",style="solid", color="black", weight=3]; 67.72/34.80 8926[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primMinusNat Zero (Succ vuz3770)) (fromInt (Pos Zero))) (primMinusNat Zero (Succ vuz3770)) (Neg vuz375))",fontsize=16,color="black",shape="box"];8926 -> 8968[label="",style="solid", color="black", weight=3]; 67.72/34.80 8927[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primMinusNat Zero Zero) (fromInt (Pos Zero))) (primMinusNat Zero Zero) (Neg vuz375))",fontsize=16,color="black",shape="box"];8927 -> 8969[label="",style="solid", color="black", weight=3]; 67.72/34.80 8928 -> 7571[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8928[label="primPlusNat vuz377 vuz491",fontsize=16,color="magenta"];8928 -> 8970[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8928 -> 8971[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8929[label="vuz377",fontsize=16,color="green",shape="box"];8930[label="vuz491",fontsize=16,color="green",shape="box"];8931[label="primQuotInt (Neg vuz374) (gcd2 False (Neg vuz511) (Neg vuz375))",fontsize=16,color="black",shape="box"];8931 -> 8972[label="",style="solid", color="black", weight=3]; 67.72/34.80 8932[label="primQuotInt (Neg vuz374) (gcd2 True (Neg vuz511) (Neg vuz375))",fontsize=16,color="black",shape="box"];8932 -> 8973[label="",style="solid", color="black", weight=3]; 67.72/34.80 8933 -> 7571[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8933[label="primPlusNat vuz381 vuz493",fontsize=16,color="magenta"];8933 -> 8974[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8933 -> 8975[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8934[label="vuz381",fontsize=16,color="green",shape="box"];8935[label="vuz493",fontsize=16,color="green",shape="box"];8936[label="primQuotInt (Neg vuz378) (gcd2 False (Pos vuz514) (Neg vuz379))",fontsize=16,color="black",shape="box"];8936 -> 8976[label="",style="solid", color="black", weight=3]; 67.72/34.80 8937[label="primQuotInt (Neg vuz378) (gcd2 True (Pos vuz514) (Neg vuz379))",fontsize=16,color="black",shape="box"];8937 -> 8977[label="",style="solid", color="black", weight=3]; 67.72/34.80 9855 -> 9987[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9855[label="abs (Pos vuz3190 * Pos vuz3170) == fromInt (Pos Zero)",fontsize=16,color="magenta"];9855 -> 10005[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9856[label="vuz398",fontsize=16,color="green",shape="box"];9857[label="abs (Pos vuz399)",fontsize=16,color="black",shape="triangle"];9857 -> 10033[label="",style="solid", color="black", weight=3]; 67.72/34.80 9858 -> 9366[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9858[label="abs (Pos vuz3190 * Pos vuz3170)",fontsize=16,color="magenta"];9854[label="primQuotInt (Pos vuz416) (gcd0Gcd'1 vuz550 vuz549 vuz542)",fontsize=16,color="burlywood",shape="triangle"];11087[label="vuz550/False",fontsize=10,color="white",style="solid",shape="box"];9854 -> 11087[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11087 -> 10034[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11088[label="vuz550/True",fontsize=10,color="white",style="solid",shape="box"];9854 -> 11088[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11088 -> 10035[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 8939[label="error []",fontsize=16,color="red",shape="box"];9859 -> 9987[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9859[label="abs (Neg vuz3190 * Pos vuz3170) == fromInt (Pos Zero)",fontsize=16,color="magenta"];9859 -> 10006[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9860 -> 9857[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9860[label="abs (Pos vuz417)",fontsize=16,color="magenta"];9860 -> 10036[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9861 -> 9369[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9861[label="abs (Neg vuz3190 * Pos vuz3170)",fontsize=16,color="magenta"];8941[label="vuz416",fontsize=16,color="green",shape="box"];10040[label="vuz426",fontsize=16,color="green",shape="box"];10041 -> 9376[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10041[label="abs (Neg vuz3190 * Neg vuz3170)",fontsize=16,color="magenta"];10042[label="abs (Neg vuz427)",fontsize=16,color="black",shape="triangle"];10042 -> 10172[label="",style="solid", color="black", weight=3]; 67.72/34.80 10043 -> 9987[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10043[label="abs (Neg vuz3190 * Neg vuz3170) == fromInt (Pos Zero)",fontsize=16,color="magenta"];10043 -> 10173[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10039[label="primQuotInt (Neg vuz428) (gcd0Gcd'1 vuz553 vuz552 vuz544)",fontsize=16,color="burlywood",shape="triangle"];11089[label="vuz553/False",fontsize=10,color="white",style="solid",shape="box"];10039 -> 11089[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11089 -> 10174[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11090[label="vuz553/True",fontsize=10,color="white",style="solid",shape="box"];10039 -> 11090[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11090 -> 10175[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 8943[label="error []",fontsize=16,color="red",shape="box"];10044 -> 9372[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10044[label="abs (Pos vuz3190 * Neg vuz3170)",fontsize=16,color="magenta"];10045 -> 10042[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10045[label="abs (Neg vuz429)",fontsize=16,color="magenta"];10045 -> 10176[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10046 -> 9987[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10046[label="abs (Pos vuz3190 * Neg vuz3170) == fromInt (Pos Zero)",fontsize=16,color="magenta"];10046 -> 10177[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8945[label="vuz428",fontsize=16,color="green",shape="box"];10047[label="vuz446",fontsize=16,color="green",shape="box"];10048 -> 9369[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10048[label="abs (Neg vuz3190 * Pos vuz3170)",fontsize=16,color="magenta"];10049 -> 10042[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10049[label="abs (Neg vuz447)",fontsize=16,color="magenta"];10049 -> 10178[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10050 -> 9987[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10050[label="abs (Neg vuz3190 * Pos vuz3170) == fromInt (Pos Zero)",fontsize=16,color="magenta"];10050 -> 10179[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8947[label="vuz446",fontsize=16,color="green",shape="box"];10051[label="vuz348",fontsize=16,color="green",shape="box"];10052 -> 9366[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10052[label="abs (Pos vuz3190 * Pos vuz3170)",fontsize=16,color="magenta"];10053 -> 10042[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10053[label="abs (Neg vuz349)",fontsize=16,color="magenta"];10053 -> 10180[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10054 -> 9987[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10054[label="abs (Pos vuz3190 * Pos vuz3170) == fromInt (Pos Zero)",fontsize=16,color="magenta"];10054 -> 10181[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8949[label="vuz348",fontsize=16,color="green",shape="box"];9862 -> 9987[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9862[label="abs (Pos vuz3190 * Neg vuz3170) == fromInt (Pos Zero)",fontsize=16,color="magenta"];9862 -> 10007[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9863[label="vuz354",fontsize=16,color="green",shape="box"];9864 -> 9857[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9864[label="abs (Pos vuz355)",fontsize=16,color="magenta"];9864 -> 10037[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9865 -> 9372[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9865[label="abs (Pos vuz3190 * Neg vuz3170)",fontsize=16,color="magenta"];8951[label="vuz354",fontsize=16,color="green",shape="box"];9866 -> 9987[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9866[label="abs (Neg vuz3190 * Neg vuz3170) == fromInt (Pos Zero)",fontsize=16,color="magenta"];9866 -> 10008[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9867[label="vuz360",fontsize=16,color="green",shape="box"];9868 -> 9857[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9868[label="abs (Pos vuz361)",fontsize=16,color="magenta"];9868 -> 10038[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9869 -> 9376[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9869[label="abs (Neg vuz3190 * Neg vuz3170)",fontsize=16,color="magenta"];8953[label="vuz360",fontsize=16,color="green",shape="box"];8954[label="vuz369",fontsize=16,color="green",shape="box"];8955[label="vuz481",fontsize=16,color="green",shape="box"];7494[label="primEqInt (Pos (Succ vuz3250)) (fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];7494 -> 7519[label="",style="solid", color="black", weight=3]; 67.72/34.80 7495[label="primEqInt (Pos Zero) (fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];7495 -> 7520[label="",style="solid", color="black", weight=3]; 67.72/34.80 8956[label="primQuotInt (Pos vuz366) (gcd0 (Pos vuz505) (Pos vuz367))",fontsize=16,color="black",shape="triangle"];8956 -> 8986[label="",style="solid", color="black", weight=3]; 67.72/34.80 8957 -> 8987[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8957[label="primQuotInt (Pos vuz366) (gcd1 (Pos vuz367 == fromInt (Pos Zero)) (Pos vuz505) (Pos vuz367))",fontsize=16,color="magenta"];8957 -> 8988[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8958 -> 8615[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8958[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primMinusNat vuz3690 vuz4830) (fromInt (Pos Zero))) (primMinusNat vuz3690 vuz4830) (Pos vuz367))",fontsize=16,color="magenta"];8958 -> 8989[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8958 -> 8990[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8959 -> 8790[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8959[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (Pos (Succ vuz3690)) (fromInt (Pos Zero))) (Pos (Succ vuz3690)) (Pos vuz367))",fontsize=16,color="magenta"];8959 -> 8991[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8959 -> 8992[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8960 -> 8799[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8960[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (Neg (Succ vuz4830)) (fromInt (Pos Zero))) (Neg (Succ vuz4830)) (Pos vuz367))",fontsize=16,color="magenta"];8960 -> 8993[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8960 -> 8994[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8960 -> 8995[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8960 -> 8996[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8961 -> 8790[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8961[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (Pos Zero) (fromInt (Pos Zero))) (Pos Zero) (Pos vuz367))",fontsize=16,color="magenta"];8961 -> 8997[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8961 -> 8998[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8962[label="vuz373",fontsize=16,color="green",shape="box"];8963[label="vuz487",fontsize=16,color="green",shape="box"];7512[label="primEqInt (Neg (Succ vuz3260)) (fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];7512 -> 7526[label="",style="solid", color="black", weight=3]; 67.72/34.80 7513[label="primEqInt (Neg Zero) (fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];7513 -> 7527[label="",style="solid", color="black", weight=3]; 67.72/34.80 8964[label="primQuotInt (Pos vuz370) (gcd0 (Neg vuz508) (Pos vuz371))",fontsize=16,color="black",shape="triangle"];8964 -> 8999[label="",style="solid", color="black", weight=3]; 67.72/34.80 8965 -> 9000[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8965[label="primQuotInt (Pos vuz370) (gcd1 (Pos vuz371 == fromInt (Pos Zero)) (Neg vuz508) (Pos vuz371))",fontsize=16,color="magenta"];8965 -> 9001[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8966 -> 8630[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8966[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primMinusNat vuz4890 vuz3770) (fromInt (Pos Zero))) (primMinusNat vuz4890 vuz3770) (Neg vuz375))",fontsize=16,color="magenta"];8966 -> 9002[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8966 -> 9003[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8967 -> 8807[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8967[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (Pos (Succ vuz4890)) (fromInt (Pos Zero))) (Pos (Succ vuz4890)) (Neg vuz375))",fontsize=16,color="magenta"];8967 -> 9004[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8967 -> 9005[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8967 -> 9006[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8967 -> 9007[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8968 -> 8804[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8968[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (Neg (Succ vuz3770)) (fromInt (Pos Zero))) (Neg (Succ vuz3770)) (Neg vuz375))",fontsize=16,color="magenta"];8968 -> 9008[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8968 -> 9009[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8969 -> 8807[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8969[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (Pos Zero) (fromInt (Pos Zero))) (Pos Zero) (Neg vuz375))",fontsize=16,color="magenta"];8969 -> 9010[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8969 -> 9011[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8969 -> 9012[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8969 -> 9013[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8970[label="vuz377",fontsize=16,color="green",shape="box"];8971[label="vuz491",fontsize=16,color="green",shape="box"];8972[label="primQuotInt (Neg vuz374) (gcd0 (Neg vuz511) (Neg vuz375))",fontsize=16,color="black",shape="triangle"];8972 -> 9014[label="",style="solid", color="black", weight=3]; 67.72/34.80 8973 -> 9015[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8973[label="primQuotInt (Neg vuz374) (gcd1 (Neg vuz375 == fromInt (Pos Zero)) (Neg vuz511) (Neg vuz375))",fontsize=16,color="magenta"];8973 -> 9016[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8974[label="vuz381",fontsize=16,color="green",shape="box"];8975[label="vuz493",fontsize=16,color="green",shape="box"];8976[label="primQuotInt (Neg vuz378) (gcd0 (Pos vuz514) (Neg vuz379))",fontsize=16,color="black",shape="triangle"];8976 -> 9017[label="",style="solid", color="black", weight=3]; 67.72/34.80 8977 -> 9018[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8977[label="primQuotInt (Neg vuz378) (gcd1 (Neg vuz379 == fromInt (Pos Zero)) (Pos vuz514) (Neg vuz379))",fontsize=16,color="magenta"];8977 -> 9019[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10005 -> 9366[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10005[label="abs (Pos vuz3190 * Pos vuz3170)",fontsize=16,color="magenta"];10033[label="absReal (Pos vuz399)",fontsize=16,color="black",shape="box"];10033 -> 10182[label="",style="solid", color="black", weight=3]; 67.72/34.80 9366[label="abs (Pos vuz3190 * Pos vuz3170)",fontsize=16,color="black",shape="triangle"];9366 -> 9585[label="",style="solid", color="black", weight=3]; 67.72/34.80 10034[label="primQuotInt (Pos vuz416) (gcd0Gcd'1 False vuz549 vuz542)",fontsize=16,color="black",shape="box"];10034 -> 10183[label="",style="solid", color="black", weight=3]; 67.72/34.80 10035[label="primQuotInt (Pos vuz416) (gcd0Gcd'1 True vuz549 vuz542)",fontsize=16,color="black",shape="box"];10035 -> 10184[label="",style="solid", color="black", weight=3]; 67.72/34.80 10006 -> 9369[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10006[label="abs (Neg vuz3190 * Pos vuz3170)",fontsize=16,color="magenta"];10036[label="vuz417",fontsize=16,color="green",shape="box"];9369[label="abs (Neg vuz3190 * Pos vuz3170)",fontsize=16,color="black",shape="triangle"];9369 -> 9588[label="",style="solid", color="black", weight=3]; 67.72/34.80 9376[label="abs (Neg vuz3190 * Neg vuz3170)",fontsize=16,color="black",shape="triangle"];9376 -> 9590[label="",style="solid", color="black", weight=3]; 67.72/34.80 10172[label="absReal (Neg vuz427)",fontsize=16,color="black",shape="box"];10172 -> 10202[label="",style="solid", color="black", weight=3]; 67.72/34.80 10173 -> 9376[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10173[label="abs (Neg vuz3190 * Neg vuz3170)",fontsize=16,color="magenta"];10174[label="primQuotInt (Neg vuz428) (gcd0Gcd'1 False vuz552 vuz544)",fontsize=16,color="black",shape="box"];10174 -> 10203[label="",style="solid", color="black", weight=3]; 67.72/34.80 10175[label="primQuotInt (Neg vuz428) (gcd0Gcd'1 True vuz552 vuz544)",fontsize=16,color="black",shape="box"];10175 -> 10204[label="",style="solid", color="black", weight=3]; 67.72/34.80 9372[label="abs (Pos vuz3190 * Neg vuz3170)",fontsize=16,color="black",shape="triangle"];9372 -> 9589[label="",style="solid", color="black", weight=3]; 67.72/34.80 10176[label="vuz429",fontsize=16,color="green",shape="box"];10177 -> 9372[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10177[label="abs (Pos vuz3190 * Neg vuz3170)",fontsize=16,color="magenta"];10178[label="vuz447",fontsize=16,color="green",shape="box"];10179 -> 9369[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10179[label="abs (Neg vuz3190 * Pos vuz3170)",fontsize=16,color="magenta"];10180[label="vuz349",fontsize=16,color="green",shape="box"];10181 -> 9366[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10181[label="abs (Pos vuz3190 * Pos vuz3170)",fontsize=16,color="magenta"];10007 -> 9372[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10007[label="abs (Pos vuz3190 * Neg vuz3170)",fontsize=16,color="magenta"];10037[label="vuz355",fontsize=16,color="green",shape="box"];10008 -> 9376[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10008[label="abs (Neg vuz3190 * Neg vuz3170)",fontsize=16,color="magenta"];10038[label="vuz361",fontsize=16,color="green",shape="box"];8986[label="primQuotInt (Pos vuz366) (gcd0Gcd' (abs (Pos vuz505)) (abs (Pos vuz367)))",fontsize=16,color="black",shape="box"];8986 -> 9028[label="",style="solid", color="black", weight=3]; 67.72/34.80 8988 -> 9987[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8988[label="Pos vuz367 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8988 -> 10009[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8987[label="primQuotInt (Pos vuz366) (gcd1 vuz516 (Pos vuz505) (Pos vuz367))",fontsize=16,color="burlywood",shape="triangle"];11091[label="vuz516/False",fontsize=10,color="white",style="solid",shape="box"];8987 -> 11091[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11091 -> 9030[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11092[label="vuz516/True",fontsize=10,color="white",style="solid",shape="box"];8987 -> 11092[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11092 -> 9031[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 8989[label="vuz3690",fontsize=16,color="green",shape="box"];8990[label="vuz4830",fontsize=16,color="green",shape="box"];8991[label="Succ vuz3690",fontsize=16,color="green",shape="box"];8992 -> 7479[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8992[label="primEqInt (Pos (Succ vuz3690)) (fromInt (Pos Zero))",fontsize=16,color="magenta"];8992 -> 9032[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8993 -> 7498[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8993[label="primEqInt (Neg (Succ vuz4830)) (fromInt (Pos Zero))",fontsize=16,color="magenta"];8993 -> 9033[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8994[label="Succ vuz4830",fontsize=16,color="green",shape="box"];8995[label="vuz366",fontsize=16,color="green",shape="box"];8996[label="vuz367",fontsize=16,color="green",shape="box"];8997[label="Zero",fontsize=16,color="green",shape="box"];8998 -> 7479[label="",style="dashed", color="red", weight=0]; 67.72/34.80 8998[label="primEqInt (Pos Zero) (fromInt (Pos Zero))",fontsize=16,color="magenta"];8998 -> 9034[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 8999[label="primQuotInt (Pos vuz370) (gcd0Gcd' (abs (Neg vuz508)) (abs (Pos vuz371)))",fontsize=16,color="black",shape="box"];8999 -> 9035[label="",style="solid", color="black", weight=3]; 67.72/34.80 9001 -> 9987[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9001[label="Pos vuz371 == fromInt (Pos Zero)",fontsize=16,color="magenta"];9001 -> 10010[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9000[label="primQuotInt (Pos vuz370) (gcd1 vuz517 (Neg vuz508) (Pos vuz371))",fontsize=16,color="burlywood",shape="triangle"];11093[label="vuz517/False",fontsize=10,color="white",style="solid",shape="box"];9000 -> 11093[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11093 -> 9037[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11094[label="vuz517/True",fontsize=10,color="white",style="solid",shape="box"];9000 -> 11094[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11094 -> 9038[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 9002[label="vuz4890",fontsize=16,color="green",shape="box"];9003[label="vuz3770",fontsize=16,color="green",shape="box"];9004[label="vuz375",fontsize=16,color="green",shape="box"];9005 -> 7479[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9005[label="primEqInt (Pos (Succ vuz4890)) (fromInt (Pos Zero))",fontsize=16,color="magenta"];9005 -> 9039[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9006[label="Succ vuz4890",fontsize=16,color="green",shape="box"];9007[label="vuz374",fontsize=16,color="green",shape="box"];9008 -> 7498[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9008[label="primEqInt (Neg (Succ vuz3770)) (fromInt (Pos Zero))",fontsize=16,color="magenta"];9008 -> 9040[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9009[label="Succ vuz3770",fontsize=16,color="green",shape="box"];9010[label="vuz375",fontsize=16,color="green",shape="box"];9011 -> 7479[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9011[label="primEqInt (Pos Zero) (fromInt (Pos Zero))",fontsize=16,color="magenta"];9011 -> 9041[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9012[label="Zero",fontsize=16,color="green",shape="box"];9013[label="vuz374",fontsize=16,color="green",shape="box"];9014[label="primQuotInt (Neg vuz374) (gcd0Gcd' (abs (Neg vuz511)) (abs (Neg vuz375)))",fontsize=16,color="black",shape="box"];9014 -> 9042[label="",style="solid", color="black", weight=3]; 67.72/34.80 9016 -> 9987[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9016[label="Neg vuz375 == fromInt (Pos Zero)",fontsize=16,color="magenta"];9016 -> 10011[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9015[label="primQuotInt (Neg vuz374) (gcd1 vuz518 (Neg vuz511) (Neg vuz375))",fontsize=16,color="burlywood",shape="triangle"];11095[label="vuz518/False",fontsize=10,color="white",style="solid",shape="box"];9015 -> 11095[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11095 -> 9044[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11096[label="vuz518/True",fontsize=10,color="white",style="solid",shape="box"];9015 -> 11096[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11096 -> 9045[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 9017[label="primQuotInt (Neg vuz378) (gcd0Gcd' (abs (Pos vuz514)) (abs (Neg vuz379)))",fontsize=16,color="black",shape="box"];9017 -> 9046[label="",style="solid", color="black", weight=3]; 67.72/34.80 9019 -> 9987[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9019[label="Neg vuz379 == fromInt (Pos Zero)",fontsize=16,color="magenta"];9019 -> 10012[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9018[label="primQuotInt (Neg vuz378) (gcd1 vuz519 (Pos vuz514) (Neg vuz379))",fontsize=16,color="burlywood",shape="triangle"];11097[label="vuz519/False",fontsize=10,color="white",style="solid",shape="box"];9018 -> 11097[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11097 -> 9048[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11098[label="vuz519/True",fontsize=10,color="white",style="solid",shape="box"];9018 -> 11098[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11098 -> 9049[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 10182[label="absReal2 (Pos vuz399)",fontsize=16,color="black",shape="box"];10182 -> 10205[label="",style="solid", color="black", weight=3]; 67.72/34.80 9585[label="absReal (Pos vuz3190 * Pos vuz3170)",fontsize=16,color="black",shape="box"];9585 -> 9817[label="",style="solid", color="black", weight=3]; 67.72/34.80 10183[label="primQuotInt (Pos vuz416) (gcd0Gcd'0 vuz549 vuz542)",fontsize=16,color="black",shape="box"];10183 -> 10206[label="",style="solid", color="black", weight=3]; 67.72/34.80 10184[label="primQuotInt (Pos vuz416) vuz549",fontsize=16,color="burlywood",shape="triangle"];11099[label="vuz549/Pos vuz5490",fontsize=10,color="white",style="solid",shape="box"];10184 -> 11099[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11099 -> 10207[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11100[label="vuz549/Neg vuz5490",fontsize=10,color="white",style="solid",shape="box"];10184 -> 11100[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11100 -> 10208[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 9588[label="absReal (Neg vuz3190 * Pos vuz3170)",fontsize=16,color="black",shape="box"];9588 -> 9822[label="",style="solid", color="black", weight=3]; 67.72/34.80 9590[label="absReal (Neg vuz3190 * Neg vuz3170)",fontsize=16,color="black",shape="box"];9590 -> 9824[label="",style="solid", color="black", weight=3]; 67.72/34.80 10202[label="absReal2 (Neg vuz427)",fontsize=16,color="black",shape="box"];10202 -> 10246[label="",style="solid", color="black", weight=3]; 67.72/34.80 10203[label="primQuotInt (Neg vuz428) (gcd0Gcd'0 vuz552 vuz544)",fontsize=16,color="black",shape="box"];10203 -> 10247[label="",style="solid", color="black", weight=3]; 67.72/34.80 10204[label="primQuotInt (Neg vuz428) vuz552",fontsize=16,color="burlywood",shape="triangle"];11101[label="vuz552/Pos vuz5520",fontsize=10,color="white",style="solid",shape="box"];10204 -> 11101[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11101 -> 10248[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11102[label="vuz552/Neg vuz5520",fontsize=10,color="white",style="solid",shape="box"];10204 -> 11102[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11102 -> 10249[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 9589[label="absReal (Pos vuz3190 * Neg vuz3170)",fontsize=16,color="black",shape="box"];9589 -> 9823[label="",style="solid", color="black", weight=3]; 67.72/34.80 9028[label="primQuotInt (Pos vuz366) (gcd0Gcd'2 (abs (Pos vuz505)) (abs (Pos vuz367)))",fontsize=16,color="black",shape="box"];9028 -> 9058[label="",style="solid", color="black", weight=3]; 67.72/34.80 10009[label="Pos vuz367",fontsize=16,color="green",shape="box"];9030[label="primQuotInt (Pos vuz366) (gcd1 False (Pos vuz505) (Pos vuz367))",fontsize=16,color="black",shape="box"];9030 -> 9059[label="",style="solid", color="black", weight=3]; 67.72/34.80 9031[label="primQuotInt (Pos vuz366) (gcd1 True (Pos vuz505) (Pos vuz367))",fontsize=16,color="black",shape="box"];9031 -> 9060[label="",style="solid", color="black", weight=3]; 67.72/34.80 9032[label="Succ vuz3690",fontsize=16,color="green",shape="box"];9033[label="Succ vuz4830",fontsize=16,color="green",shape="box"];9034[label="Zero",fontsize=16,color="green",shape="box"];9035[label="primQuotInt (Pos vuz370) (gcd0Gcd'2 (abs (Neg vuz508)) (abs (Pos vuz371)))",fontsize=16,color="black",shape="box"];9035 -> 9061[label="",style="solid", color="black", weight=3]; 67.72/34.80 10010[label="Pos vuz371",fontsize=16,color="green",shape="box"];9037[label="primQuotInt (Pos vuz370) (gcd1 False (Neg vuz508) (Pos vuz371))",fontsize=16,color="black",shape="box"];9037 -> 9062[label="",style="solid", color="black", weight=3]; 67.72/34.80 9038[label="primQuotInt (Pos vuz370) (gcd1 True (Neg vuz508) (Pos vuz371))",fontsize=16,color="black",shape="box"];9038 -> 9063[label="",style="solid", color="black", weight=3]; 67.72/34.80 9039[label="Succ vuz4890",fontsize=16,color="green",shape="box"];9040[label="Succ vuz3770",fontsize=16,color="green",shape="box"];9041[label="Zero",fontsize=16,color="green",shape="box"];9042[label="primQuotInt (Neg vuz374) (gcd0Gcd'2 (abs (Neg vuz511)) (abs (Neg vuz375)))",fontsize=16,color="black",shape="box"];9042 -> 9064[label="",style="solid", color="black", weight=3]; 67.72/34.80 10011[label="Neg vuz375",fontsize=16,color="green",shape="box"];9044[label="primQuotInt (Neg vuz374) (gcd1 False (Neg vuz511) (Neg vuz375))",fontsize=16,color="black",shape="box"];9044 -> 9065[label="",style="solid", color="black", weight=3]; 67.72/34.80 9045[label="primQuotInt (Neg vuz374) (gcd1 True (Neg vuz511) (Neg vuz375))",fontsize=16,color="black",shape="box"];9045 -> 9066[label="",style="solid", color="black", weight=3]; 67.72/34.80 9046[label="primQuotInt (Neg vuz378) (gcd0Gcd'2 (abs (Pos vuz514)) (abs (Neg vuz379)))",fontsize=16,color="black",shape="box"];9046 -> 9067[label="",style="solid", color="black", weight=3]; 67.72/34.80 10012[label="Neg vuz379",fontsize=16,color="green",shape="box"];9048[label="primQuotInt (Neg vuz378) (gcd1 False (Pos vuz514) (Neg vuz379))",fontsize=16,color="black",shape="box"];9048 -> 9068[label="",style="solid", color="black", weight=3]; 67.72/34.80 9049[label="primQuotInt (Neg vuz378) (gcd1 True (Pos vuz514) (Neg vuz379))",fontsize=16,color="black",shape="box"];9049 -> 9069[label="",style="solid", color="black", weight=3]; 67.72/34.80 10205 -> 10185[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10205[label="absReal1 (Pos vuz399) (Pos vuz399 >= fromInt (Pos Zero))",fontsize=16,color="magenta"];10205 -> 10250[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10205 -> 10251[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9817[label="absReal2 (Pos vuz3190 * Pos vuz3170)",fontsize=16,color="black",shape="box"];9817 -> 9834[label="",style="solid", color="black", weight=3]; 67.72/34.80 10206 -> 10184[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10206[label="primQuotInt (Pos vuz416) (gcd0Gcd' vuz542 (vuz549 `rem` vuz542))",fontsize=16,color="magenta"];10206 -> 10252[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10207[label="primQuotInt (Pos vuz416) (Pos vuz5490)",fontsize=16,color="burlywood",shape="box"];11103[label="vuz5490/Succ vuz54900",fontsize=10,color="white",style="solid",shape="box"];10207 -> 11103[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11103 -> 10253[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11104[label="vuz5490/Zero",fontsize=10,color="white",style="solid",shape="box"];10207 -> 11104[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11104 -> 10254[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 10208[label="primQuotInt (Pos vuz416) (Neg vuz5490)",fontsize=16,color="burlywood",shape="box"];11105[label="vuz5490/Succ vuz54900",fontsize=10,color="white",style="solid",shape="box"];10208 -> 11105[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11105 -> 10255[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11106[label="vuz5490/Zero",fontsize=10,color="white",style="solid",shape="box"];10208 -> 11106[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11106 -> 10256[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 9822[label="absReal2 (Neg vuz3190 * Pos vuz3170)",fontsize=16,color="black",shape="box"];9822 -> 9839[label="",style="solid", color="black", weight=3]; 67.72/34.80 9824[label="absReal2 (Neg vuz3190 * Neg vuz3170)",fontsize=16,color="black",shape="box"];9824 -> 9841[label="",style="solid", color="black", weight=3]; 67.72/34.80 10246 -> 10185[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10246[label="absReal1 (Neg vuz427) (Neg vuz427 >= fromInt (Pos Zero))",fontsize=16,color="magenta"];10246 -> 10266[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10246 -> 10267[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10247 -> 10204[label="",style="dashed", color="red", weight=0]; 67.72/34.80 10247[label="primQuotInt (Neg vuz428) (gcd0Gcd' vuz544 (vuz552 `rem` vuz544))",fontsize=16,color="magenta"];10247 -> 10268[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10248[label="primQuotInt (Neg vuz428) (Pos vuz5520)",fontsize=16,color="burlywood",shape="box"];11107[label="vuz5520/Succ vuz55200",fontsize=10,color="white",style="solid",shape="box"];10248 -> 11107[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11107 -> 10269[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11108[label="vuz5520/Zero",fontsize=10,color="white",style="solid",shape="box"];10248 -> 11108[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11108 -> 10270[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 10249[label="primQuotInt (Neg vuz428) (Neg vuz5520)",fontsize=16,color="burlywood",shape="box"];11109[label="vuz5520/Succ vuz55200",fontsize=10,color="white",style="solid",shape="box"];10249 -> 11109[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11109 -> 10271[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 11110[label="vuz5520/Zero",fontsize=10,color="white",style="solid",shape="box"];10249 -> 11110[label="",style="solid", color="burlywood", weight=9]; 67.72/34.80 11110 -> 10272[label="",style="solid", color="burlywood", weight=3]; 67.72/34.80 9823[label="absReal2 (Pos vuz3190 * Neg vuz3170)",fontsize=16,color="black",shape="box"];9823 -> 9840[label="",style="solid", color="black", weight=3]; 67.72/34.80 9058 -> 9854[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9058[label="primQuotInt (Pos vuz366) (gcd0Gcd'1 (abs (Pos vuz367) == fromInt (Pos Zero)) (abs (Pos vuz505)) (abs (Pos vuz367)))",fontsize=16,color="magenta"];9058 -> 9887[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9058 -> 9888[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9058 -> 9889[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9058 -> 9890[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9059 -> 8956[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9059[label="primQuotInt (Pos vuz366) (gcd0 (Pos vuz505) (Pos vuz367))",fontsize=16,color="magenta"];9060 -> 8816[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9060[label="primQuotInt (Pos vuz366) (error [])",fontsize=16,color="magenta"];9060 -> 9079[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9061 -> 9854[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9061[label="primQuotInt (Pos vuz370) (gcd0Gcd'1 (abs (Pos vuz371) == fromInt (Pos Zero)) (abs (Neg vuz508)) (abs (Pos vuz371)))",fontsize=16,color="magenta"];9061 -> 9891[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9061 -> 9892[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9061 -> 9893[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9061 -> 9894[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9062 -> 8964[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9062[label="primQuotInt (Pos vuz370) (gcd0 (Neg vuz508) (Pos vuz371))",fontsize=16,color="magenta"];9063 -> 8816[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9063[label="primQuotInt (Pos vuz370) (error [])",fontsize=16,color="magenta"];9063 -> 9081[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9064 -> 10039[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9064[label="primQuotInt (Neg vuz374) (gcd0Gcd'1 (abs (Neg vuz375) == fromInt (Pos Zero)) (abs (Neg vuz511)) (abs (Neg vuz375)))",fontsize=16,color="magenta"];9064 -> 10072[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9064 -> 10073[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9064 -> 10074[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9064 -> 10075[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9065 -> 8972[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9065[label="primQuotInt (Neg vuz374) (gcd0 (Neg vuz511) (Neg vuz375))",fontsize=16,color="magenta"];9066 -> 8849[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9066[label="primQuotInt (Neg vuz374) (error [])",fontsize=16,color="magenta"];9066 -> 9083[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9067 -> 10039[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9067[label="primQuotInt (Neg vuz378) (gcd0Gcd'1 (abs (Neg vuz379) == fromInt (Pos Zero)) (abs (Pos vuz514)) (abs (Neg vuz379)))",fontsize=16,color="magenta"];9067 -> 10076[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9067 -> 10077[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9067 -> 10078[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9067 -> 10079[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9068 -> 8976[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9068[label="primQuotInt (Neg vuz378) (gcd0 (Pos vuz514) (Neg vuz379))",fontsize=16,color="magenta"];9069 -> 8849[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9069[label="primQuotInt (Neg vuz378) (error [])",fontsize=16,color="magenta"];9069 -> 9085[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10250[label="Pos vuz399",fontsize=16,color="green",shape="box"];10251[label="Pos vuz399",fontsize=16,color="green",shape="box"];10185[label="absReal1 vuz554 (vuz555 >= fromInt (Pos Zero))",fontsize=16,color="black",shape="triangle"];10185 -> 10223[label="",style="solid", color="black", weight=3]; 67.72/34.80 9834 -> 10185[label="",style="dashed", color="red", weight=0]; 67.72/34.80 9834[label="absReal1 (Pos vuz3190 * Pos vuz3170) (Pos vuz3190 * Pos vuz3170 >= fromInt (Pos Zero))",fontsize=16,color="magenta"];9834 -> 10186[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 9834 -> 10187[label="",style="dashed", color="magenta", weight=3]; 67.72/34.80 10252[label="gcd0Gcd' vuz542 (vuz549 `rem` vuz542)",fontsize=16,color="black",shape="triangle"];10252 -> 10273[label="",style="solid", color="black", weight=3]; 67.72/34.80 10253[label="primQuotInt (Pos vuz416) (Pos (Succ vuz54900))",fontsize=16,color="black",shape="box"];10253 -> 10274[label="",style="solid", color="black", weight=3]; 67.72/34.80 10254[label="primQuotInt (Pos vuz416) (Pos Zero)",fontsize=16,color="black",shape="box"];10254 -> 10275[label="",style="solid", color="black", weight=3]; 67.72/34.80 10255[label="primQuotInt (Pos vuz416) (Neg (Succ vuz54900))",fontsize=16,color="black",shape="box"];10255 -> 10276[label="",style="solid", color="black", weight=3]; 67.72/34.80 10256[label="primQuotInt (Pos vuz416) (Neg Zero)",fontsize=16,color="black",shape="box"];10256 -> 10277[label="",style="solid", color="black", weight=3]; 67.72/34.80 9839 -> 10185[label="",style="dashed", color="red", weight=0]; 67.72/34.81 9839[label="absReal1 (Neg vuz3190 * Pos vuz3170) (Neg vuz3190 * Pos vuz3170 >= fromInt (Pos Zero))",fontsize=16,color="magenta"];9839 -> 10188[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 9839 -> 10189[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 9841 -> 10185[label="",style="dashed", color="red", weight=0]; 67.72/34.81 9841[label="absReal1 (Neg vuz3190 * Neg vuz3170) (Neg vuz3190 * Neg vuz3170 >= fromInt (Pos Zero))",fontsize=16,color="magenta"];9841 -> 10190[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 9841 -> 10191[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10266[label="Neg vuz427",fontsize=16,color="green",shape="box"];10267[label="Neg vuz427",fontsize=16,color="green",shape="box"];10268 -> 10252[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10268[label="gcd0Gcd' vuz544 (vuz552 `rem` vuz544)",fontsize=16,color="magenta"];10268 -> 10283[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10268 -> 10284[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10269[label="primQuotInt (Neg vuz428) (Pos (Succ vuz55200))",fontsize=16,color="black",shape="box"];10269 -> 10285[label="",style="solid", color="black", weight=3]; 67.72/34.81 10270[label="primQuotInt (Neg vuz428) (Pos Zero)",fontsize=16,color="black",shape="box"];10270 -> 10286[label="",style="solid", color="black", weight=3]; 67.72/34.81 10271[label="primQuotInt (Neg vuz428) (Neg (Succ vuz55200))",fontsize=16,color="black",shape="box"];10271 -> 10287[label="",style="solid", color="black", weight=3]; 67.72/34.81 10272[label="primQuotInt (Neg vuz428) (Neg Zero)",fontsize=16,color="black",shape="box"];10272 -> 10288[label="",style="solid", color="black", weight=3]; 67.72/34.81 9840 -> 10185[label="",style="dashed", color="red", weight=0]; 67.72/34.81 9840[label="absReal1 (Pos vuz3190 * Neg vuz3170) (Pos vuz3190 * Neg vuz3170 >= fromInt (Pos Zero))",fontsize=16,color="magenta"];9840 -> 10192[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 9840 -> 10193[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 9887 -> 9987[label="",style="dashed", color="red", weight=0]; 67.72/34.81 9887[label="abs (Pos vuz367) == fromInt (Pos Zero)",fontsize=16,color="magenta"];9887 -> 10013[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 9888[label="vuz366",fontsize=16,color="green",shape="box"];9889 -> 9857[label="",style="dashed", color="red", weight=0]; 67.72/34.81 9889[label="abs (Pos vuz505)",fontsize=16,color="magenta"];9889 -> 10209[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 9890 -> 9857[label="",style="dashed", color="red", weight=0]; 67.72/34.81 9890[label="abs (Pos vuz367)",fontsize=16,color="magenta"];9890 -> 10210[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 9079[label="vuz366",fontsize=16,color="green",shape="box"];9891 -> 9987[label="",style="dashed", color="red", weight=0]; 67.72/34.81 9891[label="abs (Pos vuz371) == fromInt (Pos Zero)",fontsize=16,color="magenta"];9891 -> 10014[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 9892[label="vuz370",fontsize=16,color="green",shape="box"];9893 -> 10042[label="",style="dashed", color="red", weight=0]; 67.72/34.81 9893[label="abs (Neg vuz508)",fontsize=16,color="magenta"];9893 -> 10211[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 9894 -> 9857[label="",style="dashed", color="red", weight=0]; 67.72/34.81 9894[label="abs (Pos vuz371)",fontsize=16,color="magenta"];9894 -> 10212[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 9081[label="vuz370",fontsize=16,color="green",shape="box"];10072[label="vuz374",fontsize=16,color="green",shape="box"];10073 -> 10042[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10073[label="abs (Neg vuz375)",fontsize=16,color="magenta"];10073 -> 10213[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10074 -> 10042[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10074[label="abs (Neg vuz511)",fontsize=16,color="magenta"];10074 -> 10214[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10075 -> 9987[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10075[label="abs (Neg vuz375) == fromInt (Pos Zero)",fontsize=16,color="magenta"];10075 -> 10215[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 9083[label="vuz374",fontsize=16,color="green",shape="box"];10076[label="vuz378",fontsize=16,color="green",shape="box"];10077 -> 10042[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10077[label="abs (Neg vuz379)",fontsize=16,color="magenta"];10077 -> 10216[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10078 -> 9857[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10078[label="abs (Pos vuz514)",fontsize=16,color="magenta"];10078 -> 10217[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10079 -> 9987[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10079[label="abs (Neg vuz379) == fromInt (Pos Zero)",fontsize=16,color="magenta"];10079 -> 10218[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 9085[label="vuz378",fontsize=16,color="green",shape="box"];10223[label="absReal1 vuz554 (compare vuz555 (fromInt (Pos Zero)) /= LT)",fontsize=16,color="black",shape="box"];10223 -> 10259[label="",style="solid", color="black", weight=3]; 67.72/34.81 10186 -> 9988[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10186[label="Pos vuz3190 * Pos vuz3170",fontsize=16,color="magenta"];10186 -> 10219[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10186 -> 10220[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10187 -> 9988[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10187[label="Pos vuz3190 * Pos vuz3170",fontsize=16,color="magenta"];10187 -> 10221[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10187 -> 10222[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10273[label="gcd0Gcd'2 vuz542 (vuz549 `rem` vuz542)",fontsize=16,color="black",shape="box"];10273 -> 10289[label="",style="solid", color="black", weight=3]; 67.72/34.81 10274[label="Pos (primDivNatS vuz416 (Succ vuz54900))",fontsize=16,color="green",shape="box"];10274 -> 10290[label="",style="dashed", color="green", weight=3]; 67.72/34.81 10275[label="error []",fontsize=16,color="black",shape="triangle"];10275 -> 10291[label="",style="solid", color="black", weight=3]; 67.72/34.81 10276[label="Neg (primDivNatS vuz416 (Succ vuz54900))",fontsize=16,color="green",shape="box"];10276 -> 10292[label="",style="dashed", color="green", weight=3]; 67.72/34.81 10277 -> 10275[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10277[label="error []",fontsize=16,color="magenta"];10188 -> 9988[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10188[label="Neg vuz3190 * Pos vuz3170",fontsize=16,color="magenta"];10188 -> 10224[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10188 -> 10225[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10189 -> 9988[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10189[label="Neg vuz3190 * Pos vuz3170",fontsize=16,color="magenta"];10189 -> 10226[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10189 -> 10227[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10190 -> 9988[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10190[label="Neg vuz3190 * Neg vuz3170",fontsize=16,color="magenta"];10190 -> 10228[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10190 -> 10229[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10191 -> 9988[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10191[label="Neg vuz3190 * Neg vuz3170",fontsize=16,color="magenta"];10191 -> 10230[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10191 -> 10231[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10283[label="vuz552",fontsize=16,color="green",shape="box"];10284[label="vuz544",fontsize=16,color="green",shape="box"];10285[label="Neg (primDivNatS vuz428 (Succ vuz55200))",fontsize=16,color="green",shape="box"];10285 -> 10295[label="",style="dashed", color="green", weight=3]; 67.72/34.81 10286 -> 10275[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10286[label="error []",fontsize=16,color="magenta"];10287[label="Pos (primDivNatS vuz428 (Succ vuz55200))",fontsize=16,color="green",shape="box"];10287 -> 10296[label="",style="dashed", color="green", weight=3]; 67.72/34.81 10288 -> 10275[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10288[label="error []",fontsize=16,color="magenta"];10192 -> 9988[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10192[label="Pos vuz3190 * Neg vuz3170",fontsize=16,color="magenta"];10192 -> 10232[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10192 -> 10233[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10193 -> 9988[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10193[label="Pos vuz3190 * Neg vuz3170",fontsize=16,color="magenta"];10193 -> 10234[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10193 -> 10235[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10013 -> 9857[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10013[label="abs (Pos vuz367)",fontsize=16,color="magenta"];10013 -> 10236[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10209[label="vuz505",fontsize=16,color="green",shape="box"];10210[label="vuz367",fontsize=16,color="green",shape="box"];10014 -> 9857[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10014[label="abs (Pos vuz371)",fontsize=16,color="magenta"];10014 -> 10237[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10211[label="vuz508",fontsize=16,color="green",shape="box"];10212[label="vuz371",fontsize=16,color="green",shape="box"];10213[label="vuz375",fontsize=16,color="green",shape="box"];10214[label="vuz511",fontsize=16,color="green",shape="box"];10215 -> 10042[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10215[label="abs (Neg vuz375)",fontsize=16,color="magenta"];10215 -> 10257[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10216[label="vuz379",fontsize=16,color="green",shape="box"];10217[label="vuz514",fontsize=16,color="green",shape="box"];10218 -> 10042[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10218[label="abs (Neg vuz379)",fontsize=16,color="magenta"];10218 -> 10258[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10259[label="absReal1 vuz554 (not (compare vuz555 (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];10259 -> 10278[label="",style="solid", color="black", weight=3]; 67.72/34.81 10219[label="Pos vuz3170",fontsize=16,color="green",shape="box"];10220[label="Pos vuz3190",fontsize=16,color="green",shape="box"];10221[label="Pos vuz3170",fontsize=16,color="green",shape="box"];10222[label="Pos vuz3190",fontsize=16,color="green",shape="box"];10289 -> 10297[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10289[label="gcd0Gcd'1 (vuz549 `rem` vuz542 == fromInt (Pos Zero)) vuz542 (vuz549 `rem` vuz542)",fontsize=16,color="magenta"];10289 -> 10298[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10290[label="primDivNatS vuz416 (Succ vuz54900)",fontsize=16,color="burlywood",shape="triangle"];11111[label="vuz416/Succ vuz4160",fontsize=10,color="white",style="solid",shape="box"];10290 -> 11111[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11111 -> 10299[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11112[label="vuz416/Zero",fontsize=10,color="white",style="solid",shape="box"];10290 -> 11112[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11112 -> 10300[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10291[label="error []",fontsize=16,color="red",shape="box"];10292 -> 10290[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10292[label="primDivNatS vuz416 (Succ vuz54900)",fontsize=16,color="magenta"];10292 -> 10301[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10224[label="Pos vuz3170",fontsize=16,color="green",shape="box"];10225[label="Neg vuz3190",fontsize=16,color="green",shape="box"];10226[label="Pos vuz3170",fontsize=16,color="green",shape="box"];10227[label="Neg vuz3190",fontsize=16,color="green",shape="box"];10228[label="Neg vuz3170",fontsize=16,color="green",shape="box"];10229[label="Neg vuz3190",fontsize=16,color="green",shape="box"];10230[label="Neg vuz3170",fontsize=16,color="green",shape="box"];10231[label="Neg vuz3190",fontsize=16,color="green",shape="box"];10295 -> 10290[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10295[label="primDivNatS vuz428 (Succ vuz55200)",fontsize=16,color="magenta"];10295 -> 10302[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10295 -> 10303[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10296 -> 10290[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10296[label="primDivNatS vuz428 (Succ vuz55200)",fontsize=16,color="magenta"];10296 -> 10304[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10296 -> 10305[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10232[label="Neg vuz3170",fontsize=16,color="green",shape="box"];10233[label="Pos vuz3190",fontsize=16,color="green",shape="box"];10234[label="Neg vuz3170",fontsize=16,color="green",shape="box"];10235[label="Pos vuz3190",fontsize=16,color="green",shape="box"];10236[label="vuz367",fontsize=16,color="green",shape="box"];10237[label="vuz371",fontsize=16,color="green",shape="box"];10257[label="vuz375",fontsize=16,color="green",shape="box"];10258[label="vuz379",fontsize=16,color="green",shape="box"];10278[label="absReal1 vuz554 (not (primCmpInt vuz555 (fromInt (Pos Zero)) == LT))",fontsize=16,color="burlywood",shape="box"];11113[label="vuz555/Pos vuz5550",fontsize=10,color="white",style="solid",shape="box"];10278 -> 11113[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11113 -> 10293[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11114[label="vuz555/Neg vuz5550",fontsize=10,color="white",style="solid",shape="box"];10278 -> 11114[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11114 -> 10294[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10298 -> 9987[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10298[label="vuz549 `rem` vuz542 == fromInt (Pos Zero)",fontsize=16,color="magenta"];10298 -> 10306[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10297[label="gcd0Gcd'1 vuz556 vuz542 (vuz549 `rem` vuz542)",fontsize=16,color="burlywood",shape="triangle"];11115[label="vuz556/False",fontsize=10,color="white",style="solid",shape="box"];10297 -> 11115[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11115 -> 10307[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11116[label="vuz556/True",fontsize=10,color="white",style="solid",shape="box"];10297 -> 11116[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11116 -> 10308[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10299[label="primDivNatS (Succ vuz4160) (Succ vuz54900)",fontsize=16,color="black",shape="box"];10299 -> 10313[label="",style="solid", color="black", weight=3]; 67.72/34.81 10300[label="primDivNatS Zero (Succ vuz54900)",fontsize=16,color="black",shape="box"];10300 -> 10314[label="",style="solid", color="black", weight=3]; 67.72/34.81 10301[label="vuz54900",fontsize=16,color="green",shape="box"];10302[label="vuz428",fontsize=16,color="green",shape="box"];10303[label="vuz55200",fontsize=16,color="green",shape="box"];10304[label="vuz428",fontsize=16,color="green",shape="box"];10305[label="vuz55200",fontsize=16,color="green",shape="box"];10293[label="absReal1 vuz554 (not (primCmpInt (Pos vuz5550) (fromInt (Pos Zero)) == LT))",fontsize=16,color="burlywood",shape="box"];11117[label="vuz5550/Succ vuz55500",fontsize=10,color="white",style="solid",shape="box"];10293 -> 11117[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11117 -> 10309[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11118[label="vuz5550/Zero",fontsize=10,color="white",style="solid",shape="box"];10293 -> 11118[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11118 -> 10310[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10294[label="absReal1 vuz554 (not (primCmpInt (Neg vuz5550) (fromInt (Pos Zero)) == LT))",fontsize=16,color="burlywood",shape="box"];11119[label="vuz5550/Succ vuz55500",fontsize=10,color="white",style="solid",shape="box"];10294 -> 11119[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11119 -> 10311[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11120[label="vuz5550/Zero",fontsize=10,color="white",style="solid",shape="box"];10294 -> 11120[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11120 -> 10312[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10306[label="vuz549 `rem` vuz542",fontsize=16,color="black",shape="triangle"];10306 -> 10315[label="",style="solid", color="black", weight=3]; 67.72/34.81 10307[label="gcd0Gcd'1 False vuz542 (vuz549 `rem` vuz542)",fontsize=16,color="black",shape="box"];10307 -> 10316[label="",style="solid", color="black", weight=3]; 67.72/34.81 10308[label="gcd0Gcd'1 True vuz542 (vuz549 `rem` vuz542)",fontsize=16,color="black",shape="box"];10308 -> 10317[label="",style="solid", color="black", weight=3]; 67.72/34.81 10313[label="primDivNatS0 vuz4160 vuz54900 (primGEqNatS vuz4160 vuz54900)",fontsize=16,color="burlywood",shape="box"];11121[label="vuz4160/Succ vuz41600",fontsize=10,color="white",style="solid",shape="box"];10313 -> 11121[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11121 -> 10322[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11122[label="vuz4160/Zero",fontsize=10,color="white",style="solid",shape="box"];10313 -> 11122[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11122 -> 10323[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10314[label="Zero",fontsize=16,color="green",shape="box"];10309[label="absReal1 vuz554 (not (primCmpInt (Pos (Succ vuz55500)) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];10309 -> 10318[label="",style="solid", color="black", weight=3]; 67.72/34.81 10310[label="absReal1 vuz554 (not (primCmpInt (Pos Zero) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];10310 -> 10319[label="",style="solid", color="black", weight=3]; 67.72/34.81 10311[label="absReal1 vuz554 (not (primCmpInt (Neg (Succ vuz55500)) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];10311 -> 10320[label="",style="solid", color="black", weight=3]; 67.72/34.81 10312[label="absReal1 vuz554 (not (primCmpInt (Neg Zero) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];10312 -> 10321[label="",style="solid", color="black", weight=3]; 67.72/34.81 10315[label="primRemInt vuz549 vuz542",fontsize=16,color="burlywood",shape="box"];11123[label="vuz549/Pos vuz5490",fontsize=10,color="white",style="solid",shape="box"];10315 -> 11123[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11123 -> 10324[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11124[label="vuz549/Neg vuz5490",fontsize=10,color="white",style="solid",shape="box"];10315 -> 11124[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11124 -> 10325[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10316 -> 10326[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10316[label="gcd0Gcd'0 vuz542 (vuz549 `rem` vuz542)",fontsize=16,color="magenta"];10316 -> 10327[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10317[label="vuz542",fontsize=16,color="green",shape="box"];10322[label="primDivNatS0 (Succ vuz41600) vuz54900 (primGEqNatS (Succ vuz41600) vuz54900)",fontsize=16,color="burlywood",shape="box"];11125[label="vuz54900/Succ vuz549000",fontsize=10,color="white",style="solid",shape="box"];10322 -> 11125[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11125 -> 10328[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11126[label="vuz54900/Zero",fontsize=10,color="white",style="solid",shape="box"];10322 -> 11126[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11126 -> 10329[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10323[label="primDivNatS0 Zero vuz54900 (primGEqNatS Zero vuz54900)",fontsize=16,color="burlywood",shape="box"];11127[label="vuz54900/Succ vuz549000",fontsize=10,color="white",style="solid",shape="box"];10323 -> 11127[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11127 -> 10330[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11128[label="vuz54900/Zero",fontsize=10,color="white",style="solid",shape="box"];10323 -> 11128[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11128 -> 10331[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10318[label="absReal1 vuz554 (not (primCmpInt (Pos (Succ vuz55500)) (Pos Zero) == LT))",fontsize=16,color="black",shape="box"];10318 -> 10332[label="",style="solid", color="black", weight=3]; 67.72/34.81 10319[label="absReal1 vuz554 (not (primCmpInt (Pos Zero) (Pos Zero) == LT))",fontsize=16,color="black",shape="box"];10319 -> 10333[label="",style="solid", color="black", weight=3]; 67.72/34.81 10320[label="absReal1 vuz554 (not (primCmpInt (Neg (Succ vuz55500)) (Pos Zero) == LT))",fontsize=16,color="black",shape="box"];10320 -> 10334[label="",style="solid", color="black", weight=3]; 67.72/34.81 10321[label="absReal1 vuz554 (not (primCmpInt (Neg Zero) (Pos Zero) == LT))",fontsize=16,color="black",shape="box"];10321 -> 10335[label="",style="solid", color="black", weight=3]; 67.72/34.81 10324[label="primRemInt (Pos vuz5490) vuz542",fontsize=16,color="burlywood",shape="box"];11129[label="vuz542/Pos vuz5420",fontsize=10,color="white",style="solid",shape="box"];10324 -> 11129[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11129 -> 10336[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11130[label="vuz542/Neg vuz5420",fontsize=10,color="white",style="solid",shape="box"];10324 -> 11130[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11130 -> 10337[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10325[label="primRemInt (Neg vuz5490) vuz542",fontsize=16,color="burlywood",shape="box"];11131[label="vuz542/Pos vuz5420",fontsize=10,color="white",style="solid",shape="box"];10325 -> 11131[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11131 -> 10338[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11132[label="vuz542/Neg vuz5420",fontsize=10,color="white",style="solid",shape="box"];10325 -> 11132[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11132 -> 10339[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10327 -> 10306[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10327[label="vuz549 `rem` vuz542",fontsize=16,color="magenta"];10326[label="gcd0Gcd'0 vuz542 vuz557",fontsize=16,color="black",shape="triangle"];10326 -> 10340[label="",style="solid", color="black", weight=3]; 67.72/34.81 10328[label="primDivNatS0 (Succ vuz41600) (Succ vuz549000) (primGEqNatS (Succ vuz41600) (Succ vuz549000))",fontsize=16,color="black",shape="box"];10328 -> 10341[label="",style="solid", color="black", weight=3]; 67.72/34.81 10329[label="primDivNatS0 (Succ vuz41600) Zero (primGEqNatS (Succ vuz41600) Zero)",fontsize=16,color="black",shape="box"];10329 -> 10342[label="",style="solid", color="black", weight=3]; 67.72/34.81 10330[label="primDivNatS0 Zero (Succ vuz549000) (primGEqNatS Zero (Succ vuz549000))",fontsize=16,color="black",shape="box"];10330 -> 10343[label="",style="solid", color="black", weight=3]; 67.72/34.81 10331[label="primDivNatS0 Zero Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];10331 -> 10344[label="",style="solid", color="black", weight=3]; 67.72/34.81 10332[label="absReal1 vuz554 (not (primCmpNat (Succ vuz55500) Zero == LT))",fontsize=16,color="black",shape="box"];10332 -> 10345[label="",style="solid", color="black", weight=3]; 67.72/34.81 10333[label="absReal1 vuz554 (not (EQ == LT))",fontsize=16,color="black",shape="triangle"];10333 -> 10346[label="",style="solid", color="black", weight=3]; 67.72/34.81 10334[label="absReal1 vuz554 (not (LT == LT))",fontsize=16,color="black",shape="box"];10334 -> 10347[label="",style="solid", color="black", weight=3]; 67.72/34.81 10335 -> 10333[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10335[label="absReal1 vuz554 (not (EQ == LT))",fontsize=16,color="magenta"];10336[label="primRemInt (Pos vuz5490) (Pos vuz5420)",fontsize=16,color="burlywood",shape="box"];11133[label="vuz5420/Succ vuz54200",fontsize=10,color="white",style="solid",shape="box"];10336 -> 11133[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11133 -> 10348[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11134[label="vuz5420/Zero",fontsize=10,color="white",style="solid",shape="box"];10336 -> 11134[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11134 -> 10349[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10337[label="primRemInt (Pos vuz5490) (Neg vuz5420)",fontsize=16,color="burlywood",shape="box"];11135[label="vuz5420/Succ vuz54200",fontsize=10,color="white",style="solid",shape="box"];10337 -> 11135[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11135 -> 10350[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11136[label="vuz5420/Zero",fontsize=10,color="white",style="solid",shape="box"];10337 -> 11136[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11136 -> 10351[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10338[label="primRemInt (Neg vuz5490) (Pos vuz5420)",fontsize=16,color="burlywood",shape="box"];11137[label="vuz5420/Succ vuz54200",fontsize=10,color="white",style="solid",shape="box"];10338 -> 11137[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11137 -> 10352[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11138[label="vuz5420/Zero",fontsize=10,color="white",style="solid",shape="box"];10338 -> 11138[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11138 -> 10353[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10339[label="primRemInt (Neg vuz5490) (Neg vuz5420)",fontsize=16,color="burlywood",shape="box"];11139[label="vuz5420/Succ vuz54200",fontsize=10,color="white",style="solid",shape="box"];10339 -> 11139[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11139 -> 10354[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11140[label="vuz5420/Zero",fontsize=10,color="white",style="solid",shape="box"];10339 -> 11140[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11140 -> 10355[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10340 -> 10252[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10340[label="gcd0Gcd' vuz557 (vuz542 `rem` vuz557)",fontsize=16,color="magenta"];10340 -> 10356[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10340 -> 10357[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10341 -> 10629[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10341[label="primDivNatS0 (Succ vuz41600) (Succ vuz549000) (primGEqNatS vuz41600 vuz549000)",fontsize=16,color="magenta"];10341 -> 10630[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10341 -> 10631[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10341 -> 10632[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10341 -> 10633[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10342[label="primDivNatS0 (Succ vuz41600) Zero True",fontsize=16,color="black",shape="box"];10342 -> 10360[label="",style="solid", color="black", weight=3]; 67.72/34.81 10343[label="primDivNatS0 Zero (Succ vuz549000) False",fontsize=16,color="black",shape="box"];10343 -> 10361[label="",style="solid", color="black", weight=3]; 67.72/34.81 10344[label="primDivNatS0 Zero Zero True",fontsize=16,color="black",shape="box"];10344 -> 10362[label="",style="solid", color="black", weight=3]; 67.72/34.81 10345[label="absReal1 vuz554 (not (GT == LT))",fontsize=16,color="black",shape="box"];10345 -> 10363[label="",style="solid", color="black", weight=3]; 67.72/34.81 10346[label="absReal1 vuz554 (not False)",fontsize=16,color="black",shape="triangle"];10346 -> 10364[label="",style="solid", color="black", weight=3]; 67.72/34.81 10347[label="absReal1 vuz554 (not True)",fontsize=16,color="black",shape="box"];10347 -> 10365[label="",style="solid", color="black", weight=3]; 67.72/34.81 10348[label="primRemInt (Pos vuz5490) (Pos (Succ vuz54200))",fontsize=16,color="black",shape="box"];10348 -> 10366[label="",style="solid", color="black", weight=3]; 67.72/34.81 10349[label="primRemInt (Pos vuz5490) (Pos Zero)",fontsize=16,color="black",shape="box"];10349 -> 10367[label="",style="solid", color="black", weight=3]; 67.72/34.81 10350[label="primRemInt (Pos vuz5490) (Neg (Succ vuz54200))",fontsize=16,color="black",shape="box"];10350 -> 10368[label="",style="solid", color="black", weight=3]; 67.72/34.81 10351[label="primRemInt (Pos vuz5490) (Neg Zero)",fontsize=16,color="black",shape="box"];10351 -> 10369[label="",style="solid", color="black", weight=3]; 67.72/34.81 10352[label="primRemInt (Neg vuz5490) (Pos (Succ vuz54200))",fontsize=16,color="black",shape="box"];10352 -> 10370[label="",style="solid", color="black", weight=3]; 67.72/34.81 10353[label="primRemInt (Neg vuz5490) (Pos Zero)",fontsize=16,color="black",shape="box"];10353 -> 10371[label="",style="solid", color="black", weight=3]; 67.72/34.81 10354[label="primRemInt (Neg vuz5490) (Neg (Succ vuz54200))",fontsize=16,color="black",shape="box"];10354 -> 10372[label="",style="solid", color="black", weight=3]; 67.72/34.81 10355[label="primRemInt (Neg vuz5490) (Neg Zero)",fontsize=16,color="black",shape="box"];10355 -> 10373[label="",style="solid", color="black", weight=3]; 67.72/34.81 10356[label="vuz542",fontsize=16,color="green",shape="box"];10357[label="vuz557",fontsize=16,color="green",shape="box"];10630[label="vuz41600",fontsize=16,color="green",shape="box"];10631[label="vuz41600",fontsize=16,color="green",shape="box"];10632[label="vuz549000",fontsize=16,color="green",shape="box"];10633[label="vuz549000",fontsize=16,color="green",shape="box"];10629[label="primDivNatS0 (Succ vuz574) (Succ vuz575) (primGEqNatS vuz576 vuz577)",fontsize=16,color="burlywood",shape="triangle"];11141[label="vuz576/Succ vuz5760",fontsize=10,color="white",style="solid",shape="box"];10629 -> 11141[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11141 -> 10662[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11142[label="vuz576/Zero",fontsize=10,color="white",style="solid",shape="box"];10629 -> 11142[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11142 -> 10663[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10360[label="Succ (primDivNatS (primMinusNatS (Succ vuz41600) Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];10360 -> 10378[label="",style="dashed", color="green", weight=3]; 67.72/34.81 10361[label="Zero",fontsize=16,color="green",shape="box"];10362[label="Succ (primDivNatS (primMinusNatS Zero Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];10362 -> 10379[label="",style="dashed", color="green", weight=3]; 67.72/34.81 10363 -> 10346[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10363[label="absReal1 vuz554 (not False)",fontsize=16,color="magenta"];10364[label="absReal1 vuz554 True",fontsize=16,color="black",shape="box"];10364 -> 10380[label="",style="solid", color="black", weight=3]; 67.72/34.81 10365[label="absReal1 vuz554 False",fontsize=16,color="black",shape="box"];10365 -> 10381[label="",style="solid", color="black", weight=3]; 67.72/34.81 10366[label="Pos (primModNatS vuz5490 (Succ vuz54200))",fontsize=16,color="green",shape="box"];10366 -> 10382[label="",style="dashed", color="green", weight=3]; 67.72/34.81 10367 -> 10275[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10367[label="error []",fontsize=16,color="magenta"];10368[label="Pos (primModNatS vuz5490 (Succ vuz54200))",fontsize=16,color="green",shape="box"];10368 -> 10383[label="",style="dashed", color="green", weight=3]; 67.72/34.81 10369 -> 10275[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10369[label="error []",fontsize=16,color="magenta"];10370[label="Neg (primModNatS vuz5490 (Succ vuz54200))",fontsize=16,color="green",shape="box"];10370 -> 10384[label="",style="dashed", color="green", weight=3]; 67.72/34.81 10371 -> 10275[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10371[label="error []",fontsize=16,color="magenta"];10372[label="Neg (primModNatS vuz5490 (Succ vuz54200))",fontsize=16,color="green",shape="box"];10372 -> 10385[label="",style="dashed", color="green", weight=3]; 67.72/34.81 10373 -> 10275[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10373[label="error []",fontsize=16,color="magenta"];10662[label="primDivNatS0 (Succ vuz574) (Succ vuz575) (primGEqNatS (Succ vuz5760) vuz577)",fontsize=16,color="burlywood",shape="box"];11143[label="vuz577/Succ vuz5770",fontsize=10,color="white",style="solid",shape="box"];10662 -> 11143[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11143 -> 10670[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11144[label="vuz577/Zero",fontsize=10,color="white",style="solid",shape="box"];10662 -> 11144[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11144 -> 10671[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10663[label="primDivNatS0 (Succ vuz574) (Succ vuz575) (primGEqNatS Zero vuz577)",fontsize=16,color="burlywood",shape="box"];11145[label="vuz577/Succ vuz5770",fontsize=10,color="white",style="solid",shape="box"];10663 -> 11145[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11145 -> 10672[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11146[label="vuz577/Zero",fontsize=10,color="white",style="solid",shape="box"];10663 -> 11146[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11146 -> 10673[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10378 -> 10290[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10378[label="primDivNatS (primMinusNatS (Succ vuz41600) Zero) (Succ Zero)",fontsize=16,color="magenta"];10378 -> 10390[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10378 -> 10391[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10379 -> 10290[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10379[label="primDivNatS (primMinusNatS Zero Zero) (Succ Zero)",fontsize=16,color="magenta"];10379 -> 10392[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10379 -> 10393[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10380[label="vuz554",fontsize=16,color="green",shape="box"];10381[label="absReal0 vuz554 otherwise",fontsize=16,color="black",shape="box"];10381 -> 10394[label="",style="solid", color="black", weight=3]; 67.72/34.81 10382[label="primModNatS vuz5490 (Succ vuz54200)",fontsize=16,color="burlywood",shape="triangle"];11147[label="vuz5490/Succ vuz54900",fontsize=10,color="white",style="solid",shape="box"];10382 -> 11147[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11147 -> 10395[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11148[label="vuz5490/Zero",fontsize=10,color="white",style="solid",shape="box"];10382 -> 11148[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11148 -> 10396[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10383 -> 10382[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10383[label="primModNatS vuz5490 (Succ vuz54200)",fontsize=16,color="magenta"];10383 -> 10397[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10384 -> 10382[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10384[label="primModNatS vuz5490 (Succ vuz54200)",fontsize=16,color="magenta"];10384 -> 10398[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10385 -> 10382[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10385[label="primModNatS vuz5490 (Succ vuz54200)",fontsize=16,color="magenta"];10385 -> 10399[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10385 -> 10400[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10670[label="primDivNatS0 (Succ vuz574) (Succ vuz575) (primGEqNatS (Succ vuz5760) (Succ vuz5770))",fontsize=16,color="black",shape="box"];10670 -> 10682[label="",style="solid", color="black", weight=3]; 67.72/34.81 10671[label="primDivNatS0 (Succ vuz574) (Succ vuz575) (primGEqNatS (Succ vuz5760) Zero)",fontsize=16,color="black",shape="box"];10671 -> 10683[label="",style="solid", color="black", weight=3]; 67.72/34.81 10672[label="primDivNatS0 (Succ vuz574) (Succ vuz575) (primGEqNatS Zero (Succ vuz5770))",fontsize=16,color="black",shape="box"];10672 -> 10684[label="",style="solid", color="black", weight=3]; 67.72/34.81 10673[label="primDivNatS0 (Succ vuz574) (Succ vuz575) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];10673 -> 10685[label="",style="solid", color="black", weight=3]; 67.72/34.81 10390[label="primMinusNatS (Succ vuz41600) Zero",fontsize=16,color="black",shape="triangle"];10390 -> 10406[label="",style="solid", color="black", weight=3]; 67.72/34.81 10391[label="Zero",fontsize=16,color="green",shape="box"];10392[label="primMinusNatS Zero Zero",fontsize=16,color="black",shape="triangle"];10392 -> 10407[label="",style="solid", color="black", weight=3]; 67.72/34.81 10393[label="Zero",fontsize=16,color="green",shape="box"];10394[label="absReal0 vuz554 True",fontsize=16,color="black",shape="box"];10394 -> 10408[label="",style="solid", color="black", weight=3]; 67.72/34.81 10395[label="primModNatS (Succ vuz54900) (Succ vuz54200)",fontsize=16,color="black",shape="box"];10395 -> 10409[label="",style="solid", color="black", weight=3]; 67.72/34.81 10396[label="primModNatS Zero (Succ vuz54200)",fontsize=16,color="black",shape="box"];10396 -> 10410[label="",style="solid", color="black", weight=3]; 67.72/34.81 10397[label="vuz54200",fontsize=16,color="green",shape="box"];10398[label="vuz5490",fontsize=16,color="green",shape="box"];10399[label="vuz5490",fontsize=16,color="green",shape="box"];10400[label="vuz54200",fontsize=16,color="green",shape="box"];10682 -> 10629[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10682[label="primDivNatS0 (Succ vuz574) (Succ vuz575) (primGEqNatS vuz5760 vuz5770)",fontsize=16,color="magenta"];10682 -> 10692[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10682 -> 10693[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10683[label="primDivNatS0 (Succ vuz574) (Succ vuz575) True",fontsize=16,color="black",shape="triangle"];10683 -> 10694[label="",style="solid", color="black", weight=3]; 67.72/34.81 10684[label="primDivNatS0 (Succ vuz574) (Succ vuz575) False",fontsize=16,color="black",shape="box"];10684 -> 10695[label="",style="solid", color="black", weight=3]; 67.72/34.81 10685 -> 10683[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10685[label="primDivNatS0 (Succ vuz574) (Succ vuz575) True",fontsize=16,color="magenta"];10406[label="Succ vuz41600",fontsize=16,color="green",shape="box"];10407[label="Zero",fontsize=16,color="green",shape="box"];10408 -> 7115[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10408[label="`negate` vuz554",fontsize=16,color="magenta"];10408 -> 10417[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10409[label="primModNatS0 vuz54900 vuz54200 (primGEqNatS vuz54900 vuz54200)",fontsize=16,color="burlywood",shape="box"];11149[label="vuz54900/Succ vuz549000",fontsize=10,color="white",style="solid",shape="box"];10409 -> 11149[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11149 -> 10418[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11150[label="vuz54900/Zero",fontsize=10,color="white",style="solid",shape="box"];10409 -> 11150[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11150 -> 10419[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10410[label="Zero",fontsize=16,color="green",shape="box"];10692[label="vuz5760",fontsize=16,color="green",shape="box"];10693[label="vuz5770",fontsize=16,color="green",shape="box"];10694[label="Succ (primDivNatS (primMinusNatS (Succ vuz574) (Succ vuz575)) (Succ (Succ vuz575)))",fontsize=16,color="green",shape="box"];10694 -> 10700[label="",style="dashed", color="green", weight=3]; 67.72/34.81 10695[label="Zero",fontsize=16,color="green",shape="box"];10417[label="vuz554",fontsize=16,color="green",shape="box"];10418[label="primModNatS0 (Succ vuz549000) vuz54200 (primGEqNatS (Succ vuz549000) vuz54200)",fontsize=16,color="burlywood",shape="box"];11151[label="vuz54200/Succ vuz542000",fontsize=10,color="white",style="solid",shape="box"];10418 -> 11151[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11151 -> 10428[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11152[label="vuz54200/Zero",fontsize=10,color="white",style="solid",shape="box"];10418 -> 11152[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11152 -> 10429[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10419[label="primModNatS0 Zero vuz54200 (primGEqNatS Zero vuz54200)",fontsize=16,color="burlywood",shape="box"];11153[label="vuz54200/Succ vuz542000",fontsize=10,color="white",style="solid",shape="box"];10419 -> 11153[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11153 -> 10430[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11154[label="vuz54200/Zero",fontsize=10,color="white",style="solid",shape="box"];10419 -> 11154[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11154 -> 10431[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10700 -> 10290[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10700[label="primDivNatS (primMinusNatS (Succ vuz574) (Succ vuz575)) (Succ (Succ vuz575))",fontsize=16,color="magenta"];10700 -> 10704[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10700 -> 10705[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10428[label="primModNatS0 (Succ vuz549000) (Succ vuz542000) (primGEqNatS (Succ vuz549000) (Succ vuz542000))",fontsize=16,color="black",shape="box"];10428 -> 10439[label="",style="solid", color="black", weight=3]; 67.72/34.81 10429[label="primModNatS0 (Succ vuz549000) Zero (primGEqNatS (Succ vuz549000) Zero)",fontsize=16,color="black",shape="box"];10429 -> 10440[label="",style="solid", color="black", weight=3]; 67.72/34.81 10430[label="primModNatS0 Zero (Succ vuz542000) (primGEqNatS Zero (Succ vuz542000))",fontsize=16,color="black",shape="box"];10430 -> 10441[label="",style="solid", color="black", weight=3]; 67.72/34.81 10431[label="primModNatS0 Zero Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];10431 -> 10442[label="",style="solid", color="black", weight=3]; 67.72/34.81 10704[label="primMinusNatS (Succ vuz574) (Succ vuz575)",fontsize=16,color="black",shape="box"];10704 -> 10709[label="",style="solid", color="black", weight=3]; 67.72/34.81 10705[label="Succ vuz575",fontsize=16,color="green",shape="box"];10439 -> 10769[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10439[label="primModNatS0 (Succ vuz549000) (Succ vuz542000) (primGEqNatS vuz549000 vuz542000)",fontsize=16,color="magenta"];10439 -> 10770[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10439 -> 10771[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10439 -> 10772[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10439 -> 10773[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10440[label="primModNatS0 (Succ vuz549000) Zero True",fontsize=16,color="black",shape="box"];10440 -> 10452[label="",style="solid", color="black", weight=3]; 67.72/34.81 10441[label="primModNatS0 Zero (Succ vuz542000) False",fontsize=16,color="black",shape="box"];10441 -> 10453[label="",style="solid", color="black", weight=3]; 67.72/34.81 10442[label="primModNatS0 Zero Zero True",fontsize=16,color="black",shape="box"];10442 -> 10454[label="",style="solid", color="black", weight=3]; 67.72/34.81 10709[label="primMinusNatS vuz574 vuz575",fontsize=16,color="burlywood",shape="triangle"];11155[label="vuz574/Succ vuz5740",fontsize=10,color="white",style="solid",shape="box"];10709 -> 11155[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11155 -> 10712[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11156[label="vuz574/Zero",fontsize=10,color="white",style="solid",shape="box"];10709 -> 11156[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11156 -> 10713[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10770[label="vuz549000",fontsize=16,color="green",shape="box"];10771[label="vuz542000",fontsize=16,color="green",shape="box"];10772[label="vuz549000",fontsize=16,color="green",shape="box"];10773[label="vuz542000",fontsize=16,color="green",shape="box"];10769[label="primModNatS0 (Succ vuz594) (Succ vuz595) (primGEqNatS vuz596 vuz597)",fontsize=16,color="burlywood",shape="triangle"];11157[label="vuz596/Succ vuz5960",fontsize=10,color="white",style="solid",shape="box"];10769 -> 11157[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11157 -> 10802[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11158[label="vuz596/Zero",fontsize=10,color="white",style="solid",shape="box"];10769 -> 11158[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11158 -> 10803[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10452 -> 10382[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10452[label="primModNatS (primMinusNatS (Succ vuz549000) Zero) (Succ Zero)",fontsize=16,color="magenta"];10452 -> 10467[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10452 -> 10468[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10453[label="Succ Zero",fontsize=16,color="green",shape="box"];10454 -> 10382[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10454[label="primModNatS (primMinusNatS Zero Zero) (Succ Zero)",fontsize=16,color="magenta"];10454 -> 10469[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10454 -> 10470[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10712[label="primMinusNatS (Succ vuz5740) vuz575",fontsize=16,color="burlywood",shape="box"];11159[label="vuz575/Succ vuz5750",fontsize=10,color="white",style="solid",shape="box"];10712 -> 11159[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11159 -> 10745[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11160[label="vuz575/Zero",fontsize=10,color="white",style="solid",shape="box"];10712 -> 11160[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11160 -> 10746[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10713[label="primMinusNatS Zero vuz575",fontsize=16,color="burlywood",shape="box"];11161[label="vuz575/Succ vuz5750",fontsize=10,color="white",style="solid",shape="box"];10713 -> 11161[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11161 -> 10747[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11162[label="vuz575/Zero",fontsize=10,color="white",style="solid",shape="box"];10713 -> 11162[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11162 -> 10748[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10802[label="primModNatS0 (Succ vuz594) (Succ vuz595) (primGEqNatS (Succ vuz5960) vuz597)",fontsize=16,color="burlywood",shape="box"];11163[label="vuz597/Succ vuz5970",fontsize=10,color="white",style="solid",shape="box"];10802 -> 11163[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11163 -> 10804[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11164[label="vuz597/Zero",fontsize=10,color="white",style="solid",shape="box"];10802 -> 11164[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11164 -> 10805[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10803[label="primModNatS0 (Succ vuz594) (Succ vuz595) (primGEqNatS Zero vuz597)",fontsize=16,color="burlywood",shape="box"];11165[label="vuz597/Succ vuz5970",fontsize=10,color="white",style="solid",shape="box"];10803 -> 11165[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11165 -> 10806[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 11166[label="vuz597/Zero",fontsize=10,color="white",style="solid",shape="box"];10803 -> 11166[label="",style="solid", color="burlywood", weight=9]; 67.72/34.81 11166 -> 10807[label="",style="solid", color="burlywood", weight=3]; 67.72/34.81 10467 -> 10390[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10467[label="primMinusNatS (Succ vuz549000) Zero",fontsize=16,color="magenta"];10467 -> 10482[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10468[label="Zero",fontsize=16,color="green",shape="box"];10469 -> 10392[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10469[label="primMinusNatS Zero Zero",fontsize=16,color="magenta"];10470[label="Zero",fontsize=16,color="green",shape="box"];10745[label="primMinusNatS (Succ vuz5740) (Succ vuz5750)",fontsize=16,color="black",shape="box"];10745 -> 10755[label="",style="solid", color="black", weight=3]; 67.72/34.81 10746[label="primMinusNatS (Succ vuz5740) Zero",fontsize=16,color="black",shape="box"];10746 -> 10756[label="",style="solid", color="black", weight=3]; 67.72/34.81 10747[label="primMinusNatS Zero (Succ vuz5750)",fontsize=16,color="black",shape="box"];10747 -> 10757[label="",style="solid", color="black", weight=3]; 67.72/34.81 10748[label="primMinusNatS Zero Zero",fontsize=16,color="black",shape="box"];10748 -> 10758[label="",style="solid", color="black", weight=3]; 67.72/34.81 10804[label="primModNatS0 (Succ vuz594) (Succ vuz595) (primGEqNatS (Succ vuz5960) (Succ vuz5970))",fontsize=16,color="black",shape="box"];10804 -> 10808[label="",style="solid", color="black", weight=3]; 67.72/34.81 10805[label="primModNatS0 (Succ vuz594) (Succ vuz595) (primGEqNatS (Succ vuz5960) Zero)",fontsize=16,color="black",shape="box"];10805 -> 10809[label="",style="solid", color="black", weight=3]; 67.72/34.81 10806[label="primModNatS0 (Succ vuz594) (Succ vuz595) (primGEqNatS Zero (Succ vuz5970))",fontsize=16,color="black",shape="box"];10806 -> 10810[label="",style="solid", color="black", weight=3]; 67.72/34.81 10807[label="primModNatS0 (Succ vuz594) (Succ vuz595) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];10807 -> 10811[label="",style="solid", color="black", weight=3]; 67.72/34.81 10482[label="vuz549000",fontsize=16,color="green",shape="box"];10755 -> 10709[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10755[label="primMinusNatS vuz5740 vuz5750",fontsize=16,color="magenta"];10755 -> 10765[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10755 -> 10766[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10756[label="Succ vuz5740",fontsize=16,color="green",shape="box"];10757[label="Zero",fontsize=16,color="green",shape="box"];10758[label="Zero",fontsize=16,color="green",shape="box"];10808 -> 10769[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10808[label="primModNatS0 (Succ vuz594) (Succ vuz595) (primGEqNatS vuz5960 vuz5970)",fontsize=16,color="magenta"];10808 -> 10812[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10808 -> 10813[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10809[label="primModNatS0 (Succ vuz594) (Succ vuz595) True",fontsize=16,color="black",shape="triangle"];10809 -> 10814[label="",style="solid", color="black", weight=3]; 67.72/34.81 10810[label="primModNatS0 (Succ vuz594) (Succ vuz595) False",fontsize=16,color="black",shape="box"];10810 -> 10815[label="",style="solid", color="black", weight=3]; 67.72/34.81 10811 -> 10809[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10811[label="primModNatS0 (Succ vuz594) (Succ vuz595) True",fontsize=16,color="magenta"];10765[label="vuz5740",fontsize=16,color="green",shape="box"];10766[label="vuz5750",fontsize=16,color="green",shape="box"];10812[label="vuz5970",fontsize=16,color="green",shape="box"];10813[label="vuz5960",fontsize=16,color="green",shape="box"];10814 -> 10382[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10814[label="primModNatS (primMinusNatS (Succ vuz594) (Succ vuz595)) (Succ (Succ vuz595))",fontsize=16,color="magenta"];10814 -> 10816[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10814 -> 10817[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10815[label="Succ (Succ vuz594)",fontsize=16,color="green",shape="box"];10816 -> 10709[label="",style="dashed", color="red", weight=0]; 67.72/34.81 10816[label="primMinusNatS (Succ vuz594) (Succ vuz595)",fontsize=16,color="magenta"];10816 -> 10818[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10816 -> 10819[label="",style="dashed", color="magenta", weight=3]; 67.72/34.81 10817[label="Succ vuz595",fontsize=16,color="green",shape="box"];10818[label="Succ vuz594",fontsize=16,color="green",shape="box"];10819[label="Succ vuz595",fontsize=16,color="green",shape="box"];} 67.72/34.81 67.72/34.81 ---------------------------------------- 67.72/34.81 67.72/34.81 (12) 67.72/34.81 Complex Obligation (AND) 67.72/34.81 67.72/34.81 ---------------------------------------- 67.72/34.81 67.72/34.81 (13) 67.72/34.81 Obligation: 67.72/34.81 Q DP problem: 67.72/34.81 The TRS P consists of the following rules: 67.72/34.81 67.72/34.81 new_primQuotInt8(Succ(vuz4090), Succ(vuz4080), vuz411, vuz410, vuz3190, vuz31700) -> new_primQuotInt8(vuz4090, vuz4080, vuz4090, vuz4080, vuz3190, vuz31700) 67.72/34.81 67.72/34.81 R is empty. 67.72/34.81 Q is empty. 67.72/34.81 We have to consider all minimal (P,Q,R)-chains. 67.72/34.81 ---------------------------------------- 67.72/34.81 67.72/34.81 (14) TransformationProof (EQUIVALENT) 67.72/34.81 By instantiating [LPAR04] the rule new_primQuotInt8(Succ(vuz4090), Succ(vuz4080), vuz411, vuz410, vuz3190, vuz31700) -> new_primQuotInt8(vuz4090, vuz4080, vuz4090, vuz4080, vuz3190, vuz31700) we obtained the following new rules [LPAR04]: 67.72/34.81 67.72/34.81 (new_primQuotInt8(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt8(x0, x1, x0, x1, z4, z5),new_primQuotInt8(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt8(x0, x1, x0, x1, z4, z5)) 67.72/34.81 67.72/34.81 67.72/34.81 ---------------------------------------- 67.72/34.81 67.72/34.81 (15) 67.72/34.81 Obligation: 67.72/34.81 Q DP problem: 67.72/34.81 The TRS P consists of the following rules: 67.72/34.81 67.72/34.81 new_primQuotInt8(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt8(x0, x1, x0, x1, z4, z5) 67.72/34.81 67.72/34.81 R is empty. 67.72/34.81 Q is empty. 67.72/34.81 We have to consider all minimal (P,Q,R)-chains. 67.72/34.81 ---------------------------------------- 67.72/34.81 67.72/34.81 (16) QDPSizeChangeProof (EQUIVALENT) 67.72/34.81 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. 67.72/34.81 67.72/34.81 From the DPs we obtained the following set of size-change graphs: 67.72/34.81 *new_primQuotInt8(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt8(x0, x1, x0, x1, z4, z5) 67.72/34.81 The graph contains the following edges 1 > 1, 3 > 1, 2 > 2, 4 > 2, 1 > 3, 3 > 3, 2 > 4, 4 > 4, 5 >= 5, 6 >= 6 67.72/34.81 67.72/34.81 67.72/34.81 ---------------------------------------- 67.72/34.81 67.72/34.81 (17) 67.72/34.81 YES 67.72/34.81 67.72/34.81 ---------------------------------------- 67.72/34.81 67.72/34.81 (18) 67.72/34.81 Obligation: 67.72/34.81 Q DP problem: 67.72/34.81 The TRS P consists of the following rules: 67.72/34.81 67.72/34.81 new_iterate(vuz4, vuz3, vuz5) -> new_iterate(vuz4, vuz3, new_ps(new_ps(vuz4, new_negate(vuz3), ty_Int), vuz5, ty_Int)) 67.72/34.81 67.72/34.81 The TRS R consists of the following rules: 67.72/34.81 67.72/34.81 new_abs4(vuz3190, vuz3170) -> new_absReal1(new_sr(Neg(vuz3190), Pos(vuz3170)), new_sr(Neg(vuz3190), Pos(vuz3170))) 67.72/34.81 new_primQuotInt44(vuz398) -> error([]) 67.72/34.81 new_primQuotInt80(vuz386, vuz389, Pos(vuz3180), vuz3190, vuz388, vuz387) -> new_primQuotInt30(vuz386, vuz389, new_primMulNat0(vuz3180, vuz3190), vuz388, new_primMulNat0(vuz3180, vuz3190), vuz387) 67.72/34.81 new_esEs(Neg(Zero)) -> new_primEqInt2 67.72/34.81 new_primQuotInt56(Succ(vuz4570), Succ(vuz4560), vuz459, vuz458, vuz3190, vuz31700) -> new_primQuotInt56(vuz4570, vuz4560, vuz4570, vuz4560, vuz3190, vuz31700) 67.72/34.81 new_primQuotInt27(vuz374, False, vuz511, vuz375) -> new_primQuotInt26(vuz374, vuz511, vuz375) 67.72/34.81 new_primQuotInt62(Succ(vuz4010), Succ(vuz4000), vuz403, vuz402, vuz3190, vuz31700) -> new_primQuotInt62(vuz4010, vuz4000, vuz4010, vuz4000, vuz3190, vuz31700) 67.72/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Neg(Zero), Neg(Zero), ty_Int) -> new_primQuotInt40(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz3170) 67.72/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Neg(Succ(vuz31800)), Neg(Succ(vuz31900)), ty_Int) -> new_primQuotInt74(new_primPlusNat1(new_primMulNat0(vuz31800, Succ(vuz31900)), Succ(vuz31900)), new_primMulNat0(vuz3160, vuz3170), new_primPlusNat1(new_primMulNat0(vuz31800, Succ(vuz31900)), Succ(vuz31900)), new_primMulNat0(vuz3160, vuz3170), vuz31900, vuz3170) 67.72/34.81 new_abs1(vuz427) -> new_absReal1(Neg(vuz427), Neg(vuz427)) 67.72/34.81 new_quot(Neg(Zero), Neg(Succ(vuz31700)), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt56(Zero, new_primMulNat0(vuz3180, vuz3190), Zero, new_primMulNat0(vuz3180, vuz3190), vuz3190, vuz31700) 67.72/34.81 new_quot(Neg(Zero), Neg(Zero), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt77(new_primMulNat0(vuz3180, vuz3190), new_primMulNat0(vuz3180, vuz3190), vuz3190) 67.72/34.81 new_primQuotInt69(vuz366, True, vuz505, vuz367) -> new_primQuotInt83(vuz366, new_esEs(Pos(vuz367)), vuz505, vuz367) 67.72/34.81 new_primDivNatS1(Zero, vuz54900) -> Zero 67.72/34.81 new_quot(Neg(Succ(vuz31600)), Neg(Succ(vuz31700)), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt76(new_primPlusNat1(new_primMulNat0(vuz31600, Succ(vuz31700)), Succ(vuz31700)), new_primMulNat0(vuz3180, vuz3190), new_primPlusNat1(new_primMulNat0(vuz31600, Succ(vuz31700)), Succ(vuz31700)), new_primMulNat0(vuz3180, vuz3190), vuz3190, vuz31700) 67.72/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Pos(Zero), Pos(Succ(vuz31900)), ty_Int) -> new_primQuotInt72(Zero, new_primMulNat0(vuz3160, vuz3170), Zero, new_primMulNat0(vuz3160, vuz3170), vuz31900, vuz3170) 67.72/34.81 new_primQuotInt57(vuz382, vuz385, Neg(vuz3180), vuz3190, vuz384, vuz383) -> new_primQuotInt53(vuz382, vuz385, new_primMulNat0(vuz3180, vuz3190), vuz384, new_primMulNat0(vuz3180, vuz3190), vuz383) 67.72/34.81 new_primDivNatS1(Succ(Succ(vuz41600)), Zero) -> Succ(new_primDivNatS1(new_primMinusNatS0(vuz41600), Zero)) 67.72/34.81 new_primQuotInt20(vuz446, True, vuz447, vuz3190, vuz3170) -> new_primQuotInt87(vuz446, new_esEs(new_sr(Neg(vuz3190), Pos(vuz3170))), vuz447, vuz3190, vuz3170) 67.72/34.81 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.72/34.81 new_primQuotInt73(Zero, vuz445, vuz3170) -> new_primQuotInt18(Zero, Zero, Zero, vuz3170) 67.72/34.81 new_primQuotInt80(vuz386, vuz389, Neg(vuz3180), vuz3190, vuz388, vuz387) -> new_primQuotInt29(vuz386, vuz389, new_primMulNat0(vuz3180, vuz3190), vuz388, new_primMulNat0(vuz3180, vuz3190), vuz387) 67.72/34.81 new_primQuotInt15(vuz348, True, vuz349, vuz3190, vuz3170) -> new_primQuotInt55(vuz348) 67.72/34.81 new_quot0(Neg(vuz3190), Pos(vuz3170), Pos(vuz3160), vuz318, ty_Int) -> new_primQuotInt57(new_primMulNat0(vuz3190, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz318, vuz3190, new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3190, vuz3170)) 67.72/34.81 new_primQuotInt81(vuz390, vuz393, Pos(vuz3180), vuz3190, vuz392, vuz391) -> new_primQuotInt90(vuz390, vuz393, new_primMulNat0(vuz3180, vuz3190), vuz392, new_primMulNat0(vuz3180, vuz3190), vuz391) 67.72/34.81 new_primQuotInt27(vuz374, True, vuz511, vuz375) -> new_primQuotInt55(vuz374) 67.72/34.81 new_primQuotInt36(Zero, Zero, vuz411, vuz410, vuz3190, vuz31700) -> new_primQuotInt18(Zero, Zero, vuz3190, Succ(vuz31700)) 67.72/34.81 new_primDivNatS01(vuz574, vuz575, Zero, Succ(vuz5770)) -> Zero 67.72/34.81 new_primQuotInt67(Succ(vuz4190), Succ(vuz4180), vuz421, vuz420, vuz31900, vuz3170) -> new_primQuotInt67(vuz4190, vuz4180, vuz4190, vuz4180, vuz31900, vuz3170) 67.72/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt48(new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), vuz3190, vuz3170) 67.72/34.81 new_primQuotInt50(vuz428, vuz429, vuz3190, vuz3170) -> new_primQuotInt51(vuz428, new_esEs(Neg(vuz429)), vuz429, vuz3190, vuz3170) 67.72/34.81 new_primDivNatS02(vuz574, vuz575) -> Succ(new_primDivNatS1(new_primMinusNatS2(vuz574, vuz575), Succ(vuz575))) 67.72/34.81 new_primQuotInt79(vuz370, vuz373, Pos(vuz3180), vuz3190, vuz372, vuz371) -> new_primQuotInt11(vuz370, vuz373, new_primMulNat0(vuz3180, vuz3190), vuz372, new_primMulNat0(vuz3180, vuz3190), vuz371) 67.72/34.81 new_primQuotInt28(vuz374, vuz377, Neg(vuz3180), vuz3190, vuz376, vuz375) -> new_primQuotInt30(vuz374, vuz377, new_primMulNat0(vuz3180, vuz3190), vuz376, new_primMulNat0(vuz3180, vuz3190), vuz375) 67.72/34.81 new_primQuotInt76(Zero, Succ(vuz4640), vuz467, vuz466, vuz3190, vuz31700) -> new_primQuotInt50(Succ(vuz4640), Succ(vuz4640), vuz3190, Succ(vuz31700)) 67.72/34.81 new_primQuotInt76(Zero, Zero, vuz467, vuz466, vuz3190, vuz31700) -> new_primQuotInt68(Zero, Zero, vuz3190, Succ(vuz31700)) 67.72/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Neg(Succ(vuz31800)), Neg(Zero), ty_Int) -> new_primQuotInt58(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz3170) 67.72/34.81 new_primQuotInt39(vuz374, Zero, Succ(vuz3770), vuz375) -> new_primQuotInt25(vuz374, new_primEqInt3(Succ(vuz3770)), Succ(vuz3770), vuz375) 67.72/34.81 new_primQuotInt53(vuz378, vuz381, vuz493, vuz380, vuz492, vuz379) -> new_primQuotInt54(vuz378, new_primEqInt4(new_primPlusNat1(vuz381, vuz493)), new_primPlusNat1(vuz381, vuz493), vuz379) 67.72/34.81 new_primQuotInt79(vuz370, vuz373, Neg(vuz3180), vuz3190, vuz372, vuz371) -> new_primQuotInt90(vuz370, vuz373, new_primMulNat0(vuz3180, vuz3190), vuz372, new_primMulNat0(vuz3180, vuz3190), vuz371) 67.72/34.81 new_primDivNatS1(Succ(Zero), Succ(vuz549000)) -> Zero 67.72/34.81 new_esEs(Pos(Zero)) -> new_primEqInt1 67.72/34.81 new_primQuotInt72(Zero, Zero, vuz441, vuz440, vuz31900, vuz3170) -> new_primQuotInt18(Zero, Zero, Succ(vuz31900), vuz3170) 67.72/34.81 new_primQuotInt24(Succ(vuz4060), vuz407, vuz3190) -> new_primQuotInt19(Succ(vuz4060), Succ(vuz4060), vuz3190, Zero) 67.72/34.81 new_primQuotInt67(Zero, Zero, vuz421, vuz420, vuz31900, vuz3170) -> new_primQuotInt68(Zero, Zero, Succ(vuz31900), vuz3170) 67.72/34.81 new_quot(Pos(Succ(vuz31600)), Pos(Zero), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt16(new_primMulNat0(vuz3180, vuz3190), new_primMulNat0(vuz3180, vuz3190), vuz3190) 67.72/34.81 new_quot0(Neg(vuz3190), Pos(vuz3170), Neg(vuz3160), vuz318, ty_Int) -> new_primQuotInt80(new_primMulNat0(vuz3190, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz318, vuz3190, new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3190, vuz3170)) 67.72/34.81 new_absReal1(vuz554, Pos(Succ(vuz55500))) -> new_absReal10(vuz554) 67.72/34.81 new_gcd0Gcd'10(False, vuz542, vuz549) -> new_gcd0Gcd'00(vuz542, new_rem(vuz549, vuz542)) 67.72/34.81 new_primQuotInt30(vuz374, vuz377, vuz491, vuz376, vuz490, vuz375) -> new_primQuotInt25(vuz374, new_primEqInt3(new_primPlusNat1(vuz377, vuz491)), new_primPlusNat1(vuz377, vuz491), vuz375) 67.72/34.81 new_primQuotInt74(Zero, Succ(vuz4480), vuz451, vuz450, vuz31900, vuz3170) -> new_primQuotInt19(Succ(vuz4480), Succ(vuz4480), Succ(vuz31900), vuz3170) 67.72/34.81 new_absReal1(vuz554, Pos(Zero)) -> new_absReal11(vuz554) 67.72/34.81 new_primQuotInt74(Succ(vuz4490), Zero, vuz451, vuz450, vuz31900, vuz3170) -> new_primQuotInt22(Succ(vuz4490), Succ(vuz4490), Succ(vuz31900), vuz3170) 67.72/34.81 new_primQuotInt25(vuz374, True, vuz511, vuz375) -> new_primQuotInt27(vuz374, new_esEs(Neg(vuz375)), vuz511, vuz375) 67.72/34.81 new_absReal11(vuz554) -> new_absReal10(vuz554) 67.72/34.81 new_primQuotInt56(Succ(vuz4570), Zero, vuz459, vuz458, vuz3190, vuz31700) -> new_primQuotInt45(Succ(vuz4570), Succ(vuz4570), vuz3190, Succ(vuz31700)) 67.72/34.81 new_primQuotInt32(vuz416, Neg(Succ(vuz54900))) -> Neg(new_primDivNatS1(vuz416, vuz54900)) 67.72/34.81 new_primQuotInt56(Zero, Succ(vuz4560), vuz459, vuz458, vuz3190, vuz31700) -> new_primQuotInt48(Succ(vuz4560), Succ(vuz4560), vuz3190, Succ(vuz31700)) 67.72/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Neg(Zero), Neg(Succ(vuz31900)), ty_Int) -> new_primQuotInt74(Zero, new_primMulNat0(vuz3160, vuz3170), Zero, new_primMulNat0(vuz3160, vuz3170), vuz31900, vuz3170) 67.72/34.81 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.72/34.81 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.72/34.81 new_primQuotInt47(Zero, Succ(vuz4300), vuz433, vuz432, vuz31900, vuz3170) -> new_primQuotInt48(Succ(vuz4300), Succ(vuz4300), Succ(vuz31900), vuz3170) 67.72/34.81 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.72/34.81 new_primEqInt4(Zero) -> new_primEqInt1 67.72/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Pos(Succ(vuz31800)), Pos(Zero), ty_Int) -> new_primQuotInt71(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz3170) 67.72/34.81 new_primQuotInt64(vuz394, vuz397, Neg(vuz3180), vuz3190, vuz396, vuz395) -> new_primQuotInt65(vuz394, vuz397, new_primMulNat0(vuz3180, vuz3190), vuz396, new_primMulNat0(vuz3180, vuz3190), vuz395) 67.72/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt19(new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), vuz3190, vuz3170) 67.72/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Pos(Zero), Pos(Zero), ty_Int) -> new_primQuotInt71(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz3170) 67.72/34.81 new_quot0(Pos(vuz3190), Neg(vuz3170), Pos(vuz3160), vuz318, ty_Int) -> new_primQuotInt28(new_primMulNat0(vuz3190, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz318, vuz3190, new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3190, vuz3170)) 67.72/34.81 new_primQuotInt11(vuz370, vuz373, vuz485, vuz372, vuz484, vuz371) -> new_primQuotInt12(vuz370, vuz485, vuz373, vuz371) 67.72/34.81 new_primDivNatS01(vuz574, vuz575, Succ(vuz5760), Succ(vuz5770)) -> new_primDivNatS01(vuz574, vuz575, vuz5760, vuz5770) 67.72/34.81 new_primQuotInt13(vuz348, False, vuz349, vuz3190, vuz3170) -> new_primQuotInt14(vuz348, vuz349, vuz3190, vuz3170) 67.72/34.81 new_quot(Pos(Zero), Pos(Succ(vuz31700)), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt62(Zero, new_primMulNat0(vuz3180, vuz3190), Zero, new_primMulNat0(vuz3180, vuz3190), vuz3190, vuz31700) 67.72/34.81 new_quot0(Pos(vuz3190), Pos(vuz3170), Neg(vuz3160), vuz318, ty_Int) -> new_primQuotInt79(new_primMulNat0(vuz3190, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz318, vuz3190, new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3190, vuz3170)) 67.72/34.81 new_primQuotInt32(vuz416, Pos(Zero)) -> new_error 67.72/34.81 new_primQuotInt20(vuz446, False, vuz447, vuz3190, vuz3170) -> new_primQuotInt88(vuz446, vuz447, vuz3190, vuz3170) 67.72/34.81 new_primMulNat0(Zero, Zero) -> Zero 67.72/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Pos(Zero), Pos(Succ(vuz31900)), ty_Int) -> new_primQuotInt67(Zero, new_primMulNat0(vuz3160, vuz3170), Zero, new_primMulNat0(vuz3160, vuz3170), vuz31900, vuz3170) 67.72/34.81 new_abs0(vuz3190, vuz3170) -> new_absReal1(new_sr(Pos(vuz3190), Neg(vuz3170)), new_sr(Pos(vuz3190), Neg(vuz3170))) 67.72/34.81 new_primQuotInt12(vuz366, Succ(vuz3690), Zero, vuz367) -> new_primQuotInt69(vuz366, new_primEqInt4(Succ(vuz3690)), Succ(vuz3690), vuz367) 67.72/34.81 new_primQuotInt59(vuz378, vuz381, Neg(vuz3180), vuz3190, vuz380, vuz379) -> new_primQuotInt38(vuz378, vuz381, new_primMulNat0(vuz3180, vuz3190), vuz380, new_primMulNat0(vuz3180, vuz3190), vuz379) 67.72/34.81 new_primQuotInt85(vuz370, vuz508, vuz371) -> new_primQuotInt31(vuz370, new_esEs(new_abs(vuz371)), new_abs1(vuz508), new_abs(vuz371)) 67.72/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Neg(Succ(vuz31800)), Neg(Zero), ty_Int) -> new_primQuotInt40(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz3170) 67.72/34.81 new_primQuotInt78(vuz366, vuz369, Pos(vuz3180), vuz3190, vuz368, vuz367) -> new_primQuotInt65(vuz366, vuz369, new_primMulNat0(vuz3180, vuz3190), vuz368, new_primMulNat0(vuz3180, vuz3190), vuz367) 67.72/34.81 new_primQuotInt40(Succ(vuz4540), vuz455, vuz3170) -> new_primQuotInt19(Succ(vuz4540), Succ(vuz4540), Zero, vuz3170) 67.72/34.81 new_primQuotInt29(vuz374, vuz377, vuz489, vuz376, vuz488, vuz375) -> new_primQuotInt39(vuz374, vuz489, vuz377, vuz375) 67.72/34.81 new_primQuotInt19(vuz446, vuz447, vuz3190, vuz3170) -> new_primQuotInt20(vuz446, new_esEs(Neg(vuz447)), vuz447, vuz3190, vuz3170) 67.72/34.81 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.72/34.81 new_primQuotInt74(Zero, Zero, vuz451, vuz450, vuz31900, vuz3170) -> new_primQuotInt22(Zero, Zero, Succ(vuz31900), vuz3170) 67.72/34.81 new_primQuotInt51(vuz428, True, vuz429, vuz3190, vuz3170) -> new_primQuotInt82(vuz428, new_esEs(new_sr(Pos(vuz3190), Neg(vuz3170))), vuz429, vuz3190, vuz3170) 67.72/34.81 new_primQuotInt90(vuz370, vuz373, vuz487, vuz372, vuz486, vuz371) -> new_primQuotInt91(vuz370, new_primEqInt3(new_primPlusNat1(vuz373, vuz487)), new_primPlusNat1(vuz373, vuz487), vuz371) 67.72/34.81 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.72/34.81 new_primQuotInt32(vuz416, Pos(Succ(vuz54900))) -> Pos(new_primDivNatS1(vuz416, vuz54900)) 67.72/34.81 new_primQuotInt83(vuz366, True, vuz505, vuz367) -> new_primQuotInt44(vuz366) 67.72/34.81 new_primQuotInt33(vuz398, False, vuz399, vuz3190, vuz3170) -> new_primQuotInt34(vuz398, vuz399, vuz3190, vuz3170) 67.72/34.81 new_primQuotInt36(Succ(vuz4090), Zero, vuz411, vuz410, vuz3190, vuz31700) -> new_primQuotInt18(Succ(vuz4090), Succ(vuz4090), vuz3190, Succ(vuz31700)) 67.72/34.81 new_quot(Neg(Succ(vuz31600)), Neg(Zero), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt75(new_primMulNat0(vuz3180, vuz3190), new_primMulNat0(vuz3180, vuz3190), vuz3190) 67.72/34.81 new_primQuotInt81(vuz390, vuz393, Neg(vuz3180), vuz3190, vuz392, vuz391) -> new_primQuotInt11(vuz390, vuz393, new_primMulNat0(vuz3180, vuz3190), vuz392, new_primMulNat0(vuz3180, vuz3190), vuz391) 67.72/34.81 new_primQuotInt71(Succ(vuz4240), vuz425, vuz3170) -> new_primQuotInt50(Succ(vuz4240), Succ(vuz4240), Zero, vuz3170) 67.72/34.81 new_primQuotInt40(Zero, vuz455, vuz3170) -> new_primQuotInt22(Zero, Zero, Zero, vuz3170) 67.72/34.81 new_negate0(Neg(vuz300)) -> Pos(vuz300) 67.72/34.81 new_primQuotInt62(Zero, Succ(vuz4000), vuz403, vuz402, vuz3190, vuz31700) -> new_primQuotInt19(Succ(vuz4000), Succ(vuz4000), vuz3190, Succ(vuz31700)) 67.72/34.81 new_reduce2Reduce1(vuz316, vuz317, vuz318, vuz319, False, ba) -> :%(new_quot(vuz316, vuz317, vuz318, vuz319, ba), new_quot0(vuz319, vuz317, vuz316, vuz318, ba)) 67.72/34.81 new_primQuotInt9(vuz428, vuz429, vuz3190, vuz3170) -> new_primQuotInt10(vuz428, new_esEs(new_abs0(vuz3190, vuz3170)), new_abs1(vuz429), new_abs0(vuz3190, vuz3170)) 67.72/34.81 new_primQuotInt73(Succ(vuz4440), vuz445, vuz3170) -> new_primQuotInt17(Succ(vuz4440), Succ(vuz4440), Zero, vuz3170) 67.72/34.81 new_primQuotInt87(vuz446, True, vuz447, vuz3190, vuz3170) -> new_primQuotInt55(vuz446) 67.72/34.81 new_primQuotInt71(Zero, vuz425, vuz3170) -> new_primQuotInt68(Zero, Zero, Zero, vuz3170) 67.72/34.81 new_primQuotInt13(vuz348, True, vuz349, vuz3190, vuz3170) -> new_primQuotInt15(vuz348, new_esEs(new_sr(Pos(vuz3190), Pos(vuz3170))), vuz349, vuz3190, vuz3170) 67.72/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Pos(Succ(vuz31800)), Pos(Succ(vuz31900)), ty_Int) -> new_primQuotInt72(new_primPlusNat1(new_primMulNat0(vuz31800, Succ(vuz31900)), Succ(vuz31900)), new_primMulNat0(vuz3160, vuz3170), new_primPlusNat1(new_primMulNat0(vuz31800, Succ(vuz31900)), Succ(vuz31900)), new_primMulNat0(vuz3160, vuz3170), vuz31900, vuz3170) 67.72/34.81 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.72/34.81 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.72/34.81 new_primQuotInt69(vuz366, False, vuz505, vuz367) -> new_primQuotInt49(vuz366, vuz505, vuz367) 67.72/34.81 new_primMinusNatS2(Zero, Zero) -> Zero 67.72/34.81 new_primQuotInt84(vuz370, True, vuz508, vuz371) -> new_primQuotInt44(vuz370) 67.72/34.81 new_primQuotInt25(vuz374, False, vuz511, vuz375) -> new_primQuotInt26(vuz374, vuz511, vuz375) 67.72/34.81 new_primQuotInt39(vuz374, Zero, Zero, vuz375) -> new_primQuotInt54(vuz374, new_primEqInt4(Zero), Zero, vuz375) 67.72/34.81 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.72/34.81 new_primQuotInt86(vuz416, False, vuz417, vuz3190, vuz3170) -> new_primQuotInt37(vuz416, vuz417, vuz3190, vuz3170) 67.72/34.81 new_primQuotInt10(vuz428, False, vuz552, vuz544) -> new_primQuotInt70(vuz428, new_gcd0Gcd'2(vuz544, vuz552)) 67.72/34.81 new_quot(Neg(vuz3160), Neg(vuz3170), Neg(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt45(new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), vuz3190, vuz3170) 67.72/34.81 new_primDivNatS1(Succ(Zero), Zero) -> Succ(new_primDivNatS1(new_primMinusNatS1, Zero)) 67.72/34.81 new_quot(Pos(Zero), Pos(Zero), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt16(new_primMulNat0(vuz3180, vuz3190), new_primMulNat0(vuz3180, vuz3190), vuz3190) 67.72/34.81 new_primQuotInt35(vuz398, True, vuz399, vuz3190, vuz3170) -> new_primQuotInt44(vuz398) 67.72/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt17(new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), vuz3190, vuz3170) 67.72/34.81 new_primQuotInt23(vuz416, False, vuz417, vuz3190, vuz3170) -> new_primQuotInt37(vuz416, vuz417, vuz3190, vuz3170) 67.72/34.81 new_sr(Pos(vuz30610), Neg(vuz30710)) -> Neg(new_primMulNat0(vuz30610, vuz30710)) 67.72/34.81 new_sr(Neg(vuz30610), Pos(vuz30710)) -> Neg(new_primMulNat0(vuz30610, vuz30710)) 67.72/34.81 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.72/34.81 new_primPlusNat1(Succ(vuz33500), Succ(vuz3071000)) -> Succ(Succ(new_primPlusNat1(vuz33500, vuz3071000))) 67.72/34.81 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.72/34.81 new_primQuotInt46(vuz360, False, vuz361, vuz3190, vuz3170) -> new_primQuotInt60(vuz360, vuz361, vuz3190, vuz3170) 67.72/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Pos(Succ(vuz31800)), Pos(Zero), ty_Int) -> new_primQuotInt73(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz3170) 67.72/34.81 new_primDivNatS01(vuz574, vuz575, Zero, Zero) -> new_primDivNatS02(vuz574, vuz575) 67.72/34.81 new_primQuotInt33(vuz398, True, vuz399, vuz3190, vuz3170) -> new_primQuotInt35(vuz398, new_esEs(new_sr(Pos(vuz3190), Pos(vuz3170))), vuz399, vuz3190, vuz3170) 67.72/34.81 new_primQuotInt70(vuz428, Pos(Succ(vuz55200))) -> Neg(new_primDivNatS1(vuz428, vuz55200)) 67.72/34.81 new_absReal1(vuz554, Neg(Zero)) -> new_absReal11(vuz554) 67.72/34.81 new_primQuotInt56(Zero, Zero, vuz459, vuz458, vuz3190, vuz31700) -> new_primQuotInt45(Zero, Zero, vuz3190, Succ(vuz31700)) 67.72/34.81 new_primQuotInt39(vuz374, Succ(vuz4890), Zero, vuz375) -> new_primQuotInt54(vuz374, new_primEqInt4(Succ(vuz4890)), Succ(vuz4890), vuz375) 67.72/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Neg(Succ(vuz31800)), Neg(Succ(vuz31900)), ty_Int) -> new_primQuotInt47(new_primPlusNat1(new_primMulNat0(vuz31800, Succ(vuz31900)), Succ(vuz31900)), new_primMulNat0(vuz3160, vuz3170), new_primPlusNat1(new_primMulNat0(vuz31800, Succ(vuz31900)), Succ(vuz31900)), new_primMulNat0(vuz3160, vuz3170), vuz31900, vuz3170) 67.72/34.81 new_primQuotInt63(vuz378, False, vuz514, vuz379) -> new_primQuotInt41(vuz378, vuz514, vuz379) 67.72/34.81 new_abs2(vuz3190, vuz3170) -> new_absReal1(new_sr(Neg(vuz3190), Neg(vuz3170)), new_sr(Neg(vuz3190), Neg(vuz3170))) 67.72/34.81 new_primQuotInt68(vuz354, vuz355, vuz3190, vuz3170) -> new_primQuotInt92(vuz354, new_esEs(Pos(vuz355)), vuz355, vuz3190, vuz3170) 67.72/34.81 new_primQuotInt36(Zero, Succ(vuz4080), vuz411, vuz410, vuz3190, vuz31700) -> new_primQuotInt17(Succ(vuz4080), Succ(vuz4080), vuz3190, Succ(vuz31700)) 67.72/34.81 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.72/34.81 new_quot(Pos(Succ(vuz31600)), Pos(Succ(vuz31700)), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt36(new_primPlusNat1(new_primMulNat0(vuz31600, Succ(vuz31700)), Succ(vuz31700)), new_primMulNat0(vuz3180, vuz3190), new_primPlusNat1(new_primMulNat0(vuz31600, Succ(vuz31700)), Succ(vuz31700)), new_primMulNat0(vuz3180, vuz3190), vuz3190, vuz31700) 67.72/34.81 new_primQuotInt77(Succ(vuz4700), vuz471, vuz3190) -> new_primQuotInt50(Succ(vuz4700), Succ(vuz4700), vuz3190, Zero) 67.72/34.81 new_primQuotInt67(Succ(vuz4190), Zero, vuz421, vuz420, vuz31900, vuz3170) -> new_primQuotInt68(Succ(vuz4190), Succ(vuz4190), Succ(vuz31900), vuz3170) 67.72/34.81 new_primQuotInt65(vuz366, vuz369, vuz481, vuz368, vuz480, vuz367) -> new_primQuotInt69(vuz366, new_primEqInt4(new_primPlusNat1(vuz369, vuz481)), new_primPlusNat1(vuz369, vuz481), vuz367) 67.72/34.81 new_primQuotInt31(vuz416, False, vuz549, vuz542) -> new_primQuotInt32(vuz416, new_gcd0Gcd'2(vuz542, vuz549)) 67.72/34.81 new_primQuotInt82(vuz428, True, vuz429, vuz3190, vuz3170) -> new_primQuotInt55(vuz428) 67.72/34.81 new_primQuotInt14(vuz348, vuz349, vuz3190, vuz3170) -> new_primQuotInt10(vuz348, new_esEs(new_abs3(vuz3190, vuz3170)), new_abs1(vuz349), new_abs3(vuz3190, vuz3170)) 67.72/34.81 new_gcd0Gcd'2(vuz542, vuz549) -> new_gcd0Gcd'10(new_esEs(new_rem(vuz549, vuz542)), vuz542, vuz549) 67.72/34.81 new_primQuotInt77(Zero, vuz471, vuz3190) -> new_primQuotInt68(Zero, Zero, vuz3190, Zero) 67.72/34.81 new_primQuotInt66(vuz426, False, vuz427, vuz3190, vuz3170) -> new_primQuotInt21(vuz426, vuz427, vuz3190, vuz3170) 67.72/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Pos(Succ(vuz31800)), Pos(Succ(vuz31900)), ty_Int) -> new_primQuotInt67(new_primPlusNat1(new_primMulNat0(vuz31800, Succ(vuz31900)), Succ(vuz31900)), new_primMulNat0(vuz3160, vuz3170), new_primPlusNat1(new_primMulNat0(vuz31800, Succ(vuz31900)), Succ(vuz31900)), new_primMulNat0(vuz3160, vuz3170), vuz31900, vuz3170) 67.72/34.81 new_primQuotInt48(vuz426, vuz427, vuz3190, vuz3170) -> new_primQuotInt66(vuz426, new_esEs(Neg(vuz427)), vuz427, vuz3190, vuz3170) 67.72/34.81 new_quot(Pos(Succ(vuz31600)), Pos(Zero), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt24(new_primMulNat0(vuz3180, vuz3190), new_primMulNat0(vuz3180, vuz3190), vuz3190) 67.72/34.81 new_primQuotInt22(vuz416, vuz417, vuz3190, vuz3170) -> new_primQuotInt23(vuz416, new_esEs(Pos(vuz417)), vuz417, vuz3190, vuz3170) 67.72/34.81 new_sr(Neg(vuz30610), Neg(vuz30710)) -> Pos(new_primMulNat0(vuz30610, vuz30710)) 67.72/34.81 new_primDivNatS01(vuz574, vuz575, Succ(vuz5760), Zero) -> new_primDivNatS02(vuz574, vuz575) 67.72/34.81 new_primQuotInt89(vuz426, False, vuz427, vuz3190, vuz3170) -> new_primQuotInt21(vuz426, vuz427, vuz3190, vuz3170) 67.72/34.81 new_esEs0(vuz3061, vuz3071, ty_Integer) -> error([]) 67.72/34.81 new_primQuotInt87(vuz446, False, vuz447, vuz3190, vuz3170) -> new_primQuotInt88(vuz446, vuz447, vuz3190, vuz3170) 67.72/34.81 new_negate0(Pos(vuz300)) -> Neg(vuz300) 67.72/34.81 new_primQuotInt64(vuz394, vuz397, Pos(vuz3180), vuz3190, vuz396, vuz395) -> new_primQuotInt52(vuz394, vuz397, new_primMulNat0(vuz3180, vuz3190), vuz396, new_primMulNat0(vuz3180, vuz3190), vuz395) 67.72/34.81 new_primQuotInt88(vuz446, vuz447, vuz3190, vuz3170) -> new_primQuotInt10(vuz446, new_esEs(new_abs4(vuz3190, vuz3170)), new_abs1(vuz447), new_abs4(vuz3190, vuz3170)) 67.72/34.81 new_primQuotInt42(vuz354, True, vuz355, vuz3190, vuz3170) -> new_primQuotInt44(vuz354) 67.72/34.81 new_primQuotInt76(Succ(vuz4650), Succ(vuz4640), vuz467, vuz466, vuz3190, vuz31700) -> new_primQuotInt76(vuz4650, vuz4640, vuz4650, vuz4640, vuz3190, vuz31700) 67.72/34.81 new_primQuotInt72(Succ(vuz4390), Zero, vuz441, vuz440, vuz31900, vuz3170) -> new_primQuotInt18(Succ(vuz4390), Succ(vuz4390), Succ(vuz31900), vuz3170) 67.72/34.81 new_primQuotInt59(vuz378, vuz381, Pos(vuz3180), vuz3190, vuz380, vuz379) -> new_primQuotInt53(vuz378, vuz381, new_primMulNat0(vuz3180, vuz3190), vuz380, new_primMulNat0(vuz3180, vuz3190), vuz379) 67.72/34.81 new_primQuotInt75(Zero, vuz463, vuz3190) -> new_primQuotInt45(Zero, Zero, vuz3190, Zero) 67.72/34.81 new_primEqInt3(Zero) -> new_primEqInt2 67.72/34.81 new_primMinusNatS1 -> Zero 67.72/34.81 new_negate(:%(vuz30, vuz31)) -> :%(new_negate0(vuz30), vuz31) 67.72/34.81 new_primQuotInt70(vuz428, Neg(Zero)) -> new_error 67.72/34.81 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.72/34.81 new_quot(Pos(vuz3160), Pos(vuz3170), Neg(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt22(new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), vuz3190, vuz3170) 67.72/34.81 new_gcd0Gcd'10(True, vuz542, vuz549) -> vuz542 67.72/34.81 new_primQuotInt12(vuz366, Succ(vuz3690), Succ(vuz4830), vuz367) -> new_primQuotInt12(vuz366, vuz3690, vuz4830, vuz367) 67.72/34.81 new_primQuotInt57(vuz382, vuz385, Pos(vuz3180), vuz3190, vuz384, vuz383) -> new_primQuotInt38(vuz382, vuz385, new_primMulNat0(vuz3180, vuz3190), vuz384, new_primMulNat0(vuz3180, vuz3190), vuz383) 67.72/34.81 new_primEqInt4(Succ(vuz3250)) -> new_primEqInt(vuz3250) 67.72/34.81 new_primQuotInt78(vuz366, vuz369, Neg(vuz3180), vuz3190, vuz368, vuz367) -> new_primQuotInt52(vuz366, vuz369, new_primMulNat0(vuz3180, vuz3190), vuz368, new_primMulNat0(vuz3180, vuz3190), vuz367) 67.72/34.81 new_quot0(Neg(vuz3190), Neg(vuz3170), Neg(vuz3160), vuz318, ty_Int) -> new_primQuotInt64(new_primMulNat0(vuz3190, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz318, vuz3190, new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3190, vuz3170)) 67.72/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Neg(Zero), Neg(Succ(vuz31900)), ty_Int) -> new_primQuotInt47(Zero, new_primMulNat0(vuz3160, vuz3170), Zero, new_primMulNat0(vuz3160, vuz3170), vuz31900, vuz3170) 67.72/34.81 new_absReal10(vuz554) -> vuz554 67.72/34.81 new_primQuotInt52(vuz366, vuz369, vuz483, vuz368, vuz482, vuz367) -> new_primQuotInt12(vuz366, vuz369, vuz483, vuz367) 67.72/34.81 new_primQuotInt86(vuz416, True, vuz417, vuz3190, vuz3170) -> new_primQuotInt44(vuz416) 67.72/34.81 new_primQuotInt45(vuz360, vuz361, vuz3190, vuz3170) -> new_primQuotInt46(vuz360, new_esEs(Pos(vuz361)), vuz361, vuz3190, vuz3170) 67.72/34.81 new_primQuotInt12(vuz366, Zero, Succ(vuz4830), vuz367) -> new_primQuotInt91(vuz366, new_primEqInt3(Succ(vuz4830)), Succ(vuz4830), vuz367) 67.72/34.81 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.72/34.81 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.72/34.81 new_primQuotInt17(vuz348, vuz349, vuz3190, vuz3170) -> new_primQuotInt13(vuz348, new_esEs(Neg(vuz349)), vuz349, vuz3190, vuz3170) 67.72/34.81 new_primQuotInt67(Zero, Succ(vuz4180), vuz421, vuz420, vuz31900, vuz3170) -> new_primQuotInt50(Succ(vuz4180), Succ(vuz4180), Succ(vuz31900), vuz3170) 67.72/34.81 new_primQuotInt92(vuz354, False, vuz355, vuz3190, vuz3170) -> new_primQuotInt43(vuz354, vuz355, vuz3190, vuz3170) 67.72/34.81 new_quot(Pos(Zero), Pos(Zero), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt24(new_primMulNat0(vuz3180, vuz3190), new_primMulNat0(vuz3180, vuz3190), vuz3190) 67.72/34.81 new_primQuotInt75(Succ(vuz4620), vuz463, vuz3190) -> new_primQuotInt48(Succ(vuz4620), Succ(vuz4620), vuz3190, Zero) 67.72/34.81 new_primQuotInt70(vuz428, Neg(Succ(vuz55200))) -> Pos(new_primDivNatS1(vuz428, vuz55200)) 67.72/34.81 new_quot(Pos(vuz3160), Pos(vuz3170), Pos(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt18(new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), vuz3190, vuz3170) 67.72/34.81 new_primPlusNat0(Succ(vuz3350), vuz307100) -> Succ(Succ(new_primPlusNat1(vuz3350, vuz307100))) 67.72/34.81 new_primQuotInt84(vuz370, False, vuz508, vuz371) -> new_primQuotInt85(vuz370, vuz508, vuz371) 67.72/34.81 new_primQuotInt42(vuz354, False, vuz355, vuz3190, vuz3170) -> new_primQuotInt43(vuz354, vuz355, vuz3190, vuz3170) 67.72/34.81 new_primQuotInt43(vuz354, vuz355, vuz3190, vuz3170) -> new_primQuotInt31(vuz354, new_esEs(new_abs0(vuz3190, vuz3170)), new_abs(vuz355), new_abs0(vuz3190, vuz3170)) 67.72/34.81 new_primEqInt2 -> True 67.72/34.81 new_primQuotInt62(Zero, Zero, vuz403, vuz402, vuz3190, vuz31700) -> new_primQuotInt22(Zero, Zero, vuz3190, Succ(vuz31700)) 67.72/34.81 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.72/34.81 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.72/34.81 new_primPlusNat1(Zero, Zero) -> Zero 67.72/34.81 new_primQuotInt16(Succ(vuz4140), vuz415, vuz3190) -> new_primQuotInt17(Succ(vuz4140), Succ(vuz4140), vuz3190, Zero) 67.72/34.81 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.72/34.81 new_primMulNat0(Succ(vuz306100), Zero) -> Zero 67.72/34.81 new_primMulNat0(Zero, Succ(vuz307100)) -> Zero 67.72/34.81 new_primQuotInt16(Zero, vuz415, vuz3190) -> new_primQuotInt18(Zero, Zero, vuz3190, Zero) 67.72/34.81 new_sr(Pos(vuz30610), Pos(vuz30710)) -> Pos(new_primMulNat0(vuz30610, vuz30710)) 67.72/34.81 new_primQuotInt55(vuz426) -> error([]) 67.72/34.81 new_primQuotInt12(vuz366, Zero, Zero, vuz367) -> new_primQuotInt69(vuz366, new_primEqInt4(Zero), Zero, vuz367) 67.72/34.81 new_primPlusNat0(Zero, vuz307100) -> Succ(vuz307100) 67.72/34.81 new_primQuotInt92(vuz354, True, vuz355, vuz3190, vuz3170) -> new_primQuotInt42(vuz354, new_esEs(new_sr(Pos(vuz3190), Neg(vuz3170))), vuz355, vuz3190, vuz3170) 67.72/34.81 new_primQuotInt72(Zero, Succ(vuz4380), vuz441, vuz440, vuz31900, vuz3170) -> new_primQuotInt17(Succ(vuz4380), Succ(vuz4380), Succ(vuz31900), vuz3170) 67.72/34.81 new_quot(Pos(Succ(vuz31600)), Pos(Succ(vuz31700)), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt62(new_primPlusNat1(new_primMulNat0(vuz31600, Succ(vuz31700)), Succ(vuz31700)), new_primMulNat0(vuz3180, vuz3190), new_primPlusNat1(new_primMulNat0(vuz31600, Succ(vuz31700)), Succ(vuz31700)), new_primMulNat0(vuz3180, vuz3190), vuz3190, vuz31700) 67.72/34.81 new_primQuotInt21(vuz426, vuz427, vuz3190, vuz3170) -> new_primQuotInt10(vuz426, new_esEs(new_abs2(vuz3190, vuz3170)), new_abs1(vuz427), new_abs2(vuz3190, vuz3170)) 67.72/34.81 new_primQuotInt91(vuz370, True, vuz508, vuz371) -> new_primQuotInt84(vuz370, new_esEs(Pos(vuz371)), vuz508, vuz371) 67.72/34.81 new_primQuotInt51(vuz428, False, vuz429, vuz3190, vuz3170) -> new_primQuotInt9(vuz428, vuz429, vuz3190, vuz3170) 67.72/34.81 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.72/34.81 new_primQuotInt47(Succ(vuz4310), Zero, vuz433, vuz432, vuz31900, vuz3170) -> new_primQuotInt45(Succ(vuz4310), Succ(vuz4310), Succ(vuz31900), vuz3170) 67.72/34.81 new_primQuotInt83(vuz366, False, vuz505, vuz367) -> new_primQuotInt49(vuz366, vuz505, vuz367) 67.72/34.81 new_quot(Neg(Zero), Neg(Zero), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt75(new_primMulNat0(vuz3180, vuz3190), new_primMulNat0(vuz3180, vuz3190), vuz3190) 67.72/34.81 new_primEqInt0(vuz3260) -> False 67.72/34.81 new_primQuotInt18(vuz398, vuz399, vuz3190, vuz3170) -> new_primQuotInt33(vuz398, new_esEs(Pos(vuz399)), vuz399, vuz3190, vuz3170) 67.72/34.81 new_abs3(vuz3190, vuz3170) -> new_absReal1(new_sr(Pos(vuz3190), Pos(vuz3170)), new_sr(Pos(vuz3190), Pos(vuz3170))) 67.72/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Pos(Zero), Pos(Zero), ty_Int) -> new_primQuotInt73(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz3170) 67.72/34.81 new_primQuotInt28(vuz374, vuz377, Pos(vuz3180), vuz3190, vuz376, vuz375) -> new_primQuotInt29(vuz374, vuz377, new_primMulNat0(vuz3180, vuz3190), vuz376, new_primMulNat0(vuz3180, vuz3190), vuz375) 67.72/34.81 new_primQuotInt58(Succ(vuz4360), vuz437, vuz3170) -> new_primQuotInt48(Succ(vuz4360), Succ(vuz4360), Zero, vuz3170) 67.72/34.81 new_quot(Neg(vuz3160), Neg(vuz3170), Pos(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt68(new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), vuz3190, vuz3170) 67.72/34.81 new_primMulNat0(Succ(vuz306100), Succ(vuz307100)) -> new_primPlusNat0(new_primMulNat0(vuz306100, Succ(vuz307100)), vuz307100) 67.72/34.81 new_primQuotInt10(vuz428, True, vuz552, vuz544) -> new_primQuotInt70(vuz428, vuz552) 67.72/34.81 new_primQuotInt49(vuz366, vuz505, vuz367) -> new_primQuotInt31(vuz366, new_esEs(new_abs(vuz367)), new_abs(vuz505), new_abs(vuz367)) 67.72/34.81 new_primEqInt3(Succ(vuz3260)) -> new_primEqInt0(vuz3260) 67.72/34.81 new_primQuotInt61(vuz360, False, vuz361, vuz3190, vuz3170) -> new_primQuotInt60(vuz360, vuz361, vuz3190, vuz3170) 67.72/34.81 new_primQuotInt61(vuz360, True, vuz361, vuz3190, vuz3170) -> new_primQuotInt44(vuz360) 67.72/34.81 new_primQuotInt54(vuz378, True, vuz514, vuz379) -> new_primQuotInt63(vuz378, new_esEs(Neg(vuz379)), vuz514, vuz379) 67.72/34.81 new_primPlusNat1(Succ(vuz33500), Zero) -> Succ(vuz33500) 67.72/34.81 new_primPlusNat1(Zero, Succ(vuz3071000)) -> Succ(vuz3071000) 67.72/34.81 new_primQuotInt82(vuz428, False, vuz429, vuz3190, vuz3170) -> new_primQuotInt9(vuz428, vuz429, vuz3190, vuz3170) 67.72/34.81 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.72/34.81 new_primQuotInt74(Succ(vuz4490), Succ(vuz4480), vuz451, vuz450, vuz31900, vuz3170) -> new_primQuotInt74(vuz4490, vuz4480, vuz4490, vuz4480, vuz31900, vuz3170) 67.72/34.81 new_primQuotInt38(vuz378, vuz381, vuz495, vuz380, vuz494, vuz379) -> new_primQuotInt39(vuz378, vuz381, vuz495, vuz379) 67.72/34.81 new_primQuotInt66(vuz426, True, vuz427, vuz3190, vuz3170) -> new_primQuotInt89(vuz426, new_esEs(new_sr(Neg(vuz3190), Neg(vuz3170))), vuz427, vuz3190, vuz3170) 67.72/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Neg(Zero), Neg(Zero), ty_Int) -> new_primQuotInt58(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz3170) 67.72/34.81 new_primQuotInt24(Zero, vuz407, vuz3190) -> new_primQuotInt22(Zero, Zero, vuz3190, Zero) 67.72/34.81 new_quot0(vuz319, vuz317, vuz316, vuz318, ty_Integer) -> error([]) 67.72/34.81 new_primQuotInt70(vuz428, Pos(Zero)) -> new_error 67.72/34.81 new_esEs0(vuz3061, vuz3071, ty_Int) -> new_esEs(new_sr(vuz3061, vuz3071)) 67.72/34.81 new_primQuotInt76(Succ(vuz4650), Zero, vuz467, vuz466, vuz3190, vuz31700) -> new_primQuotInt68(Succ(vuz4650), Succ(vuz4650), vuz3190, Succ(vuz31700)) 67.72/34.81 new_primDivNatS1(Succ(Succ(vuz41600)), Succ(vuz549000)) -> new_primDivNatS01(vuz41600, vuz549000, vuz41600, vuz549000) 67.72/34.81 new_primEqInt1 -> True 67.72/34.81 new_quot0(Pos(vuz3190), Neg(vuz3170), Neg(vuz3160), vuz318, ty_Int) -> new_primQuotInt59(new_primMulNat0(vuz3190, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz318, vuz3190, new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3190, vuz3170)) 67.72/34.81 new_primQuotInt41(vuz378, vuz514, vuz379) -> new_primQuotInt10(vuz378, new_esEs(new_abs1(vuz379)), new_abs(vuz514), new_abs1(vuz379)) 67.72/34.81 new_primEqInt(vuz3250) -> False 67.72/34.81 new_ps(:%(vuz3060, vuz3061), :%(vuz3070, vuz3071), h) -> new_reduce2Reduce1(vuz3060, vuz3071, vuz3070, vuz3061, new_esEs0(vuz3061, vuz3071, h), h) 67.72/34.81 new_primQuotInt54(vuz378, False, vuz514, vuz379) -> new_primQuotInt41(vuz378, vuz514, vuz379) 67.72/34.81 new_primQuotInt23(vuz416, True, vuz417, vuz3190, vuz3170) -> new_primQuotInt86(vuz416, new_esEs(new_sr(Neg(vuz3190), Pos(vuz3170))), vuz417, vuz3190, vuz3170) 67.72/34.81 new_reduce2Reduce1(vuz316, vuz317, vuz318, vuz319, True, ba) -> error([]) 67.72/34.81 new_primQuotInt37(vuz416, vuz417, vuz3190, vuz3170) -> new_primQuotInt31(vuz416, new_esEs(new_abs4(vuz3190, vuz3170)), new_abs(vuz417), new_abs4(vuz3190, vuz3170)) 67.72/34.81 new_primQuotInt26(vuz374, vuz511, vuz375) -> new_primQuotInt10(vuz374, new_esEs(new_abs1(vuz375)), new_abs1(vuz511), new_abs1(vuz375)) 67.72/34.81 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.72/34.81 new_quot(Neg(Succ(vuz31600)), Neg(Succ(vuz31700)), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt56(new_primPlusNat1(new_primMulNat0(vuz31600, Succ(vuz31700)), Succ(vuz31700)), new_primMulNat0(vuz3180, vuz3190), new_primPlusNat1(new_primMulNat0(vuz31600, Succ(vuz31700)), Succ(vuz31700)), new_primMulNat0(vuz3180, vuz3190), vuz3190, vuz31700) 67.72/34.81 new_primQuotInt32(vuz416, Neg(Zero)) -> new_error 67.72/34.81 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.72/34.81 new_gcd0Gcd'00(vuz542, vuz557) -> new_gcd0Gcd'2(vuz557, vuz542) 67.72/34.81 new_abs(vuz399) -> new_absReal1(Pos(vuz399), Pos(vuz399)) 67.72/34.81 new_quot(vuz316, vuz317, vuz318, vuz319, ty_Integer) -> error([]) 67.72/34.81 new_quot0(Pos(vuz3190), Pos(vuz3170), Pos(vuz3160), vuz318, ty_Int) -> new_primQuotInt78(new_primMulNat0(vuz3190, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz318, vuz3190, new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3190, vuz3170)) 67.72/34.81 new_primQuotInt47(Succ(vuz4310), Succ(vuz4300), vuz433, vuz432, vuz31900, vuz3170) -> new_primQuotInt47(vuz4310, vuz4300, vuz4310, vuz4300, vuz31900, vuz3170) 67.72/34.81 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.72/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt50(new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), vuz3190, vuz3170) 67.72/34.81 new_primQuotInt15(vuz348, False, vuz349, vuz3190, vuz3170) -> new_primQuotInt14(vuz348, vuz349, vuz3190, vuz3170) 67.72/34.81 new_primModNatS1(Zero, vuz54200) -> Zero 67.72/34.81 new_quot(Pos(Zero), Pos(Succ(vuz31700)), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt36(Zero, new_primMulNat0(vuz3180, vuz3190), Zero, new_primMulNat0(vuz3180, vuz3190), vuz3190, vuz31700) 67.72/34.81 new_quot(Neg(Zero), Neg(Succ(vuz31700)), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt76(Zero, new_primMulNat0(vuz3180, vuz3190), Zero, new_primMulNat0(vuz3180, vuz3190), vuz3190, vuz31700) 67.72/34.81 new_primQuotInt46(vuz360, True, vuz361, vuz3190, vuz3170) -> new_primQuotInt61(vuz360, new_esEs(new_sr(Neg(vuz3190), Neg(vuz3170))), vuz361, vuz3190, vuz3170) 67.72/34.81 new_quot(Neg(Succ(vuz31600)), Neg(Zero), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt77(new_primMulNat0(vuz3180, vuz3190), new_primMulNat0(vuz3180, vuz3190), vuz3190) 67.72/34.81 new_quot0(Neg(vuz3190), Neg(vuz3170), Pos(vuz3160), vuz318, ty_Int) -> new_primQuotInt81(new_primMulNat0(vuz3190, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz318, vuz3190, new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3190, vuz3170)) 67.72/34.81 new_primQuotInt60(vuz360, vuz361, vuz3190, vuz3170) -> new_primQuotInt31(vuz360, new_esEs(new_abs2(vuz3190, vuz3170)), new_abs(vuz361), new_abs2(vuz3190, vuz3170)) 67.72/34.81 new_error -> error([]) 67.72/34.81 new_primQuotInt36(Succ(vuz4090), Succ(vuz4080), vuz411, vuz410, vuz3190, vuz31700) -> new_primQuotInt36(vuz4090, vuz4080, vuz4090, vuz4080, vuz3190, vuz31700) 67.72/34.81 new_primQuotInt34(vuz398, vuz399, vuz3190, vuz3170) -> new_primQuotInt31(vuz398, new_esEs(new_abs3(vuz3190, vuz3170)), new_abs(vuz399), new_abs3(vuz3190, vuz3170)) 67.72/34.81 new_primQuotInt35(vuz398, False, vuz399, vuz3190, vuz3170) -> new_primQuotInt34(vuz398, vuz399, vuz3190, vuz3170) 67.72/34.81 new_primQuotInt62(Succ(vuz4010), Zero, vuz403, vuz402, vuz3190, vuz31700) -> new_primQuotInt22(Succ(vuz4010), Succ(vuz4010), vuz3190, Succ(vuz31700)) 67.72/34.81 new_primQuotInt63(vuz378, True, vuz514, vuz379) -> new_primQuotInt55(vuz378) 67.72/34.81 new_primQuotInt72(Succ(vuz4390), Succ(vuz4380), vuz441, vuz440, vuz31900, vuz3170) -> new_primQuotInt72(vuz4390, vuz4380, vuz4390, vuz4380, vuz31900, vuz3170) 67.72/34.81 new_primQuotInt39(vuz374, Succ(vuz4890), Succ(vuz3770), vuz375) -> new_primQuotInt39(vuz374, vuz4890, vuz3770, vuz375) 67.72/34.81 new_absReal1(vuz554, Neg(Succ(vuz55500))) -> new_negate0(vuz554) 67.72/34.81 new_primQuotInt31(vuz416, True, vuz549, vuz542) -> new_primQuotInt32(vuz416, vuz549) 67.72/34.81 new_primQuotInt91(vuz370, False, vuz508, vuz371) -> new_primQuotInt85(vuz370, vuz508, vuz371) 67.72/34.81 new_primQuotInt58(Zero, vuz437, vuz3170) -> new_primQuotInt45(Zero, Zero, Zero, vuz3170) 67.72/34.81 new_primQuotInt89(vuz426, True, vuz427, vuz3190, vuz3170) -> new_primQuotInt55(vuz426) 67.72/34.81 new_primQuotInt47(Zero, Zero, vuz433, vuz432, vuz31900, vuz3170) -> new_primQuotInt45(Zero, Zero, Succ(vuz31900), vuz3170) 67.72/34.81 67.72/34.81 The set Q consists of the following terms: 67.72/34.81 67.72/34.81 new_primQuotInt20(x0, True, x1, x2, x3) 67.72/34.81 new_primQuotInt26(x0, x1, x2) 67.72/34.81 new_primPlusNat1(Succ(x0), Zero) 67.72/34.81 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.72/34.81 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.72/34.81 new_primQuotInt23(x0, True, x1, x2, x3) 67.72/34.81 new_primQuotInt15(x0, True, x1, x2, x3) 67.72/34.81 new_primMinusNatS2(Succ(x0), Zero) 67.72/34.81 new_primQuotInt85(x0, x1, x2) 67.72/34.81 new_quot(Pos(x0), Neg(x1), Pos(Succ(x2)), Pos(Zero), ty_Int) 67.72/34.81 new_quot(Neg(x0), Pos(x1), Pos(Succ(x2)), Pos(Zero), ty_Int) 67.72/34.81 new_primQuotInt91(x0, True, x1, x2) 67.72/34.81 new_primQuotInt48(x0, x1, x2, x3) 67.72/34.81 new_absReal1(x0, Neg(Zero)) 67.72/34.81 new_primQuotInt92(x0, True, x1, x2, x3) 67.72/34.81 new_primDivNatS1(Zero, x0) 67.72/34.81 new_quot(Pos(x0), Neg(x1), Neg(Succ(x2)), Neg(Zero), ty_Int) 67.72/34.81 new_quot(Neg(x0), Pos(x1), Neg(Succ(x2)), Neg(Zero), ty_Int) 67.72/34.81 new_primDivNatS1(Succ(Zero), Zero) 67.72/34.81 new_primQuotInt67(Succ(x0), Succ(x1), x2, x3, x4, x5) 67.72/34.81 new_primQuotInt28(x0, x1, Pos(x2), x3, x4, x5) 67.72/34.81 new_primQuotInt58(Zero, x0, x1) 67.72/34.81 new_primQuotInt70(x0, Pos(Succ(x1))) 67.72/34.81 new_primQuotInt12(x0, Succ(x1), Succ(x2), x3) 67.72/34.81 new_primMulNat0(Zero, Zero) 67.72/34.81 new_primPlusNat1(Zero, Zero) 67.72/34.81 new_primQuotInt86(x0, False, x1, x2, x3) 67.72/34.81 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.72/34.81 new_primQuotInt75(Succ(x0), x1, x2) 67.72/34.81 new_primPlusNat0(Zero, x0) 67.72/34.81 new_primQuotInt60(x0, x1, x2, x3) 67.72/34.81 new_absReal1(x0, Pos(Zero)) 67.72/34.81 new_primDivNatS01(x0, x1, Succ(x2), Succ(x3)) 67.72/34.81 new_primQuotInt87(x0, False, x1, x2, x3) 67.72/34.81 new_primDivNatS01(x0, x1, Zero, Zero) 67.72/34.81 new_esEs0(x0, x1, ty_Int) 67.72/34.81 new_primQuotInt54(x0, True, x1, x2) 67.72/34.81 new_primQuotInt28(x0, x1, Neg(x2), x3, x4, x5) 67.72/34.81 new_primQuotInt41(x0, x1, x2) 67.72/34.81 new_primQuotInt63(x0, False, x1, x2) 67.72/34.81 new_primEqInt1 67.72/34.81 new_primQuotInt44(x0) 67.72/34.81 new_primQuotInt53(x0, x1, x2, x3, x4, x5) 67.72/34.81 new_quot0(Neg(x0), Neg(x1), Neg(x2), x3, ty_Int) 67.72/34.81 new_primQuotInt31(x0, True, x1, x2) 67.72/34.81 new_primQuotInt39(x0, Succ(x1), Zero, x2) 67.72/34.81 new_primDivNatS1(Succ(Zero), Succ(x0)) 67.72/34.81 new_quot(Neg(x0), Neg(x1), Neg(x2), Neg(x3), ty_Int) 67.72/34.81 new_quot0(Neg(x0), Pos(x1), Pos(x2), x3, ty_Int) 67.72/34.81 new_quot0(Pos(x0), Neg(x1), Pos(x2), x3, ty_Int) 67.72/34.81 new_quot0(Pos(x0), Pos(x1), Neg(x2), x3, ty_Int) 67.72/34.81 new_primQuotInt82(x0, False, x1, x2, x3) 67.72/34.81 new_reduce2Reduce1(x0, x1, x2, x3, True, x4) 67.72/34.81 new_quot(Pos(x0), Neg(x1), Pos(x2), Neg(x3), ty_Int) 67.72/34.81 new_quot(Neg(x0), Pos(x1), Pos(x2), Neg(x3), ty_Int) 67.72/34.81 new_quot(Neg(x0), Pos(x1), Neg(x2), Pos(x3), ty_Int) 67.72/34.81 new_quot(Pos(x0), Pos(x1), Neg(x2), Neg(x3), ty_Int) 67.72/34.81 new_quot(Neg(x0), Neg(x1), Pos(x2), Pos(x3), ty_Int) 67.72/34.81 new_quot(Pos(x0), Neg(x1), Neg(x2), Pos(x3), ty_Int) 67.72/34.81 new_primQuotInt40(Zero, x0, x1) 67.72/34.81 new_error 67.72/34.81 new_primQuotInt50(x0, x1, x2, x3) 67.72/34.81 new_primQuotInt71(Succ(x0), x1, x2) 67.72/34.81 new_primQuotInt46(x0, True, x1, x2, x3) 67.72/34.81 new_primQuotInt32(x0, Neg(Succ(x1))) 67.72/34.81 new_primQuotInt90(x0, x1, x2, x3, x4, x5) 67.72/34.81 new_primQuotInt9(x0, x1, x2, x3) 67.72/34.81 new_primQuotInt13(x0, True, x1, x2, x3) 67.72/34.81 new_primMinusNatS2(Zero, Succ(x0)) 67.72/34.81 new_rem(Pos(x0), Neg(Succ(x1))) 67.72/34.81 new_rem(Neg(x0), Pos(Succ(x1))) 67.72/34.81 new_primQuotInt79(x0, x1, Neg(x2), x3, x4, x5) 67.72/34.81 new_negate(:%(x0, x1)) 67.72/34.81 new_primQuotInt56(Zero, Zero, x0, x1, x2, x3) 67.72/34.81 new_primQuotInt40(Succ(x0), x1, x2) 67.72/34.81 new_primQuotInt66(x0, False, x1, x2, x3) 67.72/34.81 new_primQuotInt74(Zero, Zero, x0, x1, x2, x3) 67.72/34.81 new_quot(Pos(x0), Neg(x1), Pos(Zero), Pos(Zero), ty_Int) 67.72/34.81 new_quot(Neg(x0), Pos(x1), Pos(Zero), Pos(Zero), ty_Int) 67.72/34.81 new_primQuotInt80(x0, x1, Neg(x2), x3, x4, x5) 67.72/34.81 new_primQuotInt12(x0, Zero, Succ(x1), x2) 67.72/34.81 new_primQuotInt10(x0, True, x1, x2) 67.72/34.81 new_primQuotInt72(Zero, Succ(x0), x1, x2, x3, x4) 67.72/34.81 new_primQuotInt56(Succ(x0), Zero, x1, x2, x3, x4) 67.72/34.81 new_primQuotInt69(x0, True, x1, x2) 67.72/34.81 new_primQuotInt36(Succ(x0), Zero, x1, x2, x3, x4) 67.72/34.81 new_primQuotInt25(x0, True, x1, x2) 67.72/34.81 new_ps(:%(x0, x1), :%(x2, x3), x4) 67.72/34.81 new_primQuotInt68(x0, x1, x2, x3) 67.72/34.81 new_abs2(x0, x1) 67.72/34.81 new_primQuotInt17(x0, x1, x2, x3) 67.72/34.81 new_rem(Neg(x0), Neg(Succ(x1))) 67.72/34.81 new_quot(Neg(x0), Pos(x1), Neg(Zero), Neg(Zero), ty_Int) 67.72/34.81 new_quot(Pos(x0), Neg(x1), Neg(Zero), Neg(Zero), ty_Int) 67.72/34.81 new_primQuotInt55(x0) 67.72/34.81 new_quot(Pos(Succ(x0)), Pos(Succ(x1)), Neg(x2), Pos(x3), ty_Int) 67.72/34.81 new_primQuotInt84(x0, False, x1, x2) 67.72/34.81 new_quot(Pos(Succ(x0)), Pos(Succ(x1)), Pos(x2), Neg(x3), ty_Int) 67.72/34.81 new_primQuotInt61(x0, False, x1, x2, x3) 67.72/34.81 new_abs4(x0, x1) 67.72/34.81 new_negate0(Neg(x0)) 67.72/34.81 new_primQuotInt33(x0, True, x1, x2, x3) 67.72/34.81 new_primMulNat0(Zero, Succ(x0)) 67.72/34.81 new_primQuotInt57(x0, x1, Neg(x2), x3, x4, x5) 67.72/34.81 new_esEs(Pos(Zero)) 67.72/34.81 new_absReal1(x0, Pos(Succ(x1))) 67.72/34.81 new_quot(Pos(x0), Pos(x1), Pos(x2), Pos(x3), ty_Int) 67.72/34.81 new_quot(Neg(x0), Pos(x1), Neg(Zero), Neg(Succ(x2)), ty_Int) 67.72/34.81 new_quot(Pos(x0), Neg(x1), Neg(Zero), Neg(Succ(x2)), ty_Int) 67.72/34.81 new_primQuotInt84(x0, True, x1, x2) 67.72/34.81 new_primQuotInt62(Succ(x0), Zero, x1, x2, x3, x4) 67.72/34.81 new_primModNatS1(Zero, x0) 67.72/34.81 new_primQuotInt73(Zero, x0, x1) 67.72/34.81 new_primQuotInt61(x0, True, x1, x2, x3) 67.72/34.81 new_quot(Pos(Succ(x0)), Pos(Zero), Neg(x1), Pos(x2), ty_Int) 67.72/34.81 new_quot(Pos(Succ(x0)), Pos(Zero), Pos(x1), Neg(x2), ty_Int) 67.72/34.81 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.72/34.81 new_abs1(x0) 67.72/34.81 new_primEqInt3(Zero) 67.72/34.81 new_primQuotInt78(x0, x1, Pos(x2), x3, x4, x5) 67.72/34.81 new_primQuotInt39(x0, Zero, Zero, x1) 67.72/34.81 new_primQuotInt46(x0, False, x1, x2, x3) 67.72/34.81 new_primQuotInt21(x0, x1, x2, x3) 67.72/34.81 new_primQuotInt36(Zero, Succ(x0), x1, x2, x3, x4) 67.72/34.81 new_primEqInt4(Succ(x0)) 67.72/34.81 new_primQuotInt62(Succ(x0), Succ(x1), x2, x3, x4, x5) 67.72/34.81 new_quot0(Neg(x0), Pos(x1), Neg(x2), x3, ty_Int) 67.72/34.81 new_quot0(Pos(x0), Neg(x1), Neg(x2), x3, ty_Int) 67.72/34.81 new_quot0(Neg(x0), Neg(x1), Pos(x2), x3, ty_Int) 67.72/34.81 new_primQuotInt31(x0, False, x1, x2) 67.72/34.81 new_primDivNatS02(x0, x1) 67.72/34.81 new_primMulNat0(Succ(x0), Succ(x1)) 67.72/34.81 new_primQuotInt56(Succ(x0), Succ(x1), x2, x3, x4, x5) 67.72/34.81 new_primQuotInt75(Zero, x0, x1) 67.72/34.81 new_primModNatS1(Succ(Zero), Succ(x0)) 67.72/34.81 new_primQuotInt77(Zero, x0, x1) 67.72/34.81 new_quot(Pos(Zero), Pos(Zero), Neg(x0), Pos(x1), ty_Int) 67.72/34.81 new_quot(Pos(Zero), Pos(Zero), Pos(x0), Neg(x1), ty_Int) 67.72/34.81 new_absReal10(x0) 67.72/34.81 new_primQuotInt30(x0, x1, x2, x3, x4, x5) 67.72/34.81 new_gcd0Gcd'2(x0, x1) 67.72/34.81 new_primQuotInt64(x0, x1, Pos(x2), x3, x4, x5) 67.72/34.81 new_sr(Pos(x0), Neg(x1)) 67.72/34.81 new_sr(Neg(x0), Pos(x1)) 67.72/34.81 new_primQuotInt42(x0, False, x1, x2, x3) 67.72/34.81 new_primQuotInt66(x0, True, x1, x2, x3) 67.72/34.81 new_primQuotInt79(x0, x1, Pos(x2), x3, x4, x5) 67.72/34.81 new_primQuotInt32(x0, Pos(Succ(x1))) 67.72/34.81 new_primQuotInt16(Zero, x0, x1) 67.72/34.81 new_primModNatS1(Succ(Succ(x0)), Zero) 67.72/34.81 new_primQuotInt70(x0, Neg(Succ(x1))) 67.72/34.81 new_gcd0Gcd'10(False, x0, x1) 67.72/34.81 new_esEs0(x0, x1, ty_Integer) 67.72/34.81 new_primQuotInt47(Zero, Zero, x0, x1, x2, x3) 67.72/34.81 new_primQuotInt14(x0, x1, x2, x3) 67.72/34.81 new_quot(Pos(Zero), Pos(Succ(x0)), Pos(x1), Neg(x2), ty_Int) 67.72/34.81 new_quot(Pos(Zero), Pos(Succ(x0)), Neg(x1), Pos(x2), ty_Int) 67.72/34.81 new_quot0(x0, x1, x2, x3, ty_Integer) 67.72/34.81 new_primQuotInt18(x0, x1, x2, x3) 67.72/34.81 new_primQuotInt47(Succ(x0), Succ(x1), x2, x3, x4, x5) 67.72/34.81 new_primQuotInt65(x0, x1, x2, x3, x4, x5) 67.72/34.81 new_primMulNat0(Succ(x0), Zero) 67.72/34.81 new_primQuotInt69(x0, False, x1, x2) 67.72/34.81 new_primQuotInt51(x0, True, x1, x2, x3) 67.72/34.81 new_primQuotInt67(Zero, Zero, x0, x1, x2, x3) 67.72/34.81 new_primQuotInt72(Succ(x0), Succ(x1), x2, x3, x4, x5) 67.72/34.81 new_primQuotInt11(x0, x1, x2, x3, x4, x5) 67.72/34.81 new_primQuotInt34(x0, x1, x2, x3) 67.72/34.81 new_quot(Neg(x0), Pos(x1), Pos(Succ(x2)), Pos(Succ(x3)), ty_Int) 67.72/34.81 new_quot(Pos(x0), Neg(x1), Pos(Succ(x2)), Pos(Succ(x3)), ty_Int) 67.72/34.81 new_primQuotInt15(x0, False, x1, x2, x3) 67.72/34.81 new_primDivNatS1(Succ(Succ(x0)), Succ(x1)) 67.72/34.81 new_primQuotInt72(Zero, Zero, x0, x1, x2, x3) 67.72/34.81 new_primQuotInt20(x0, False, x1, x2, x3) 67.72/34.81 new_primQuotInt87(x0, True, x1, x2, x3) 67.72/34.81 new_primQuotInt12(x0, Zero, Zero, x1) 67.72/34.81 new_primEqInt0(x0) 67.72/34.81 new_primQuotInt54(x0, False, x1, x2) 67.72/34.81 new_primQuotInt64(x0, x1, Neg(x2), x3, x4, x5) 67.72/34.81 new_primDivNatS01(x0, x1, Succ(x2), Zero) 67.72/34.81 new_primQuotInt42(x0, True, x1, x2, x3) 67.72/34.81 new_primQuotInt92(x0, False, x1, x2, x3) 67.72/34.81 new_rem(Pos(x0), Neg(Zero)) 67.72/34.81 new_rem(Neg(x0), Pos(Zero)) 67.72/34.81 new_primDivNatS01(x0, x1, Zero, Succ(x2)) 67.72/34.81 new_primQuotInt76(Zero, Zero, x0, x1, x2, x3) 67.72/34.81 new_primQuotInt38(x0, x1, x2, x3, x4, x5) 67.72/34.81 new_primQuotInt29(x0, x1, x2, x3, x4, x5) 67.72/34.81 new_primQuotInt36(Succ(x0), Succ(x1), x2, x3, x4, x5) 67.72/34.81 new_sr(Neg(x0), Neg(x1)) 67.72/34.81 new_primQuotInt45(x0, x1, x2, x3) 67.72/34.81 new_gcd0Gcd'00(x0, x1) 67.72/34.81 new_quot(Neg(x0), Pos(x1), Neg(Succ(x2)), Neg(Succ(x3)), ty_Int) 67.72/34.81 new_quot(Pos(x0), Neg(x1), Neg(Succ(x2)), Neg(Succ(x3)), ty_Int) 67.72/34.81 new_primQuotInt76(Succ(x0), Zero, x1, x2, x3, x4) 67.72/34.81 new_primModNatS1(Succ(Zero), Zero) 67.72/34.81 new_rem(Pos(x0), Pos(Zero)) 67.72/34.81 new_primQuotInt37(x0, x1, x2, x3) 67.72/34.81 new_primQuotInt12(x0, Succ(x1), Zero, x2) 67.72/34.81 new_primQuotInt71(Zero, x0, x1) 67.72/34.81 new_sr(Pos(x0), Pos(x1)) 67.72/34.81 new_primQuotInt81(x0, x1, Neg(x2), x3, x4, x5) 67.72/34.81 new_primQuotInt83(x0, True, x1, x2) 67.72/34.81 new_absReal11(x0) 67.72/34.81 new_primEqInt(x0) 67.72/34.81 new_gcd0Gcd'10(True, x0, x1) 67.72/34.81 new_primQuotInt58(Succ(x0), x1, x2) 67.72/34.81 new_primQuotInt78(x0, x1, Neg(x2), x3, x4, x5) 67.72/34.81 new_primPlusNat1(Zero, Succ(x0)) 67.72/34.81 new_abs(x0) 67.72/34.81 new_primQuotInt67(Succ(x0), Zero, x1, x2, x3, x4) 67.72/34.81 new_primQuotInt74(Succ(x0), Zero, x1, x2, x3, x4) 67.72/34.81 new_primQuotInt36(Zero, Zero, x0, x1, x2, x3) 67.72/34.81 new_abs3(x0, x1) 67.72/34.81 new_primQuotInt59(x0, x1, Neg(x2), x3, x4, x5) 67.72/34.81 new_primQuotInt57(x0, x1, Pos(x2), x3, x4, x5) 67.72/34.81 new_primQuotInt33(x0, False, x1, x2, x3) 67.72/34.81 new_primPlusNat1(Succ(x0), Succ(x1)) 67.72/34.81 new_primQuotInt70(x0, Neg(Zero)) 67.72/34.81 new_primEqInt3(Succ(x0)) 67.72/34.81 new_primQuotInt47(Succ(x0), Zero, x1, x2, x3, x4) 67.72/34.81 new_primQuotInt32(x0, Neg(Zero)) 67.72/34.81 new_primQuotInt88(x0, x1, x2, x3) 67.72/34.81 new_quot(Neg(Succ(x0)), Neg(Succ(x1)), Neg(x2), Pos(x3), ty_Int) 67.72/34.81 new_quot(Neg(Succ(x0)), Neg(Succ(x1)), Pos(x2), Neg(x3), ty_Int) 67.72/34.81 new_primQuotInt59(x0, x1, Pos(x2), x3, x4, x5) 67.72/34.81 new_primQuotInt27(x0, False, x1, x2) 67.72/34.81 new_primQuotInt67(Zero, Succ(x0), x1, x2, x3, x4) 67.72/34.81 new_quot(x0, x1, x2, x3, ty_Integer) 67.72/34.81 new_primQuotInt32(x0, Pos(Zero)) 67.72/34.81 new_primQuotInt22(x0, x1, x2, x3) 67.72/34.81 new_primMinusNatS2(Zero, Zero) 67.72/34.81 new_primQuotInt49(x0, x1, x2) 67.72/34.81 new_primQuotInt62(Zero, Succ(x0), x1, x2, x3, x4) 67.72/34.81 new_primQuotInt62(Zero, Zero, x0, x1, x2, x3) 67.72/34.81 new_primModNatS01(x0, x1, Zero, Zero) 67.72/34.81 new_esEs(Pos(Succ(x0))) 67.72/34.81 new_primQuotInt83(x0, False, x1, x2) 67.72/34.81 new_primQuotInt39(x0, Zero, Succ(x1), x2) 67.72/34.81 new_quot(Neg(Zero), Neg(Zero), Neg(x0), Pos(x1), ty_Int) 67.72/34.81 new_primQuotInt35(x0, True, x1, x2, x3) 67.72/34.81 new_quot(Neg(Zero), Neg(Zero), Pos(x0), Neg(x1), ty_Int) 67.72/34.81 new_rem(Pos(x0), Pos(Succ(x1))) 67.72/34.81 new_negate0(Pos(x0)) 67.72/34.81 new_quot0(Pos(x0), Pos(x1), Pos(x2), x3, ty_Int) 67.72/34.81 new_primQuotInt89(x0, False, x1, x2, x3) 67.72/34.81 new_primQuotInt19(x0, x1, x2, x3) 67.72/34.81 new_primQuotInt35(x0, False, x1, x2, x3) 67.72/34.81 new_absReal1(x0, Neg(Succ(x1))) 67.72/34.81 new_abs0(x0, x1) 67.72/34.81 new_primQuotInt47(Zero, Succ(x0), x1, x2, x3, x4) 67.72/34.81 new_primQuotInt24(Zero, x0, x1) 67.72/34.81 new_primQuotInt70(x0, Pos(Zero)) 67.72/34.81 new_primMinusNatS0(x0) 67.72/34.81 new_primQuotInt24(Succ(x0), x1, x2) 67.72/34.81 new_primQuotInt52(x0, x1, x2, x3, x4, x5) 67.72/34.81 new_primQuotInt25(x0, False, x1, x2) 67.72/34.81 new_esEs(Neg(Succ(x0))) 67.72/34.81 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.72/34.81 new_primQuotInt89(x0, True, x1, x2, x3) 67.72/34.81 new_primQuotInt27(x0, True, x1, x2) 67.72/34.81 new_quot(Neg(Zero), Neg(Succ(x0)), Pos(x1), Neg(x2), ty_Int) 67.72/34.81 new_quot(Neg(Zero), Neg(Succ(x0)), Neg(x1), Pos(x2), ty_Int) 67.72/34.81 new_primQuotInt56(Zero, Succ(x0), x1, x2, x3, x4) 67.72/34.81 new_rem(Neg(x0), Neg(Zero)) 67.72/34.81 new_primQuotInt80(x0, x1, Pos(x2), x3, x4, x5) 67.72/34.81 new_reduce2Reduce1(x0, x1, x2, x3, False, x4) 67.72/34.81 new_primQuotInt16(Succ(x0), x1, x2) 67.72/34.81 new_primMinusNatS1 67.72/34.81 new_primEqInt4(Zero) 67.74/34.81 new_primQuotInt63(x0, True, x1, x2) 67.74/34.81 new_primDivNatS1(Succ(Succ(x0)), Zero) 67.74/34.81 new_primQuotInt76(Succ(x0), Succ(x1), x2, x3, x4, x5) 67.74/34.81 new_primQuotInt10(x0, False, x1, x2) 67.74/34.81 new_primQuotInt91(x0, False, x1, x2) 67.74/34.81 new_primQuotInt74(Zero, Succ(x0), x1, x2, x3, x4) 67.74/34.81 new_primQuotInt73(Succ(x0), x1, x2) 67.74/34.81 new_primQuotInt86(x0, True, x1, x2, x3) 67.74/34.81 new_primModNatS02(x0, x1) 67.74/34.81 new_primQuotInt43(x0, x1, x2, x3) 67.74/34.81 new_primQuotInt81(x0, x1, Pos(x2), x3, x4, x5) 67.74/34.81 new_primQuotInt77(Succ(x0), x1, x2) 67.74/34.81 new_primQuotInt82(x0, True, x1, x2, x3) 67.74/34.81 new_primQuotInt13(x0, False, x1, x2, x3) 67.74/34.81 new_primQuotInt72(Succ(x0), Zero, x1, x2, x3, x4) 67.74/34.81 new_quot(Neg(Succ(x0)), Neg(Zero), Pos(x1), Neg(x2), ty_Int) 67.74/34.81 new_quot(Neg(Succ(x0)), Neg(Zero), Neg(x1), Pos(x2), ty_Int) 67.74/34.81 new_primQuotInt39(x0, Succ(x1), Succ(x2), x3) 67.74/34.81 new_quot(Neg(x0), Pos(x1), Pos(Zero), Pos(Succ(x2)), ty_Int) 67.74/34.81 new_quot(Pos(x0), Neg(x1), Pos(Zero), Pos(Succ(x2)), ty_Int) 67.74/34.81 new_primQuotInt76(Zero, Succ(x0), x1, x2, x3, x4) 67.74/34.81 new_primQuotInt23(x0, False, x1, x2, x3) 67.74/34.81 new_primEqInt2 67.74/34.81 new_primQuotInt74(Succ(x0), Succ(x1), x2, x3, x4, x5) 67.74/34.81 new_esEs(Neg(Zero)) 67.74/34.81 new_primPlusNat0(Succ(x0), x1) 67.74/34.81 new_primQuotInt51(x0, False, x1, x2, x3) 67.74/34.81 67.74/34.81 We have to consider all minimal (P,Q,R)-chains. 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (19) MNOCProof (EQUIVALENT) 67.74/34.81 We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set. 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (20) 67.74/34.81 Obligation: 67.74/34.81 Q DP problem: 67.74/34.81 The TRS P consists of the following rules: 67.74/34.81 67.74/34.81 new_iterate(vuz4, vuz3, vuz5) -> new_iterate(vuz4, vuz3, new_ps(new_ps(vuz4, new_negate(vuz3), ty_Int), vuz5, ty_Int)) 67.74/34.81 67.74/34.81 The TRS R consists of the following rules: 67.74/34.81 67.74/34.81 new_abs4(vuz3190, vuz3170) -> new_absReal1(new_sr(Neg(vuz3190), Pos(vuz3170)), new_sr(Neg(vuz3190), Pos(vuz3170))) 67.74/34.81 new_primQuotInt44(vuz398) -> error([]) 67.74/34.81 new_primQuotInt80(vuz386, vuz389, Pos(vuz3180), vuz3190, vuz388, vuz387) -> new_primQuotInt30(vuz386, vuz389, new_primMulNat0(vuz3180, vuz3190), vuz388, new_primMulNat0(vuz3180, vuz3190), vuz387) 67.74/34.81 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.81 new_primQuotInt56(Succ(vuz4570), Succ(vuz4560), vuz459, vuz458, vuz3190, vuz31700) -> new_primQuotInt56(vuz4570, vuz4560, vuz4570, vuz4560, vuz3190, vuz31700) 67.74/34.81 new_primQuotInt27(vuz374, False, vuz511, vuz375) -> new_primQuotInt26(vuz374, vuz511, vuz375) 67.74/34.81 new_primQuotInt62(Succ(vuz4010), Succ(vuz4000), vuz403, vuz402, vuz3190, vuz31700) -> new_primQuotInt62(vuz4010, vuz4000, vuz4010, vuz4000, vuz3190, vuz31700) 67.74/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Neg(Zero), Neg(Zero), ty_Int) -> new_primQuotInt40(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz3170) 67.74/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Neg(Succ(vuz31800)), Neg(Succ(vuz31900)), ty_Int) -> new_primQuotInt74(new_primPlusNat1(new_primMulNat0(vuz31800, Succ(vuz31900)), Succ(vuz31900)), new_primMulNat0(vuz3160, vuz3170), new_primPlusNat1(new_primMulNat0(vuz31800, Succ(vuz31900)), Succ(vuz31900)), new_primMulNat0(vuz3160, vuz3170), vuz31900, vuz3170) 67.74/34.81 new_abs1(vuz427) -> new_absReal1(Neg(vuz427), Neg(vuz427)) 67.74/34.81 new_quot(Neg(Zero), Neg(Succ(vuz31700)), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt56(Zero, new_primMulNat0(vuz3180, vuz3190), Zero, new_primMulNat0(vuz3180, vuz3190), vuz3190, vuz31700) 67.74/34.81 new_quot(Neg(Zero), Neg(Zero), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt77(new_primMulNat0(vuz3180, vuz3190), new_primMulNat0(vuz3180, vuz3190), vuz3190) 67.74/34.81 new_primQuotInt69(vuz366, True, vuz505, vuz367) -> new_primQuotInt83(vuz366, new_esEs(Pos(vuz367)), vuz505, vuz367) 67.74/34.81 new_primDivNatS1(Zero, vuz54900) -> Zero 67.74/34.81 new_quot(Neg(Succ(vuz31600)), Neg(Succ(vuz31700)), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt76(new_primPlusNat1(new_primMulNat0(vuz31600, Succ(vuz31700)), Succ(vuz31700)), new_primMulNat0(vuz3180, vuz3190), new_primPlusNat1(new_primMulNat0(vuz31600, Succ(vuz31700)), Succ(vuz31700)), new_primMulNat0(vuz3180, vuz3190), vuz3190, vuz31700) 67.74/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Pos(Zero), Pos(Succ(vuz31900)), ty_Int) -> new_primQuotInt72(Zero, new_primMulNat0(vuz3160, vuz3170), Zero, new_primMulNat0(vuz3160, vuz3170), vuz31900, vuz3170) 67.74/34.81 new_primQuotInt57(vuz382, vuz385, Neg(vuz3180), vuz3190, vuz384, vuz383) -> new_primQuotInt53(vuz382, vuz385, new_primMulNat0(vuz3180, vuz3190), vuz384, new_primMulNat0(vuz3180, vuz3190), vuz383) 67.74/34.81 new_primDivNatS1(Succ(Succ(vuz41600)), Zero) -> Succ(new_primDivNatS1(new_primMinusNatS0(vuz41600), Zero)) 67.74/34.81 new_primQuotInt20(vuz446, True, vuz447, vuz3190, vuz3170) -> new_primQuotInt87(vuz446, new_esEs(new_sr(Neg(vuz3190), Pos(vuz3170))), vuz447, vuz3190, vuz3170) 67.74/34.81 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.81 new_primQuotInt73(Zero, vuz445, vuz3170) -> new_primQuotInt18(Zero, Zero, Zero, vuz3170) 67.74/34.81 new_primQuotInt80(vuz386, vuz389, Neg(vuz3180), vuz3190, vuz388, vuz387) -> new_primQuotInt29(vuz386, vuz389, new_primMulNat0(vuz3180, vuz3190), vuz388, new_primMulNat0(vuz3180, vuz3190), vuz387) 67.74/34.81 new_primQuotInt15(vuz348, True, vuz349, vuz3190, vuz3170) -> new_primQuotInt55(vuz348) 67.74/34.81 new_quot0(Neg(vuz3190), Pos(vuz3170), Pos(vuz3160), vuz318, ty_Int) -> new_primQuotInt57(new_primMulNat0(vuz3190, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz318, vuz3190, new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3190, vuz3170)) 67.74/34.81 new_primQuotInt81(vuz390, vuz393, Pos(vuz3180), vuz3190, vuz392, vuz391) -> new_primQuotInt90(vuz390, vuz393, new_primMulNat0(vuz3180, vuz3190), vuz392, new_primMulNat0(vuz3180, vuz3190), vuz391) 67.74/34.81 new_primQuotInt27(vuz374, True, vuz511, vuz375) -> new_primQuotInt55(vuz374) 67.74/34.81 new_primQuotInt36(Zero, Zero, vuz411, vuz410, vuz3190, vuz31700) -> new_primQuotInt18(Zero, Zero, vuz3190, Succ(vuz31700)) 67.74/34.81 new_primDivNatS01(vuz574, vuz575, Zero, Succ(vuz5770)) -> Zero 67.74/34.81 new_primQuotInt67(Succ(vuz4190), Succ(vuz4180), vuz421, vuz420, vuz31900, vuz3170) -> new_primQuotInt67(vuz4190, vuz4180, vuz4190, vuz4180, vuz31900, vuz3170) 67.74/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt48(new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), vuz3190, vuz3170) 67.74/34.81 new_primQuotInt50(vuz428, vuz429, vuz3190, vuz3170) -> new_primQuotInt51(vuz428, new_esEs(Neg(vuz429)), vuz429, vuz3190, vuz3170) 67.74/34.81 new_primDivNatS02(vuz574, vuz575) -> Succ(new_primDivNatS1(new_primMinusNatS2(vuz574, vuz575), Succ(vuz575))) 67.74/34.81 new_primQuotInt79(vuz370, vuz373, Pos(vuz3180), vuz3190, vuz372, vuz371) -> new_primQuotInt11(vuz370, vuz373, new_primMulNat0(vuz3180, vuz3190), vuz372, new_primMulNat0(vuz3180, vuz3190), vuz371) 67.74/34.81 new_primQuotInt28(vuz374, vuz377, Neg(vuz3180), vuz3190, vuz376, vuz375) -> new_primQuotInt30(vuz374, vuz377, new_primMulNat0(vuz3180, vuz3190), vuz376, new_primMulNat0(vuz3180, vuz3190), vuz375) 67.74/34.81 new_primQuotInt76(Zero, Succ(vuz4640), vuz467, vuz466, vuz3190, vuz31700) -> new_primQuotInt50(Succ(vuz4640), Succ(vuz4640), vuz3190, Succ(vuz31700)) 67.74/34.81 new_primQuotInt76(Zero, Zero, vuz467, vuz466, vuz3190, vuz31700) -> new_primQuotInt68(Zero, Zero, vuz3190, Succ(vuz31700)) 67.74/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Neg(Succ(vuz31800)), Neg(Zero), ty_Int) -> new_primQuotInt58(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz3170) 67.74/34.81 new_primQuotInt39(vuz374, Zero, Succ(vuz3770), vuz375) -> new_primQuotInt25(vuz374, new_primEqInt3(Succ(vuz3770)), Succ(vuz3770), vuz375) 67.74/34.81 new_primQuotInt53(vuz378, vuz381, vuz493, vuz380, vuz492, vuz379) -> new_primQuotInt54(vuz378, new_primEqInt4(new_primPlusNat1(vuz381, vuz493)), new_primPlusNat1(vuz381, vuz493), vuz379) 67.74/34.81 new_primQuotInt79(vuz370, vuz373, Neg(vuz3180), vuz3190, vuz372, vuz371) -> new_primQuotInt90(vuz370, vuz373, new_primMulNat0(vuz3180, vuz3190), vuz372, new_primMulNat0(vuz3180, vuz3190), vuz371) 67.74/34.81 new_primDivNatS1(Succ(Zero), Succ(vuz549000)) -> Zero 67.74/34.81 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.81 new_primQuotInt72(Zero, Zero, vuz441, vuz440, vuz31900, vuz3170) -> new_primQuotInt18(Zero, Zero, Succ(vuz31900), vuz3170) 67.74/34.81 new_primQuotInt24(Succ(vuz4060), vuz407, vuz3190) -> new_primQuotInt19(Succ(vuz4060), Succ(vuz4060), vuz3190, Zero) 67.74/34.81 new_primQuotInt67(Zero, Zero, vuz421, vuz420, vuz31900, vuz3170) -> new_primQuotInt68(Zero, Zero, Succ(vuz31900), vuz3170) 67.74/34.81 new_quot(Pos(Succ(vuz31600)), Pos(Zero), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt16(new_primMulNat0(vuz3180, vuz3190), new_primMulNat0(vuz3180, vuz3190), vuz3190) 67.74/34.81 new_quot0(Neg(vuz3190), Pos(vuz3170), Neg(vuz3160), vuz318, ty_Int) -> new_primQuotInt80(new_primMulNat0(vuz3190, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz318, vuz3190, new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3190, vuz3170)) 67.74/34.81 new_absReal1(vuz554, Pos(Succ(vuz55500))) -> new_absReal10(vuz554) 67.74/34.81 new_gcd0Gcd'10(False, vuz542, vuz549) -> new_gcd0Gcd'00(vuz542, new_rem(vuz549, vuz542)) 67.74/34.81 new_primQuotInt30(vuz374, vuz377, vuz491, vuz376, vuz490, vuz375) -> new_primQuotInt25(vuz374, new_primEqInt3(new_primPlusNat1(vuz377, vuz491)), new_primPlusNat1(vuz377, vuz491), vuz375) 67.74/34.81 new_primQuotInt74(Zero, Succ(vuz4480), vuz451, vuz450, vuz31900, vuz3170) -> new_primQuotInt19(Succ(vuz4480), Succ(vuz4480), Succ(vuz31900), vuz3170) 67.74/34.81 new_absReal1(vuz554, Pos(Zero)) -> new_absReal11(vuz554) 67.74/34.81 new_primQuotInt74(Succ(vuz4490), Zero, vuz451, vuz450, vuz31900, vuz3170) -> new_primQuotInt22(Succ(vuz4490), Succ(vuz4490), Succ(vuz31900), vuz3170) 67.74/34.81 new_primQuotInt25(vuz374, True, vuz511, vuz375) -> new_primQuotInt27(vuz374, new_esEs(Neg(vuz375)), vuz511, vuz375) 67.74/34.81 new_absReal11(vuz554) -> new_absReal10(vuz554) 67.74/34.81 new_primQuotInt56(Succ(vuz4570), Zero, vuz459, vuz458, vuz3190, vuz31700) -> new_primQuotInt45(Succ(vuz4570), Succ(vuz4570), vuz3190, Succ(vuz31700)) 67.74/34.81 new_primQuotInt32(vuz416, Neg(Succ(vuz54900))) -> Neg(new_primDivNatS1(vuz416, vuz54900)) 67.74/34.81 new_primQuotInt56(Zero, Succ(vuz4560), vuz459, vuz458, vuz3190, vuz31700) -> new_primQuotInt48(Succ(vuz4560), Succ(vuz4560), vuz3190, Succ(vuz31700)) 67.74/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Neg(Zero), Neg(Succ(vuz31900)), ty_Int) -> new_primQuotInt74(Zero, new_primMulNat0(vuz3160, vuz3170), Zero, new_primMulNat0(vuz3160, vuz3170), vuz31900, vuz3170) 67.74/34.81 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.81 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.81 new_primQuotInt47(Zero, Succ(vuz4300), vuz433, vuz432, vuz31900, vuz3170) -> new_primQuotInt48(Succ(vuz4300), Succ(vuz4300), Succ(vuz31900), vuz3170) 67.74/34.81 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.81 new_primEqInt4(Zero) -> new_primEqInt1 67.74/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Pos(Succ(vuz31800)), Pos(Zero), ty_Int) -> new_primQuotInt71(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz3170) 67.74/34.81 new_primQuotInt64(vuz394, vuz397, Neg(vuz3180), vuz3190, vuz396, vuz395) -> new_primQuotInt65(vuz394, vuz397, new_primMulNat0(vuz3180, vuz3190), vuz396, new_primMulNat0(vuz3180, vuz3190), vuz395) 67.74/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt19(new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), vuz3190, vuz3170) 67.74/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Pos(Zero), Pos(Zero), ty_Int) -> new_primQuotInt71(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz3170) 67.74/34.81 new_quot0(Pos(vuz3190), Neg(vuz3170), Pos(vuz3160), vuz318, ty_Int) -> new_primQuotInt28(new_primMulNat0(vuz3190, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz318, vuz3190, new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3190, vuz3170)) 67.74/34.81 new_primQuotInt11(vuz370, vuz373, vuz485, vuz372, vuz484, vuz371) -> new_primQuotInt12(vuz370, vuz485, vuz373, vuz371) 67.74/34.81 new_primDivNatS01(vuz574, vuz575, Succ(vuz5760), Succ(vuz5770)) -> new_primDivNatS01(vuz574, vuz575, vuz5760, vuz5770) 67.74/34.81 new_primQuotInt13(vuz348, False, vuz349, vuz3190, vuz3170) -> new_primQuotInt14(vuz348, vuz349, vuz3190, vuz3170) 67.74/34.81 new_quot(Pos(Zero), Pos(Succ(vuz31700)), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt62(Zero, new_primMulNat0(vuz3180, vuz3190), Zero, new_primMulNat0(vuz3180, vuz3190), vuz3190, vuz31700) 67.74/34.81 new_quot0(Pos(vuz3190), Pos(vuz3170), Neg(vuz3160), vuz318, ty_Int) -> new_primQuotInt79(new_primMulNat0(vuz3190, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz318, vuz3190, new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3190, vuz3170)) 67.74/34.81 new_primQuotInt32(vuz416, Pos(Zero)) -> new_error 67.74/34.81 new_primQuotInt20(vuz446, False, vuz447, vuz3190, vuz3170) -> new_primQuotInt88(vuz446, vuz447, vuz3190, vuz3170) 67.74/34.81 new_primMulNat0(Zero, Zero) -> Zero 67.74/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Pos(Zero), Pos(Succ(vuz31900)), ty_Int) -> new_primQuotInt67(Zero, new_primMulNat0(vuz3160, vuz3170), Zero, new_primMulNat0(vuz3160, vuz3170), vuz31900, vuz3170) 67.74/34.81 new_abs0(vuz3190, vuz3170) -> new_absReal1(new_sr(Pos(vuz3190), Neg(vuz3170)), new_sr(Pos(vuz3190), Neg(vuz3170))) 67.74/34.81 new_primQuotInt12(vuz366, Succ(vuz3690), Zero, vuz367) -> new_primQuotInt69(vuz366, new_primEqInt4(Succ(vuz3690)), Succ(vuz3690), vuz367) 67.74/34.81 new_primQuotInt59(vuz378, vuz381, Neg(vuz3180), vuz3190, vuz380, vuz379) -> new_primQuotInt38(vuz378, vuz381, new_primMulNat0(vuz3180, vuz3190), vuz380, new_primMulNat0(vuz3180, vuz3190), vuz379) 67.74/34.81 new_primQuotInt85(vuz370, vuz508, vuz371) -> new_primQuotInt31(vuz370, new_esEs(new_abs(vuz371)), new_abs1(vuz508), new_abs(vuz371)) 67.74/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Neg(Succ(vuz31800)), Neg(Zero), ty_Int) -> new_primQuotInt40(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz3170) 67.74/34.81 new_primQuotInt78(vuz366, vuz369, Pos(vuz3180), vuz3190, vuz368, vuz367) -> new_primQuotInt65(vuz366, vuz369, new_primMulNat0(vuz3180, vuz3190), vuz368, new_primMulNat0(vuz3180, vuz3190), vuz367) 67.74/34.81 new_primQuotInt40(Succ(vuz4540), vuz455, vuz3170) -> new_primQuotInt19(Succ(vuz4540), Succ(vuz4540), Zero, vuz3170) 67.74/34.81 new_primQuotInt29(vuz374, vuz377, vuz489, vuz376, vuz488, vuz375) -> new_primQuotInt39(vuz374, vuz489, vuz377, vuz375) 67.74/34.81 new_primQuotInt19(vuz446, vuz447, vuz3190, vuz3170) -> new_primQuotInt20(vuz446, new_esEs(Neg(vuz447)), vuz447, vuz3190, vuz3170) 67.74/34.81 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.81 new_primQuotInt74(Zero, Zero, vuz451, vuz450, vuz31900, vuz3170) -> new_primQuotInt22(Zero, Zero, Succ(vuz31900), vuz3170) 67.74/34.81 new_primQuotInt51(vuz428, True, vuz429, vuz3190, vuz3170) -> new_primQuotInt82(vuz428, new_esEs(new_sr(Pos(vuz3190), Neg(vuz3170))), vuz429, vuz3190, vuz3170) 67.74/34.81 new_primQuotInt90(vuz370, vuz373, vuz487, vuz372, vuz486, vuz371) -> new_primQuotInt91(vuz370, new_primEqInt3(new_primPlusNat1(vuz373, vuz487)), new_primPlusNat1(vuz373, vuz487), vuz371) 67.74/34.81 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.81 new_primQuotInt32(vuz416, Pos(Succ(vuz54900))) -> Pos(new_primDivNatS1(vuz416, vuz54900)) 67.74/34.81 new_primQuotInt83(vuz366, True, vuz505, vuz367) -> new_primQuotInt44(vuz366) 67.74/34.81 new_primQuotInt33(vuz398, False, vuz399, vuz3190, vuz3170) -> new_primQuotInt34(vuz398, vuz399, vuz3190, vuz3170) 67.74/34.81 new_primQuotInt36(Succ(vuz4090), Zero, vuz411, vuz410, vuz3190, vuz31700) -> new_primQuotInt18(Succ(vuz4090), Succ(vuz4090), vuz3190, Succ(vuz31700)) 67.74/34.81 new_quot(Neg(Succ(vuz31600)), Neg(Zero), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt75(new_primMulNat0(vuz3180, vuz3190), new_primMulNat0(vuz3180, vuz3190), vuz3190) 67.74/34.81 new_primQuotInt81(vuz390, vuz393, Neg(vuz3180), vuz3190, vuz392, vuz391) -> new_primQuotInt11(vuz390, vuz393, new_primMulNat0(vuz3180, vuz3190), vuz392, new_primMulNat0(vuz3180, vuz3190), vuz391) 67.74/34.81 new_primQuotInt71(Succ(vuz4240), vuz425, vuz3170) -> new_primQuotInt50(Succ(vuz4240), Succ(vuz4240), Zero, vuz3170) 67.74/34.81 new_primQuotInt40(Zero, vuz455, vuz3170) -> new_primQuotInt22(Zero, Zero, Zero, vuz3170) 67.74/34.81 new_negate0(Neg(vuz300)) -> Pos(vuz300) 67.74/34.81 new_primQuotInt62(Zero, Succ(vuz4000), vuz403, vuz402, vuz3190, vuz31700) -> new_primQuotInt19(Succ(vuz4000), Succ(vuz4000), vuz3190, Succ(vuz31700)) 67.74/34.81 new_reduce2Reduce1(vuz316, vuz317, vuz318, vuz319, False, ba) -> :%(new_quot(vuz316, vuz317, vuz318, vuz319, ba), new_quot0(vuz319, vuz317, vuz316, vuz318, ba)) 67.74/34.81 new_primQuotInt9(vuz428, vuz429, vuz3190, vuz3170) -> new_primQuotInt10(vuz428, new_esEs(new_abs0(vuz3190, vuz3170)), new_abs1(vuz429), new_abs0(vuz3190, vuz3170)) 67.74/34.81 new_primQuotInt73(Succ(vuz4440), vuz445, vuz3170) -> new_primQuotInt17(Succ(vuz4440), Succ(vuz4440), Zero, vuz3170) 67.74/34.81 new_primQuotInt87(vuz446, True, vuz447, vuz3190, vuz3170) -> new_primQuotInt55(vuz446) 67.74/34.81 new_primQuotInt71(Zero, vuz425, vuz3170) -> new_primQuotInt68(Zero, Zero, Zero, vuz3170) 67.74/34.81 new_primQuotInt13(vuz348, True, vuz349, vuz3190, vuz3170) -> new_primQuotInt15(vuz348, new_esEs(new_sr(Pos(vuz3190), Pos(vuz3170))), vuz349, vuz3190, vuz3170) 67.74/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Pos(Succ(vuz31800)), Pos(Succ(vuz31900)), ty_Int) -> new_primQuotInt72(new_primPlusNat1(new_primMulNat0(vuz31800, Succ(vuz31900)), Succ(vuz31900)), new_primMulNat0(vuz3160, vuz3170), new_primPlusNat1(new_primMulNat0(vuz31800, Succ(vuz31900)), Succ(vuz31900)), new_primMulNat0(vuz3160, vuz3170), vuz31900, vuz3170) 67.74/34.81 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.81 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.81 new_primQuotInt69(vuz366, False, vuz505, vuz367) -> new_primQuotInt49(vuz366, vuz505, vuz367) 67.74/34.81 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.81 new_primQuotInt84(vuz370, True, vuz508, vuz371) -> new_primQuotInt44(vuz370) 67.74/34.81 new_primQuotInt25(vuz374, False, vuz511, vuz375) -> new_primQuotInt26(vuz374, vuz511, vuz375) 67.74/34.81 new_primQuotInt39(vuz374, Zero, Zero, vuz375) -> new_primQuotInt54(vuz374, new_primEqInt4(Zero), Zero, vuz375) 67.74/34.81 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.81 new_primQuotInt86(vuz416, False, vuz417, vuz3190, vuz3170) -> new_primQuotInt37(vuz416, vuz417, vuz3190, vuz3170) 67.74/34.81 new_primQuotInt10(vuz428, False, vuz552, vuz544) -> new_primQuotInt70(vuz428, new_gcd0Gcd'2(vuz544, vuz552)) 67.74/34.81 new_quot(Neg(vuz3160), Neg(vuz3170), Neg(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt45(new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), vuz3190, vuz3170) 67.74/34.81 new_primDivNatS1(Succ(Zero), Zero) -> Succ(new_primDivNatS1(new_primMinusNatS1, Zero)) 67.74/34.81 new_quot(Pos(Zero), Pos(Zero), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt16(new_primMulNat0(vuz3180, vuz3190), new_primMulNat0(vuz3180, vuz3190), vuz3190) 67.74/34.81 new_primQuotInt35(vuz398, True, vuz399, vuz3190, vuz3170) -> new_primQuotInt44(vuz398) 67.74/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt17(new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), vuz3190, vuz3170) 67.74/34.81 new_primQuotInt23(vuz416, False, vuz417, vuz3190, vuz3170) -> new_primQuotInt37(vuz416, vuz417, vuz3190, vuz3170) 67.74/34.81 new_sr(Pos(vuz30610), Neg(vuz30710)) -> Neg(new_primMulNat0(vuz30610, vuz30710)) 67.74/34.81 new_sr(Neg(vuz30610), Pos(vuz30710)) -> Neg(new_primMulNat0(vuz30610, vuz30710)) 67.74/34.81 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.81 new_primPlusNat1(Succ(vuz33500), Succ(vuz3071000)) -> Succ(Succ(new_primPlusNat1(vuz33500, vuz3071000))) 67.74/34.81 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.81 new_primQuotInt46(vuz360, False, vuz361, vuz3190, vuz3170) -> new_primQuotInt60(vuz360, vuz361, vuz3190, vuz3170) 67.74/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Pos(Succ(vuz31800)), Pos(Zero), ty_Int) -> new_primQuotInt73(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz3170) 67.74/34.81 new_primDivNatS01(vuz574, vuz575, Zero, Zero) -> new_primDivNatS02(vuz574, vuz575) 67.74/34.81 new_primQuotInt33(vuz398, True, vuz399, vuz3190, vuz3170) -> new_primQuotInt35(vuz398, new_esEs(new_sr(Pos(vuz3190), Pos(vuz3170))), vuz399, vuz3190, vuz3170) 67.74/34.81 new_primQuotInt70(vuz428, Pos(Succ(vuz55200))) -> Neg(new_primDivNatS1(vuz428, vuz55200)) 67.74/34.81 new_absReal1(vuz554, Neg(Zero)) -> new_absReal11(vuz554) 67.74/34.81 new_primQuotInt56(Zero, Zero, vuz459, vuz458, vuz3190, vuz31700) -> new_primQuotInt45(Zero, Zero, vuz3190, Succ(vuz31700)) 67.74/34.81 new_primQuotInt39(vuz374, Succ(vuz4890), Zero, vuz375) -> new_primQuotInt54(vuz374, new_primEqInt4(Succ(vuz4890)), Succ(vuz4890), vuz375) 67.74/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Neg(Succ(vuz31800)), Neg(Succ(vuz31900)), ty_Int) -> new_primQuotInt47(new_primPlusNat1(new_primMulNat0(vuz31800, Succ(vuz31900)), Succ(vuz31900)), new_primMulNat0(vuz3160, vuz3170), new_primPlusNat1(new_primMulNat0(vuz31800, Succ(vuz31900)), Succ(vuz31900)), new_primMulNat0(vuz3160, vuz3170), vuz31900, vuz3170) 67.74/34.81 new_primQuotInt63(vuz378, False, vuz514, vuz379) -> new_primQuotInt41(vuz378, vuz514, vuz379) 67.74/34.81 new_abs2(vuz3190, vuz3170) -> new_absReal1(new_sr(Neg(vuz3190), Neg(vuz3170)), new_sr(Neg(vuz3190), Neg(vuz3170))) 67.74/34.81 new_primQuotInt68(vuz354, vuz355, vuz3190, vuz3170) -> new_primQuotInt92(vuz354, new_esEs(Pos(vuz355)), vuz355, vuz3190, vuz3170) 67.74/34.81 new_primQuotInt36(Zero, Succ(vuz4080), vuz411, vuz410, vuz3190, vuz31700) -> new_primQuotInt17(Succ(vuz4080), Succ(vuz4080), vuz3190, Succ(vuz31700)) 67.74/34.81 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.81 new_quot(Pos(Succ(vuz31600)), Pos(Succ(vuz31700)), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt36(new_primPlusNat1(new_primMulNat0(vuz31600, Succ(vuz31700)), Succ(vuz31700)), new_primMulNat0(vuz3180, vuz3190), new_primPlusNat1(new_primMulNat0(vuz31600, Succ(vuz31700)), Succ(vuz31700)), new_primMulNat0(vuz3180, vuz3190), vuz3190, vuz31700) 67.74/34.81 new_primQuotInt77(Succ(vuz4700), vuz471, vuz3190) -> new_primQuotInt50(Succ(vuz4700), Succ(vuz4700), vuz3190, Zero) 67.74/34.81 new_primQuotInt67(Succ(vuz4190), Zero, vuz421, vuz420, vuz31900, vuz3170) -> new_primQuotInt68(Succ(vuz4190), Succ(vuz4190), Succ(vuz31900), vuz3170) 67.74/34.81 new_primQuotInt65(vuz366, vuz369, vuz481, vuz368, vuz480, vuz367) -> new_primQuotInt69(vuz366, new_primEqInt4(new_primPlusNat1(vuz369, vuz481)), new_primPlusNat1(vuz369, vuz481), vuz367) 67.74/34.81 new_primQuotInt31(vuz416, False, vuz549, vuz542) -> new_primQuotInt32(vuz416, new_gcd0Gcd'2(vuz542, vuz549)) 67.74/34.81 new_primQuotInt82(vuz428, True, vuz429, vuz3190, vuz3170) -> new_primQuotInt55(vuz428) 67.74/34.81 new_primQuotInt14(vuz348, vuz349, vuz3190, vuz3170) -> new_primQuotInt10(vuz348, new_esEs(new_abs3(vuz3190, vuz3170)), new_abs1(vuz349), new_abs3(vuz3190, vuz3170)) 67.74/34.81 new_gcd0Gcd'2(vuz542, vuz549) -> new_gcd0Gcd'10(new_esEs(new_rem(vuz549, vuz542)), vuz542, vuz549) 67.74/34.81 new_primQuotInt77(Zero, vuz471, vuz3190) -> new_primQuotInt68(Zero, Zero, vuz3190, Zero) 67.74/34.81 new_primQuotInt66(vuz426, False, vuz427, vuz3190, vuz3170) -> new_primQuotInt21(vuz426, vuz427, vuz3190, vuz3170) 67.74/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Pos(Succ(vuz31800)), Pos(Succ(vuz31900)), ty_Int) -> new_primQuotInt67(new_primPlusNat1(new_primMulNat0(vuz31800, Succ(vuz31900)), Succ(vuz31900)), new_primMulNat0(vuz3160, vuz3170), new_primPlusNat1(new_primMulNat0(vuz31800, Succ(vuz31900)), Succ(vuz31900)), new_primMulNat0(vuz3160, vuz3170), vuz31900, vuz3170) 67.74/34.81 new_primQuotInt48(vuz426, vuz427, vuz3190, vuz3170) -> new_primQuotInt66(vuz426, new_esEs(Neg(vuz427)), vuz427, vuz3190, vuz3170) 67.74/34.81 new_quot(Pos(Succ(vuz31600)), Pos(Zero), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt24(new_primMulNat0(vuz3180, vuz3190), new_primMulNat0(vuz3180, vuz3190), vuz3190) 67.74/34.81 new_primQuotInt22(vuz416, vuz417, vuz3190, vuz3170) -> new_primQuotInt23(vuz416, new_esEs(Pos(vuz417)), vuz417, vuz3190, vuz3170) 67.74/34.81 new_sr(Neg(vuz30610), Neg(vuz30710)) -> Pos(new_primMulNat0(vuz30610, vuz30710)) 67.74/34.81 new_primDivNatS01(vuz574, vuz575, Succ(vuz5760), Zero) -> new_primDivNatS02(vuz574, vuz575) 67.74/34.81 new_primQuotInt89(vuz426, False, vuz427, vuz3190, vuz3170) -> new_primQuotInt21(vuz426, vuz427, vuz3190, vuz3170) 67.74/34.81 new_esEs0(vuz3061, vuz3071, ty_Integer) -> error([]) 67.74/34.81 new_primQuotInt87(vuz446, False, vuz447, vuz3190, vuz3170) -> new_primQuotInt88(vuz446, vuz447, vuz3190, vuz3170) 67.74/34.81 new_negate0(Pos(vuz300)) -> Neg(vuz300) 67.74/34.81 new_primQuotInt64(vuz394, vuz397, Pos(vuz3180), vuz3190, vuz396, vuz395) -> new_primQuotInt52(vuz394, vuz397, new_primMulNat0(vuz3180, vuz3190), vuz396, new_primMulNat0(vuz3180, vuz3190), vuz395) 67.74/34.81 new_primQuotInt88(vuz446, vuz447, vuz3190, vuz3170) -> new_primQuotInt10(vuz446, new_esEs(new_abs4(vuz3190, vuz3170)), new_abs1(vuz447), new_abs4(vuz3190, vuz3170)) 67.74/34.81 new_primQuotInt42(vuz354, True, vuz355, vuz3190, vuz3170) -> new_primQuotInt44(vuz354) 67.74/34.81 new_primQuotInt76(Succ(vuz4650), Succ(vuz4640), vuz467, vuz466, vuz3190, vuz31700) -> new_primQuotInt76(vuz4650, vuz4640, vuz4650, vuz4640, vuz3190, vuz31700) 67.74/34.81 new_primQuotInt72(Succ(vuz4390), Zero, vuz441, vuz440, vuz31900, vuz3170) -> new_primQuotInt18(Succ(vuz4390), Succ(vuz4390), Succ(vuz31900), vuz3170) 67.74/34.81 new_primQuotInt59(vuz378, vuz381, Pos(vuz3180), vuz3190, vuz380, vuz379) -> new_primQuotInt53(vuz378, vuz381, new_primMulNat0(vuz3180, vuz3190), vuz380, new_primMulNat0(vuz3180, vuz3190), vuz379) 67.74/34.81 new_primQuotInt75(Zero, vuz463, vuz3190) -> new_primQuotInt45(Zero, Zero, vuz3190, Zero) 67.74/34.81 new_primEqInt3(Zero) -> new_primEqInt2 67.74/34.81 new_primMinusNatS1 -> Zero 67.74/34.81 new_negate(:%(vuz30, vuz31)) -> :%(new_negate0(vuz30), vuz31) 67.74/34.81 new_primQuotInt70(vuz428, Neg(Zero)) -> new_error 67.74/34.81 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.81 new_quot(Pos(vuz3160), Pos(vuz3170), Neg(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt22(new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), vuz3190, vuz3170) 67.74/34.81 new_gcd0Gcd'10(True, vuz542, vuz549) -> vuz542 67.74/34.81 new_primQuotInt12(vuz366, Succ(vuz3690), Succ(vuz4830), vuz367) -> new_primQuotInt12(vuz366, vuz3690, vuz4830, vuz367) 67.74/34.81 new_primQuotInt57(vuz382, vuz385, Pos(vuz3180), vuz3190, vuz384, vuz383) -> new_primQuotInt38(vuz382, vuz385, new_primMulNat0(vuz3180, vuz3190), vuz384, new_primMulNat0(vuz3180, vuz3190), vuz383) 67.74/34.81 new_primEqInt4(Succ(vuz3250)) -> new_primEqInt(vuz3250) 67.74/34.81 new_primQuotInt78(vuz366, vuz369, Neg(vuz3180), vuz3190, vuz368, vuz367) -> new_primQuotInt52(vuz366, vuz369, new_primMulNat0(vuz3180, vuz3190), vuz368, new_primMulNat0(vuz3180, vuz3190), vuz367) 67.74/34.81 new_quot0(Neg(vuz3190), Neg(vuz3170), Neg(vuz3160), vuz318, ty_Int) -> new_primQuotInt64(new_primMulNat0(vuz3190, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz318, vuz3190, new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3190, vuz3170)) 67.74/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Neg(Zero), Neg(Succ(vuz31900)), ty_Int) -> new_primQuotInt47(Zero, new_primMulNat0(vuz3160, vuz3170), Zero, new_primMulNat0(vuz3160, vuz3170), vuz31900, vuz3170) 67.74/34.81 new_absReal10(vuz554) -> vuz554 67.74/34.81 new_primQuotInt52(vuz366, vuz369, vuz483, vuz368, vuz482, vuz367) -> new_primQuotInt12(vuz366, vuz369, vuz483, vuz367) 67.74/34.81 new_primQuotInt86(vuz416, True, vuz417, vuz3190, vuz3170) -> new_primQuotInt44(vuz416) 67.74/34.81 new_primQuotInt45(vuz360, vuz361, vuz3190, vuz3170) -> new_primQuotInt46(vuz360, new_esEs(Pos(vuz361)), vuz361, vuz3190, vuz3170) 67.74/34.81 new_primQuotInt12(vuz366, Zero, Succ(vuz4830), vuz367) -> new_primQuotInt91(vuz366, new_primEqInt3(Succ(vuz4830)), Succ(vuz4830), vuz367) 67.74/34.81 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.81 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.81 new_primQuotInt17(vuz348, vuz349, vuz3190, vuz3170) -> new_primQuotInt13(vuz348, new_esEs(Neg(vuz349)), vuz349, vuz3190, vuz3170) 67.74/34.81 new_primQuotInt67(Zero, Succ(vuz4180), vuz421, vuz420, vuz31900, vuz3170) -> new_primQuotInt50(Succ(vuz4180), Succ(vuz4180), Succ(vuz31900), vuz3170) 67.74/34.81 new_primQuotInt92(vuz354, False, vuz355, vuz3190, vuz3170) -> new_primQuotInt43(vuz354, vuz355, vuz3190, vuz3170) 67.74/34.81 new_quot(Pos(Zero), Pos(Zero), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt24(new_primMulNat0(vuz3180, vuz3190), new_primMulNat0(vuz3180, vuz3190), vuz3190) 67.74/34.81 new_primQuotInt75(Succ(vuz4620), vuz463, vuz3190) -> new_primQuotInt48(Succ(vuz4620), Succ(vuz4620), vuz3190, Zero) 67.74/34.81 new_primQuotInt70(vuz428, Neg(Succ(vuz55200))) -> Pos(new_primDivNatS1(vuz428, vuz55200)) 67.74/34.81 new_quot(Pos(vuz3160), Pos(vuz3170), Pos(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt18(new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), vuz3190, vuz3170) 67.74/34.81 new_primPlusNat0(Succ(vuz3350), vuz307100) -> Succ(Succ(new_primPlusNat1(vuz3350, vuz307100))) 67.74/34.81 new_primQuotInt84(vuz370, False, vuz508, vuz371) -> new_primQuotInt85(vuz370, vuz508, vuz371) 67.74/34.81 new_primQuotInt42(vuz354, False, vuz355, vuz3190, vuz3170) -> new_primQuotInt43(vuz354, vuz355, vuz3190, vuz3170) 67.74/34.81 new_primQuotInt43(vuz354, vuz355, vuz3190, vuz3170) -> new_primQuotInt31(vuz354, new_esEs(new_abs0(vuz3190, vuz3170)), new_abs(vuz355), new_abs0(vuz3190, vuz3170)) 67.74/34.81 new_primEqInt2 -> True 67.74/34.81 new_primQuotInt62(Zero, Zero, vuz403, vuz402, vuz3190, vuz31700) -> new_primQuotInt22(Zero, Zero, vuz3190, Succ(vuz31700)) 67.74/34.81 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.81 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.81 new_primPlusNat1(Zero, Zero) -> Zero 67.74/34.81 new_primQuotInt16(Succ(vuz4140), vuz415, vuz3190) -> new_primQuotInt17(Succ(vuz4140), Succ(vuz4140), vuz3190, Zero) 67.74/34.81 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.81 new_primMulNat0(Succ(vuz306100), Zero) -> Zero 67.74/34.81 new_primMulNat0(Zero, Succ(vuz307100)) -> Zero 67.74/34.81 new_primQuotInt16(Zero, vuz415, vuz3190) -> new_primQuotInt18(Zero, Zero, vuz3190, Zero) 67.74/34.81 new_sr(Pos(vuz30610), Pos(vuz30710)) -> Pos(new_primMulNat0(vuz30610, vuz30710)) 67.74/34.81 new_primQuotInt55(vuz426) -> error([]) 67.74/34.81 new_primQuotInt12(vuz366, Zero, Zero, vuz367) -> new_primQuotInt69(vuz366, new_primEqInt4(Zero), Zero, vuz367) 67.74/34.81 new_primPlusNat0(Zero, vuz307100) -> Succ(vuz307100) 67.74/34.81 new_primQuotInt92(vuz354, True, vuz355, vuz3190, vuz3170) -> new_primQuotInt42(vuz354, new_esEs(new_sr(Pos(vuz3190), Neg(vuz3170))), vuz355, vuz3190, vuz3170) 67.74/34.81 new_primQuotInt72(Zero, Succ(vuz4380), vuz441, vuz440, vuz31900, vuz3170) -> new_primQuotInt17(Succ(vuz4380), Succ(vuz4380), Succ(vuz31900), vuz3170) 67.74/34.81 new_quot(Pos(Succ(vuz31600)), Pos(Succ(vuz31700)), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt62(new_primPlusNat1(new_primMulNat0(vuz31600, Succ(vuz31700)), Succ(vuz31700)), new_primMulNat0(vuz3180, vuz3190), new_primPlusNat1(new_primMulNat0(vuz31600, Succ(vuz31700)), Succ(vuz31700)), new_primMulNat0(vuz3180, vuz3190), vuz3190, vuz31700) 67.74/34.81 new_primQuotInt21(vuz426, vuz427, vuz3190, vuz3170) -> new_primQuotInt10(vuz426, new_esEs(new_abs2(vuz3190, vuz3170)), new_abs1(vuz427), new_abs2(vuz3190, vuz3170)) 67.74/34.81 new_primQuotInt91(vuz370, True, vuz508, vuz371) -> new_primQuotInt84(vuz370, new_esEs(Pos(vuz371)), vuz508, vuz371) 67.74/34.81 new_primQuotInt51(vuz428, False, vuz429, vuz3190, vuz3170) -> new_primQuotInt9(vuz428, vuz429, vuz3190, vuz3170) 67.74/34.81 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.81 new_primQuotInt47(Succ(vuz4310), Zero, vuz433, vuz432, vuz31900, vuz3170) -> new_primQuotInt45(Succ(vuz4310), Succ(vuz4310), Succ(vuz31900), vuz3170) 67.74/34.81 new_primQuotInt83(vuz366, False, vuz505, vuz367) -> new_primQuotInt49(vuz366, vuz505, vuz367) 67.74/34.81 new_quot(Neg(Zero), Neg(Zero), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt75(new_primMulNat0(vuz3180, vuz3190), new_primMulNat0(vuz3180, vuz3190), vuz3190) 67.74/34.81 new_primEqInt0(vuz3260) -> False 67.74/34.81 new_primQuotInt18(vuz398, vuz399, vuz3190, vuz3170) -> new_primQuotInt33(vuz398, new_esEs(Pos(vuz399)), vuz399, vuz3190, vuz3170) 67.74/34.81 new_abs3(vuz3190, vuz3170) -> new_absReal1(new_sr(Pos(vuz3190), Pos(vuz3170)), new_sr(Pos(vuz3190), Pos(vuz3170))) 67.74/34.81 new_quot(Neg(vuz3160), Pos(vuz3170), Pos(Zero), Pos(Zero), ty_Int) -> new_primQuotInt73(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz3170) 67.74/34.81 new_primQuotInt28(vuz374, vuz377, Pos(vuz3180), vuz3190, vuz376, vuz375) -> new_primQuotInt29(vuz374, vuz377, new_primMulNat0(vuz3180, vuz3190), vuz376, new_primMulNat0(vuz3180, vuz3190), vuz375) 67.74/34.81 new_primQuotInt58(Succ(vuz4360), vuz437, vuz3170) -> new_primQuotInt48(Succ(vuz4360), Succ(vuz4360), Zero, vuz3170) 67.74/34.81 new_quot(Neg(vuz3160), Neg(vuz3170), Pos(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt68(new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), vuz3190, vuz3170) 67.74/34.81 new_primMulNat0(Succ(vuz306100), Succ(vuz307100)) -> new_primPlusNat0(new_primMulNat0(vuz306100, Succ(vuz307100)), vuz307100) 67.74/34.81 new_primQuotInt10(vuz428, True, vuz552, vuz544) -> new_primQuotInt70(vuz428, vuz552) 67.74/34.81 new_primQuotInt49(vuz366, vuz505, vuz367) -> new_primQuotInt31(vuz366, new_esEs(new_abs(vuz367)), new_abs(vuz505), new_abs(vuz367)) 67.74/34.81 new_primEqInt3(Succ(vuz3260)) -> new_primEqInt0(vuz3260) 67.74/34.81 new_primQuotInt61(vuz360, False, vuz361, vuz3190, vuz3170) -> new_primQuotInt60(vuz360, vuz361, vuz3190, vuz3170) 67.74/34.81 new_primQuotInt61(vuz360, True, vuz361, vuz3190, vuz3170) -> new_primQuotInt44(vuz360) 67.74/34.81 new_primQuotInt54(vuz378, True, vuz514, vuz379) -> new_primQuotInt63(vuz378, new_esEs(Neg(vuz379)), vuz514, vuz379) 67.74/34.81 new_primPlusNat1(Succ(vuz33500), Zero) -> Succ(vuz33500) 67.74/34.81 new_primPlusNat1(Zero, Succ(vuz3071000)) -> Succ(vuz3071000) 67.74/34.81 new_primQuotInt82(vuz428, False, vuz429, vuz3190, vuz3170) -> new_primQuotInt9(vuz428, vuz429, vuz3190, vuz3170) 67.74/34.81 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.81 new_primQuotInt74(Succ(vuz4490), Succ(vuz4480), vuz451, vuz450, vuz31900, vuz3170) -> new_primQuotInt74(vuz4490, vuz4480, vuz4490, vuz4480, vuz31900, vuz3170) 67.74/34.81 new_primQuotInt38(vuz378, vuz381, vuz495, vuz380, vuz494, vuz379) -> new_primQuotInt39(vuz378, vuz381, vuz495, vuz379) 67.74/34.81 new_primQuotInt66(vuz426, True, vuz427, vuz3190, vuz3170) -> new_primQuotInt89(vuz426, new_esEs(new_sr(Neg(vuz3190), Neg(vuz3170))), vuz427, vuz3190, vuz3170) 67.74/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Neg(Zero), Neg(Zero), ty_Int) -> new_primQuotInt58(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz3170) 67.74/34.81 new_primQuotInt24(Zero, vuz407, vuz3190) -> new_primQuotInt22(Zero, Zero, vuz3190, Zero) 67.74/34.81 new_quot0(vuz319, vuz317, vuz316, vuz318, ty_Integer) -> error([]) 67.74/34.81 new_primQuotInt70(vuz428, Pos(Zero)) -> new_error 67.74/34.81 new_esEs0(vuz3061, vuz3071, ty_Int) -> new_esEs(new_sr(vuz3061, vuz3071)) 67.74/34.81 new_primQuotInt76(Succ(vuz4650), Zero, vuz467, vuz466, vuz3190, vuz31700) -> new_primQuotInt68(Succ(vuz4650), Succ(vuz4650), vuz3190, Succ(vuz31700)) 67.74/34.81 new_primDivNatS1(Succ(Succ(vuz41600)), Succ(vuz549000)) -> new_primDivNatS01(vuz41600, vuz549000, vuz41600, vuz549000) 67.74/34.81 new_primEqInt1 -> True 67.74/34.81 new_quot0(Pos(vuz3190), Neg(vuz3170), Neg(vuz3160), vuz318, ty_Int) -> new_primQuotInt59(new_primMulNat0(vuz3190, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz318, vuz3190, new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3190, vuz3170)) 67.74/34.81 new_primQuotInt41(vuz378, vuz514, vuz379) -> new_primQuotInt10(vuz378, new_esEs(new_abs1(vuz379)), new_abs(vuz514), new_abs1(vuz379)) 67.74/34.81 new_primEqInt(vuz3250) -> False 67.74/34.81 new_ps(:%(vuz3060, vuz3061), :%(vuz3070, vuz3071), h) -> new_reduce2Reduce1(vuz3060, vuz3071, vuz3070, vuz3061, new_esEs0(vuz3061, vuz3071, h), h) 67.74/34.81 new_primQuotInt54(vuz378, False, vuz514, vuz379) -> new_primQuotInt41(vuz378, vuz514, vuz379) 67.74/34.81 new_primQuotInt23(vuz416, True, vuz417, vuz3190, vuz3170) -> new_primQuotInt86(vuz416, new_esEs(new_sr(Neg(vuz3190), Pos(vuz3170))), vuz417, vuz3190, vuz3170) 67.74/34.81 new_reduce2Reduce1(vuz316, vuz317, vuz318, vuz319, True, ba) -> error([]) 67.74/34.81 new_primQuotInt37(vuz416, vuz417, vuz3190, vuz3170) -> new_primQuotInt31(vuz416, new_esEs(new_abs4(vuz3190, vuz3170)), new_abs(vuz417), new_abs4(vuz3190, vuz3170)) 67.74/34.81 new_primQuotInt26(vuz374, vuz511, vuz375) -> new_primQuotInt10(vuz374, new_esEs(new_abs1(vuz375)), new_abs1(vuz511), new_abs1(vuz375)) 67.74/34.81 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.81 new_quot(Neg(Succ(vuz31600)), Neg(Succ(vuz31700)), Pos(vuz3180), Neg(vuz3190), ty_Int) -> new_primQuotInt56(new_primPlusNat1(new_primMulNat0(vuz31600, Succ(vuz31700)), Succ(vuz31700)), new_primMulNat0(vuz3180, vuz3190), new_primPlusNat1(new_primMulNat0(vuz31600, Succ(vuz31700)), Succ(vuz31700)), new_primMulNat0(vuz3180, vuz3190), vuz3190, vuz31700) 67.74/34.81 new_primQuotInt32(vuz416, Neg(Zero)) -> new_error 67.74/34.81 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.81 new_gcd0Gcd'00(vuz542, vuz557) -> new_gcd0Gcd'2(vuz557, vuz542) 67.74/34.81 new_abs(vuz399) -> new_absReal1(Pos(vuz399), Pos(vuz399)) 67.74/34.81 new_quot(vuz316, vuz317, vuz318, vuz319, ty_Integer) -> error([]) 67.74/34.81 new_quot0(Pos(vuz3190), Pos(vuz3170), Pos(vuz3160), vuz318, ty_Int) -> new_primQuotInt78(new_primMulNat0(vuz3190, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz318, vuz3190, new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3190, vuz3170)) 67.74/34.81 new_primQuotInt47(Succ(vuz4310), Succ(vuz4300), vuz433, vuz432, vuz31900, vuz3170) -> new_primQuotInt47(vuz4310, vuz4300, vuz4310, vuz4300, vuz31900, vuz3170) 67.74/34.81 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.81 new_quot(Pos(vuz3160), Neg(vuz3170), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt50(new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), new_primPlusNat1(new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3180, vuz3190)), vuz3190, vuz3170) 67.74/34.81 new_primQuotInt15(vuz348, False, vuz349, vuz3190, vuz3170) -> new_primQuotInt14(vuz348, vuz349, vuz3190, vuz3170) 67.74/34.81 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.81 new_quot(Pos(Zero), Pos(Succ(vuz31700)), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt36(Zero, new_primMulNat0(vuz3180, vuz3190), Zero, new_primMulNat0(vuz3180, vuz3190), vuz3190, vuz31700) 67.74/34.81 new_quot(Neg(Zero), Neg(Succ(vuz31700)), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt76(Zero, new_primMulNat0(vuz3180, vuz3190), Zero, new_primMulNat0(vuz3180, vuz3190), vuz3190, vuz31700) 67.74/34.81 new_primQuotInt46(vuz360, True, vuz361, vuz3190, vuz3170) -> new_primQuotInt61(vuz360, new_esEs(new_sr(Neg(vuz3190), Neg(vuz3170))), vuz361, vuz3190, vuz3170) 67.74/34.81 new_quot(Neg(Succ(vuz31600)), Neg(Zero), Neg(vuz3180), Pos(vuz3190), ty_Int) -> new_primQuotInt77(new_primMulNat0(vuz3180, vuz3190), new_primMulNat0(vuz3180, vuz3190), vuz3190) 67.74/34.81 new_quot0(Neg(vuz3190), Neg(vuz3170), Pos(vuz3160), vuz318, ty_Int) -> new_primQuotInt81(new_primMulNat0(vuz3190, vuz3170), new_primMulNat0(vuz3160, vuz3170), vuz318, vuz3190, new_primMulNat0(vuz3160, vuz3170), new_primMulNat0(vuz3190, vuz3170)) 67.74/34.81 new_primQuotInt60(vuz360, vuz361, vuz3190, vuz3170) -> new_primQuotInt31(vuz360, new_esEs(new_abs2(vuz3190, vuz3170)), new_abs(vuz361), new_abs2(vuz3190, vuz3170)) 67.74/34.81 new_error -> error([]) 67.74/34.81 new_primQuotInt36(Succ(vuz4090), Succ(vuz4080), vuz411, vuz410, vuz3190, vuz31700) -> new_primQuotInt36(vuz4090, vuz4080, vuz4090, vuz4080, vuz3190, vuz31700) 67.74/34.81 new_primQuotInt34(vuz398, vuz399, vuz3190, vuz3170) -> new_primQuotInt31(vuz398, new_esEs(new_abs3(vuz3190, vuz3170)), new_abs(vuz399), new_abs3(vuz3190, vuz3170)) 67.74/34.81 new_primQuotInt35(vuz398, False, vuz399, vuz3190, vuz3170) -> new_primQuotInt34(vuz398, vuz399, vuz3190, vuz3170) 67.74/34.81 new_primQuotInt62(Succ(vuz4010), Zero, vuz403, vuz402, vuz3190, vuz31700) -> new_primQuotInt22(Succ(vuz4010), Succ(vuz4010), vuz3190, Succ(vuz31700)) 67.74/34.81 new_primQuotInt63(vuz378, True, vuz514, vuz379) -> new_primQuotInt55(vuz378) 67.74/34.81 new_primQuotInt72(Succ(vuz4390), Succ(vuz4380), vuz441, vuz440, vuz31900, vuz3170) -> new_primQuotInt72(vuz4390, vuz4380, vuz4390, vuz4380, vuz31900, vuz3170) 67.74/34.81 new_primQuotInt39(vuz374, Succ(vuz4890), Succ(vuz3770), vuz375) -> new_primQuotInt39(vuz374, vuz4890, vuz3770, vuz375) 67.74/34.81 new_absReal1(vuz554, Neg(Succ(vuz55500))) -> new_negate0(vuz554) 67.74/34.81 new_primQuotInt31(vuz416, True, vuz549, vuz542) -> new_primQuotInt32(vuz416, vuz549) 67.74/34.81 new_primQuotInt91(vuz370, False, vuz508, vuz371) -> new_primQuotInt85(vuz370, vuz508, vuz371) 67.74/34.81 new_primQuotInt58(Zero, vuz437, vuz3170) -> new_primQuotInt45(Zero, Zero, Zero, vuz3170) 67.74/34.81 new_primQuotInt89(vuz426, True, vuz427, vuz3190, vuz3170) -> new_primQuotInt55(vuz426) 67.74/34.81 new_primQuotInt47(Zero, Zero, vuz433, vuz432, vuz31900, vuz3170) -> new_primQuotInt45(Zero, Zero, Succ(vuz31900), vuz3170) 67.74/34.81 67.74/34.81 Q is empty. 67.74/34.81 We have to consider all (P,Q,R)-chains. 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (21) NonTerminationLoopProof (COMPLETE) 67.74/34.81 We used the non-termination processor [FROCOS05] to show that the DP problem is infinite. 67.74/34.81 Found a loop by semiunifying a rule from P directly. 67.74/34.81 67.74/34.81 s = new_iterate(vuz4, vuz3, vuz5) evaluates to t =new_iterate(vuz4, vuz3, new_ps(new_ps(vuz4, new_negate(vuz3), ty_Int), vuz5, ty_Int)) 67.74/34.81 67.74/34.81 Thus s starts an infinite chain as s semiunifies with t with the following substitutions: 67.74/34.81 * Matcher: [vuz5 / new_ps(new_ps(vuz4, new_negate(vuz3), ty_Int), vuz5, ty_Int)] 67.74/34.81 * Semiunifier: [ ] 67.74/34.81 67.74/34.81 -------------------------------------------------------------------------------- 67.74/34.81 Rewriting sequence 67.74/34.81 67.74/34.81 The DP semiunifies directly so there is only one rewrite step from new_iterate(vuz4, vuz3, vuz5) to new_iterate(vuz4, vuz3, new_ps(new_ps(vuz4, new_negate(vuz3), ty_Int), vuz5, ty_Int)). 67.74/34.81 67.74/34.81 67.74/34.81 67.74/34.81 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (22) 67.74/34.81 NO 67.74/34.81 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (23) 67.74/34.81 Obligation: 67.74/34.81 Q DP problem: 67.74/34.81 The TRS P consists of the following rules: 67.74/34.81 67.74/34.81 new_primQuotInt7(Succ(vuz4390), Succ(vuz4380), vuz441, vuz440, vuz31900, vuz3170) -> new_primQuotInt7(vuz4390, vuz4380, vuz4390, vuz4380, vuz31900, vuz3170) 67.74/34.81 67.74/34.81 R is empty. 67.74/34.81 Q is empty. 67.74/34.81 We have to consider all minimal (P,Q,R)-chains. 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (24) TransformationProof (EQUIVALENT) 67.74/34.81 By instantiating [LPAR04] the rule new_primQuotInt7(Succ(vuz4390), Succ(vuz4380), vuz441, vuz440, vuz31900, vuz3170) -> new_primQuotInt7(vuz4390, vuz4380, vuz4390, vuz4380, vuz31900, vuz3170) we obtained the following new rules [LPAR04]: 67.74/34.81 67.74/34.81 (new_primQuotInt7(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt7(x0, x1, x0, x1, z4, z5),new_primQuotInt7(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt7(x0, x1, x0, x1, z4, z5)) 67.74/34.81 67.74/34.81 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (25) 67.74/34.81 Obligation: 67.74/34.81 Q DP problem: 67.74/34.81 The TRS P consists of the following rules: 67.74/34.81 67.74/34.81 new_primQuotInt7(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt7(x0, x1, x0, x1, z4, z5) 67.74/34.81 67.74/34.81 R is empty. 67.74/34.81 Q is empty. 67.74/34.81 We have to consider all minimal (P,Q,R)-chains. 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (26) QDPSizeChangeProof (EQUIVALENT) 67.74/34.81 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. 67.74/34.81 67.74/34.81 From the DPs we obtained the following set of size-change graphs: 67.74/34.81 *new_primQuotInt7(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt7(x0, x1, x0, x1, z4, z5) 67.74/34.81 The graph contains the following edges 1 > 1, 3 > 1, 2 > 2, 4 > 2, 1 > 3, 3 > 3, 2 > 4, 4 > 4, 5 >= 5, 6 >= 6 67.74/34.81 67.74/34.81 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (27) 67.74/34.81 YES 67.74/34.81 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (28) 67.74/34.81 Obligation: 67.74/34.81 Q DP problem: 67.74/34.81 The TRS P consists of the following rules: 67.74/34.81 67.74/34.81 new_primDivNatS(Succ(Succ(vuz41600)), Succ(vuz549000)) -> new_primDivNatS0(vuz41600, vuz549000, vuz41600, vuz549000) 67.74/34.81 new_primDivNatS0(vuz574, vuz575, Zero, Zero) -> new_primDivNatS00(vuz574, vuz575) 67.74/34.81 new_primDivNatS(Succ(Succ(vuz41600)), Zero) -> new_primDivNatS(new_primMinusNatS0(vuz41600), Zero) 67.74/34.81 new_primDivNatS0(vuz574, vuz575, Succ(vuz5760), Succ(vuz5770)) -> new_primDivNatS0(vuz574, vuz575, vuz5760, vuz5770) 67.74/34.81 new_primDivNatS0(vuz574, vuz575, Succ(vuz5760), Zero) -> new_primDivNatS(new_primMinusNatS2(vuz574, vuz575), Succ(vuz575)) 67.74/34.81 new_primDivNatS00(vuz574, vuz575) -> new_primDivNatS(new_primMinusNatS2(vuz574, vuz575), Succ(vuz575)) 67.74/34.81 new_primDivNatS(Succ(Zero), Zero) -> new_primDivNatS(new_primMinusNatS1, Zero) 67.74/34.81 67.74/34.81 The TRS R consists of the following rules: 67.74/34.81 67.74/34.81 new_primMinusNatS1 -> Zero 67.74/34.81 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.81 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.81 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.81 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.81 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.81 67.74/34.81 The set Q consists of the following terms: 67.74/34.81 67.74/34.81 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.81 new_primMinusNatS0(x0) 67.74/34.81 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.81 new_primMinusNatS2(Zero, Zero) 67.74/34.81 new_primMinusNatS1 67.74/34.81 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.81 67.74/34.81 We have to consider all minimal (P,Q,R)-chains. 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (29) DependencyGraphProof (EQUIVALENT) 67.74/34.81 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 1 less node. 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (30) 67.74/34.81 Complex Obligation (AND) 67.74/34.81 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (31) 67.74/34.81 Obligation: 67.74/34.81 Q DP problem: 67.74/34.81 The TRS P consists of the following rules: 67.74/34.81 67.74/34.81 new_primDivNatS(Succ(Succ(vuz41600)), Zero) -> new_primDivNatS(new_primMinusNatS0(vuz41600), Zero) 67.74/34.81 67.74/34.81 The TRS R consists of the following rules: 67.74/34.81 67.74/34.81 new_primMinusNatS1 -> Zero 67.74/34.81 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.81 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.81 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.81 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.81 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.81 67.74/34.81 The set Q consists of the following terms: 67.74/34.81 67.74/34.81 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.81 new_primMinusNatS0(x0) 67.74/34.81 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.81 new_primMinusNatS2(Zero, Zero) 67.74/34.81 new_primMinusNatS1 67.74/34.81 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.81 67.74/34.81 We have to consider all minimal (P,Q,R)-chains. 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (32) MRRProof (EQUIVALENT) 67.74/34.81 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. 67.74/34.81 67.74/34.81 Strictly oriented dependency pairs: 67.74/34.81 67.74/34.81 new_primDivNatS(Succ(Succ(vuz41600)), Zero) -> new_primDivNatS(new_primMinusNatS0(vuz41600), Zero) 67.74/34.81 67.74/34.81 Strictly oriented rules of the TRS R: 67.74/34.81 67.74/34.81 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.81 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.81 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.81 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.81 67.74/34.81 Used ordering: Polynomial interpretation [POLO]: 67.74/34.81 67.74/34.81 POL(Succ(x_1)) = 1 + x_1 67.74/34.81 POL(Zero) = 2 67.74/34.81 POL(new_primDivNatS(x_1, x_2)) = x_1 + x_2 67.74/34.81 POL(new_primMinusNatS0(x_1)) = 1 + x_1 67.74/34.81 POL(new_primMinusNatS1) = 2 67.74/34.81 POL(new_primMinusNatS2(x_1, x_2)) = 1 + 2*x_1 + 2*x_2 67.74/34.81 67.74/34.81 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (33) 67.74/34.81 Obligation: 67.74/34.81 Q DP problem: 67.74/34.81 P is empty. 67.74/34.81 The TRS R consists of the following rules: 67.74/34.81 67.74/34.81 new_primMinusNatS1 -> Zero 67.74/34.81 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.81 67.74/34.81 The set Q consists of the following terms: 67.74/34.81 67.74/34.81 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.81 new_primMinusNatS0(x0) 67.74/34.81 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.81 new_primMinusNatS2(Zero, Zero) 67.74/34.81 new_primMinusNatS1 67.74/34.81 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.81 67.74/34.81 We have to consider all minimal (P,Q,R)-chains. 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (34) PisEmptyProof (EQUIVALENT) 67.74/34.81 The TRS P is empty. Hence, there is no (P,Q,R) chain. 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (35) 67.74/34.81 YES 67.74/34.81 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (36) 67.74/34.81 Obligation: 67.74/34.81 Q DP problem: 67.74/34.81 The TRS P consists of the following rules: 67.74/34.81 67.74/34.81 new_primDivNatS0(vuz574, vuz575, Zero, Zero) -> new_primDivNatS00(vuz574, vuz575) 67.74/34.81 new_primDivNatS00(vuz574, vuz575) -> new_primDivNatS(new_primMinusNatS2(vuz574, vuz575), Succ(vuz575)) 67.74/34.81 new_primDivNatS(Succ(Succ(vuz41600)), Succ(vuz549000)) -> new_primDivNatS0(vuz41600, vuz549000, vuz41600, vuz549000) 67.74/34.81 new_primDivNatS0(vuz574, vuz575, Succ(vuz5760), Succ(vuz5770)) -> new_primDivNatS0(vuz574, vuz575, vuz5760, vuz5770) 67.74/34.81 new_primDivNatS0(vuz574, vuz575, Succ(vuz5760), Zero) -> new_primDivNatS(new_primMinusNatS2(vuz574, vuz575), Succ(vuz575)) 67.74/34.81 67.74/34.81 The TRS R consists of the following rules: 67.74/34.81 67.74/34.81 new_primMinusNatS1 -> Zero 67.74/34.81 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.81 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.81 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.81 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.81 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.81 67.74/34.81 The set Q consists of the following terms: 67.74/34.81 67.74/34.81 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.81 new_primMinusNatS0(x0) 67.74/34.81 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.81 new_primMinusNatS2(Zero, Zero) 67.74/34.81 new_primMinusNatS1 67.74/34.81 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.81 67.74/34.81 We have to consider all minimal (P,Q,R)-chains. 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (37) QDPSizeChangeProof (EQUIVALENT) 67.74/34.81 We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. 67.74/34.81 67.74/34.81 Order:Polynomial interpretation [POLO]: 67.74/34.81 67.74/34.81 POL(Succ(x_1)) = 1 + x_1 67.74/34.81 POL(Zero) = 1 67.74/34.81 POL(new_primMinusNatS2(x_1, x_2)) = x_1 67.74/34.81 67.74/34.81 67.74/34.81 67.74/34.81 67.74/34.81 From the DPs we obtained the following set of size-change graphs: 67.74/34.81 *new_primDivNatS00(vuz574, vuz575) -> new_primDivNatS(new_primMinusNatS2(vuz574, vuz575), Succ(vuz575)) (allowed arguments on rhs = {1, 2}) 67.74/34.81 The graph contains the following edges 1 >= 1 67.74/34.81 67.74/34.81 67.74/34.81 *new_primDivNatS(Succ(Succ(vuz41600)), Succ(vuz549000)) -> new_primDivNatS0(vuz41600, vuz549000, vuz41600, vuz549000) (allowed arguments on rhs = {1, 2, 3, 4}) 67.74/34.81 The graph contains the following edges 1 > 1, 2 > 2, 1 > 3, 2 > 4 67.74/34.81 67.74/34.81 67.74/34.81 *new_primDivNatS0(vuz574, vuz575, Succ(vuz5760), Succ(vuz5770)) -> new_primDivNatS0(vuz574, vuz575, vuz5760, vuz5770) (allowed arguments on rhs = {1, 2, 3, 4}) 67.74/34.81 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4 67.74/34.81 67.74/34.81 67.74/34.81 *new_primDivNatS0(vuz574, vuz575, Zero, Zero) -> new_primDivNatS00(vuz574, vuz575) (allowed arguments on rhs = {1, 2}) 67.74/34.81 The graph contains the following edges 1 >= 1, 2 >= 2 67.74/34.81 67.74/34.81 67.74/34.81 *new_primDivNatS0(vuz574, vuz575, Succ(vuz5760), Zero) -> new_primDivNatS(new_primMinusNatS2(vuz574, vuz575), Succ(vuz575)) (allowed arguments on rhs = {1, 2}) 67.74/34.81 The graph contains the following edges 1 >= 1 67.74/34.81 67.74/34.81 67.74/34.81 67.74/34.81 We oriented the following set of usable rules [AAECC05,FROCOS05]. 67.74/34.81 67.74/34.81 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.81 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.81 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.81 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.81 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (38) 67.74/34.81 YES 67.74/34.81 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (39) 67.74/34.81 Obligation: 67.74/34.81 Q DP problem: 67.74/34.81 The TRS P consists of the following rules: 67.74/34.81 67.74/34.81 new_primMulNat(Succ(vuz306100), Succ(vuz307100)) -> new_primMulNat(vuz306100, Succ(vuz307100)) 67.74/34.81 67.74/34.81 R is empty. 67.74/34.81 Q is empty. 67.74/34.81 We have to consider all minimal (P,Q,R)-chains. 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (40) QDPSizeChangeProof (EQUIVALENT) 67.74/34.81 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. 67.74/34.81 67.74/34.81 From the DPs we obtained the following set of size-change graphs: 67.74/34.81 *new_primMulNat(Succ(vuz306100), Succ(vuz307100)) -> new_primMulNat(vuz306100, Succ(vuz307100)) 67.74/34.81 The graph contains the following edges 1 > 1, 2 >= 2 67.74/34.81 67.74/34.81 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (41) 67.74/34.81 YES 67.74/34.81 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (42) 67.74/34.81 Obligation: 67.74/34.81 Q DP problem: 67.74/34.81 The TRS P consists of the following rules: 67.74/34.81 67.74/34.81 new_primMinusNatS(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS(vuz5740, vuz5750) 67.74/34.81 67.74/34.81 R is empty. 67.74/34.81 Q is empty. 67.74/34.81 We have to consider all minimal (P,Q,R)-chains. 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (43) QDPSizeChangeProof (EQUIVALENT) 67.74/34.81 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. 67.74/34.81 67.74/34.81 From the DPs we obtained the following set of size-change graphs: 67.74/34.81 *new_primMinusNatS(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS(vuz5740, vuz5750) 67.74/34.81 The graph contains the following edges 1 > 1, 2 > 2 67.74/34.81 67.74/34.81 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (44) 67.74/34.81 YES 67.74/34.81 67.74/34.81 ---------------------------------------- 67.74/34.81 67.74/34.81 (45) 67.74/34.81 Obligation: 67.74/34.81 Q DP problem: 67.74/34.81 The TRS P consists of the following rules: 67.74/34.81 67.74/34.81 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.81 new_gcd0Gcd'(vuz542, vuz549) -> new_gcd0Gcd'1(new_esEs(new_rem(vuz549, vuz542)), vuz542, vuz549) 67.74/34.81 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.81 67.74/34.81 The TRS R consists of the following rules: 67.74/34.81 67.74/34.81 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.81 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.81 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.81 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.81 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.81 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.81 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.81 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.81 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.81 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.81 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.81 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.81 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.81 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.81 new_error -> error([]) 67.74/34.82 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.82 new_primEqInt2 -> True 67.74/34.82 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.82 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS1 -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.82 new_primEqInt1 -> True 67.74/34.82 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primEqInt0(vuz3260) -> False 67.74/34.82 new_primEqInt(vuz3250) -> False 67.74/34.82 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 67.74/34.82 The set Q consists of the following terms: 67.74/34.82 67.74/34.82 new_rem(Neg(x0), Neg(Zero)) 67.74/34.82 new_primEqInt1 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.82 new_primMinusNatS1 67.74/34.82 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.82 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.82 new_primMinusNatS2(Zero, Zero) 67.74/34.82 new_error 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) 67.74/34.82 new_rem(Pos(x0), Pos(Zero)) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.82 new_primEqInt0(x0) 67.74/34.82 new_esEs(Pos(Zero)) 67.74/34.82 new_esEs(Pos(Succ(x0))) 67.74/34.82 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS02(x0, x1) 67.74/34.82 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.82 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.82 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS1(Zero, x0) 67.74/34.82 new_primEqInt(x0) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.82 new_rem(Pos(x0), Neg(Zero)) 67.74/34.82 new_rem(Neg(x0), Pos(Zero)) 67.74/34.82 new_primMinusNatS0(x0) 67.74/34.82 new_primEqInt2 67.74/34.82 new_esEs(Neg(Zero)) 67.74/34.82 new_esEs(Neg(Succ(x0))) 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.82 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.82 67.74/34.82 We have to consider all minimal (P,Q,R)-chains. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (46) MNOCProof (EQUIVALENT) 67.74/34.82 We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (47) 67.74/34.82 Obligation: 67.74/34.82 Q DP problem: 67.74/34.82 The TRS P consists of the following rules: 67.74/34.82 67.74/34.82 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.82 new_gcd0Gcd'(vuz542, vuz549) -> new_gcd0Gcd'1(new_esEs(new_rem(vuz549, vuz542)), vuz542, vuz549) 67.74/34.82 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.82 67.74/34.82 The TRS R consists of the following rules: 67.74/34.82 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.82 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.82 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.82 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.82 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.82 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.82 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.82 new_error -> error([]) 67.74/34.82 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.82 new_primEqInt2 -> True 67.74/34.82 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.82 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS1 -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.82 new_primEqInt1 -> True 67.74/34.82 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primEqInt0(vuz3260) -> False 67.74/34.82 new_primEqInt(vuz3250) -> False 67.74/34.82 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 67.74/34.82 Q is empty. 67.74/34.82 We have to consider all (P,Q,R)-chains. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (48) InductionCalculusProof (EQUIVALENT) 67.74/34.82 Note that final constraints are written in bold face. 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 For Pair new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) the following chains were created: 67.74/34.82 *We consider the chain new_gcd0Gcd'0(x2, x3) -> new_gcd0Gcd'(x3, x2), new_gcd0Gcd'(x4, x5) -> new_gcd0Gcd'1(new_esEs(new_rem(x5, x4)), x4, x5) which results in the following constraint: 67.74/34.82 67.74/34.82 (1) (new_gcd0Gcd'(x3, x2)=new_gcd0Gcd'(x4, x5) ==> new_gcd0Gcd'0(x2, x3)_>=_new_gcd0Gcd'(x3, x2)) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.74/34.82 67.74/34.82 (2) (new_gcd0Gcd'0(x2, x3)_>=_new_gcd0Gcd'(x3, x2)) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 For Pair new_gcd0Gcd'(vuz542, vuz549) -> new_gcd0Gcd'1(new_esEs(new_rem(vuz549, vuz542)), vuz542, vuz549) the following chains were created: 67.74/34.82 *We consider the chain new_gcd0Gcd'(x12, x13) -> new_gcd0Gcd'1(new_esEs(new_rem(x13, x12)), x12, x13), new_gcd0Gcd'1(False, x14, x15) -> new_gcd0Gcd'0(x14, new_rem(x15, x14)) which results in the following constraint: 67.74/34.82 67.74/34.82 (1) (new_gcd0Gcd'1(new_esEs(new_rem(x13, x12)), x12, x13)=new_gcd0Gcd'1(False, x14, x15) ==> new_gcd0Gcd'(x12, x13)_>=_new_gcd0Gcd'1(new_esEs(new_rem(x13, x12)), x12, x13)) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 67.74/34.82 67.74/34.82 (2) (new_rem(x13, x12)=x24 & new_esEs(x24)=False ==> new_gcd0Gcd'(x12, x13)_>=_new_gcd0Gcd'1(new_esEs(new_rem(x13, x12)), x12, x13)) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_esEs(x24)=False which results in the following new constraints: 67.74/34.82 67.74/34.82 (3) (new_primEqInt2=False & new_rem(x13, x12)=Neg(Zero) ==> new_gcd0Gcd'(x12, x13)_>=_new_gcd0Gcd'1(new_esEs(new_rem(x13, x12)), x12, x13)) 67.74/34.82 67.74/34.82 (4) (new_primEqInt1=False & new_rem(x13, x12)=Pos(Zero) ==> new_gcd0Gcd'(x12, x13)_>=_new_gcd0Gcd'1(new_esEs(new_rem(x13, x12)), x12, x13)) 67.74/34.82 67.74/34.82 (5) (new_primEqInt(x25)=False & new_rem(x13, x12)=Pos(Succ(x25)) ==> new_gcd0Gcd'(x12, x13)_>=_new_gcd0Gcd'1(new_esEs(new_rem(x13, x12)), x12, x13)) 67.74/34.82 67.74/34.82 (6) (new_primEqInt0(x26)=False & new_rem(x13, x12)=Neg(Succ(x26)) ==> new_gcd0Gcd'(x12, x13)_>=_new_gcd0Gcd'1(new_esEs(new_rem(x13, x12)), x12, x13)) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We solved constraint (3) using rule (V) (with possible (I) afterwards).We solved constraint (4) using rule (V) (with possible (I) afterwards).We simplified constraint (5) using rule (V) (with possible (I) afterwards) using induction on new_primEqInt(x25)=False which results in the following new constraint: 67.74/34.82 67.74/34.82 (7) (False=False & new_rem(x13, x12)=Pos(Succ(x27)) ==> new_gcd0Gcd'(x12, x13)_>=_new_gcd0Gcd'1(new_esEs(new_rem(x13, x12)), x12, x13)) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (6) using rule (V) (with possible (I) afterwards) using induction on new_primEqInt0(x26)=False which results in the following new constraint: 67.74/34.82 67.74/34.82 (8) (False=False & new_rem(x13, x12)=Neg(Succ(x62)) ==> new_gcd0Gcd'(x12, x13)_>=_new_gcd0Gcd'1(new_esEs(new_rem(x13, x12)), x12, x13)) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (7) using rules (I), (II) which results in the following new constraint: 67.74/34.82 67.74/34.82 (9) (new_rem(x13, x12)=Pos(Succ(x27)) ==> new_gcd0Gcd'(x12, x13)_>=_new_gcd0Gcd'1(new_esEs(new_rem(x13, x12)), x12, x13)) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (9) using rule (V) (with possible (I) afterwards) using induction on new_rem(x13, x12)=Pos(Succ(x27)) which results in the following new constraints: 67.74/34.82 67.74/34.82 (10) (Pos(new_primModNatS1(x31, x30))=Pos(Succ(x27)) ==> new_gcd0Gcd'(Pos(Succ(x30)), Pos(x31))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(x31), Pos(Succ(x30)))), Pos(Succ(x30)), Pos(x31))) 67.74/34.82 67.74/34.82 (11) (new_error=Pos(Succ(x27)) ==> new_gcd0Gcd'(Neg(Zero), Neg(x32))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(x32), Neg(Zero))), Neg(Zero), Neg(x32))) 67.74/34.82 67.74/34.82 (12) (new_error=Pos(Succ(x27)) ==> new_gcd0Gcd'(Neg(Zero), Pos(x33))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(x33), Neg(Zero))), Neg(Zero), Pos(x33))) 67.74/34.82 67.74/34.82 (13) (new_error=Pos(Succ(x27)) ==> new_gcd0Gcd'(Pos(Zero), Neg(x34))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(x34), Pos(Zero))), Pos(Zero), Neg(x34))) 67.74/34.82 67.74/34.82 (14) (Pos(new_primModNatS1(x36, x35))=Pos(Succ(x27)) ==> new_gcd0Gcd'(Neg(Succ(x35)), Pos(x36))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(x36), Neg(Succ(x35)))), Neg(Succ(x35)), Pos(x36))) 67.74/34.82 67.74/34.82 (15) (new_error=Pos(Succ(x27)) ==> new_gcd0Gcd'(Pos(Zero), Pos(x39))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(x39), Pos(Zero))), Pos(Zero), Pos(x39))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (10) using rules (I), (II) which results in the following new constraint: 67.74/34.82 67.74/34.82 (16) (new_primModNatS1(x31, x30)=Succ(x27) ==> new_gcd0Gcd'(Pos(Succ(x30)), Pos(x31))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(x31), Pos(Succ(x30)))), Pos(Succ(x30)), Pos(x31))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We solved constraint (11) using rule (V) (with possible (I) afterwards).We solved constraint (12) using rule (V) (with possible (I) afterwards).We solved constraint (13) using rule (V) (with possible (I) afterwards).We simplified constraint (14) using rules (I), (II) which results in the following new constraint: 67.74/34.82 67.74/34.82 (17) (new_primModNatS1(x36, x35)=Succ(x27) ==> new_gcd0Gcd'(Neg(Succ(x35)), Pos(x36))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(x36), Neg(Succ(x35)))), Neg(Succ(x35)), Pos(x36))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We solved constraint (15) using rule (V) (with possible (I) afterwards).We simplified constraint (16) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS1(x31, x30)=Succ(x27) which results in the following new constraints: 67.74/34.82 67.74/34.82 (18) (new_primModNatS1(new_primMinusNatS0(x40), Zero)=Succ(x27) ==> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x40))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Succ(x40))), Pos(Succ(Zero)))), Pos(Succ(Zero)), Pos(Succ(Succ(x40))))) 67.74/34.82 67.74/34.82 (19) (Succ(Zero)=Succ(x27) ==> new_gcd0Gcd'(Pos(Succ(Succ(x41))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Zero)), Pos(Succ(Succ(x41))))), Pos(Succ(Succ(x41))), Pos(Succ(Zero)))) 67.74/34.82 67.74/34.82 (20) (new_primModNatS01(x43, x42, x43, x42)=Succ(x27) ==> new_gcd0Gcd'(Pos(Succ(Succ(x42))), Pos(Succ(Succ(x43))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Succ(x43))), Pos(Succ(Succ(x42))))), Pos(Succ(Succ(x42))), Pos(Succ(Succ(x43))))) 67.74/34.82 67.74/34.82 (21) (new_primModNatS1(new_primMinusNatS1, Zero)=Succ(x27) ==> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Zero)), Pos(Succ(Zero)))), Pos(Succ(Zero)), Pos(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (18) using rules (III), (IV), (VII) which results in the following new constraint: 67.74/34.82 67.74/34.82 (22) (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x40))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Succ(x40))), Pos(Succ(Zero)))), Pos(Succ(Zero)), Pos(Succ(Succ(x40))))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (19) using rules (I), (II), (IV) which results in the following new constraint: 67.74/34.82 67.74/34.82 (23) (new_gcd0Gcd'(Pos(Succ(Succ(x41))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Zero)), Pos(Succ(Succ(x41))))), Pos(Succ(Succ(x41))), Pos(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (20) using rules (III), (IV), (VII) which results in the following new constraint: 67.74/34.82 67.74/34.82 (24) (new_gcd0Gcd'(Pos(Succ(Succ(x48))), Pos(Succ(Succ(x47))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Succ(x47))), Pos(Succ(Succ(x48))))), Pos(Succ(Succ(x48))), Pos(Succ(Succ(x47))))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (21) using rules (III), (IV), (VII) which results in the following new constraint: 67.74/34.82 67.74/34.82 (25) (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Zero)), Pos(Succ(Zero)))), Pos(Succ(Zero)), Pos(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (17) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS1(x36, x35)=Succ(x27) which results in the following new constraints: 67.74/34.82 67.74/34.82 (26) (new_primModNatS1(new_primMinusNatS0(x51), Zero)=Succ(x27) ==> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x51))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Succ(x51))), Neg(Succ(Zero)))), Neg(Succ(Zero)), Pos(Succ(Succ(x51))))) 67.74/34.82 67.74/34.82 (27) (Succ(Zero)=Succ(x27) ==> new_gcd0Gcd'(Neg(Succ(Succ(x52))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Zero)), Neg(Succ(Succ(x52))))), Neg(Succ(Succ(x52))), Pos(Succ(Zero)))) 67.74/34.82 67.74/34.82 (28) (new_primModNatS01(x54, x53, x54, x53)=Succ(x27) ==> new_gcd0Gcd'(Neg(Succ(Succ(x53))), Pos(Succ(Succ(x54))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Succ(x54))), Neg(Succ(Succ(x53))))), Neg(Succ(Succ(x53))), Pos(Succ(Succ(x54))))) 67.74/34.82 67.74/34.82 (29) (new_primModNatS1(new_primMinusNatS1, Zero)=Succ(x27) ==> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Zero)), Neg(Succ(Zero)))), Neg(Succ(Zero)), Pos(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (26) using rules (III), (IV), (VII) which results in the following new constraint: 67.74/34.82 67.74/34.82 (30) (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x51))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Succ(x51))), Neg(Succ(Zero)))), Neg(Succ(Zero)), Pos(Succ(Succ(x51))))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (27) using rules (I), (II), (IV) which results in the following new constraint: 67.74/34.82 67.74/34.82 (31) (new_gcd0Gcd'(Neg(Succ(Succ(x52))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Zero)), Neg(Succ(Succ(x52))))), Neg(Succ(Succ(x52))), Pos(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (28) using rules (III), (IV), (VII) which results in the following new constraint: 67.74/34.82 67.74/34.82 (32) (new_gcd0Gcd'(Neg(Succ(Succ(x59))), Pos(Succ(Succ(x58))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Succ(x58))), Neg(Succ(Succ(x59))))), Neg(Succ(Succ(x59))), Pos(Succ(Succ(x58))))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (29) using rules (III), (IV), (VII) which results in the following new constraint: 67.74/34.82 67.74/34.82 (33) (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Zero)), Neg(Succ(Zero)))), Neg(Succ(Zero)), Pos(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (8) using rules (I), (II) which results in the following new constraint: 67.74/34.82 67.74/34.82 (34) (new_rem(x13, x12)=Neg(Succ(x62)) ==> new_gcd0Gcd'(x12, x13)_>=_new_gcd0Gcd'1(new_esEs(new_rem(x13, x12)), x12, x13)) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (34) using rule (V) (with possible (I) afterwards) using induction on new_rem(x13, x12)=Neg(Succ(x62)) which results in the following new constraints: 67.74/34.82 67.74/34.82 (35) (Neg(new_primModNatS1(x64, x63))=Neg(Succ(x62)) ==> new_gcd0Gcd'(Neg(Succ(x63)), Neg(x64))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(x64), Neg(Succ(x63)))), Neg(Succ(x63)), Neg(x64))) 67.74/34.82 67.74/34.82 (36) (new_error=Neg(Succ(x62)) ==> new_gcd0Gcd'(Neg(Zero), Neg(x67))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(x67), Neg(Zero))), Neg(Zero), Neg(x67))) 67.74/34.82 67.74/34.82 (37) (new_error=Neg(Succ(x62)) ==> new_gcd0Gcd'(Neg(Zero), Pos(x68))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(x68), Neg(Zero))), Neg(Zero), Pos(x68))) 67.74/34.82 67.74/34.82 (38) (new_error=Neg(Succ(x62)) ==> new_gcd0Gcd'(Pos(Zero), Neg(x69))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(x69), Pos(Zero))), Pos(Zero), Neg(x69))) 67.74/34.82 67.74/34.82 (39) (Neg(new_primModNatS1(x73, x72))=Neg(Succ(x62)) ==> new_gcd0Gcd'(Pos(Succ(x72)), Neg(x73))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(x73), Pos(Succ(x72)))), Pos(Succ(x72)), Neg(x73))) 67.74/34.82 67.74/34.82 (40) (new_error=Neg(Succ(x62)) ==> new_gcd0Gcd'(Pos(Zero), Pos(x74))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(x74), Pos(Zero))), Pos(Zero), Pos(x74))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (35) using rules (I), (II) which results in the following new constraint: 67.74/34.82 67.74/34.82 (41) (new_primModNatS1(x64, x63)=Succ(x62) ==> new_gcd0Gcd'(Neg(Succ(x63)), Neg(x64))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(x64), Neg(Succ(x63)))), Neg(Succ(x63)), Neg(x64))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We solved constraint (36) using rule (V) (with possible (I) afterwards).We solved constraint (37) using rule (V) (with possible (I) afterwards).We solved constraint (38) using rule (V) (with possible (I) afterwards).We simplified constraint (39) using rules (I), (II) which results in the following new constraint: 67.74/34.82 67.74/34.82 (42) (new_primModNatS1(x73, x72)=Succ(x62) ==> new_gcd0Gcd'(Pos(Succ(x72)), Neg(x73))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(x73), Pos(Succ(x72)))), Pos(Succ(x72)), Neg(x73))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We solved constraint (40) using rule (V) (with possible (I) afterwards).We simplified constraint (41) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS1(x64, x63)=Succ(x62) which results in the following new constraints: 67.74/34.82 67.74/34.82 (43) (new_primModNatS1(new_primMinusNatS0(x75), Zero)=Succ(x62) ==> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x75))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Succ(x75))), Neg(Succ(Zero)))), Neg(Succ(Zero)), Neg(Succ(Succ(x75))))) 67.74/34.82 67.74/34.82 (44) (Succ(Zero)=Succ(x62) ==> new_gcd0Gcd'(Neg(Succ(Succ(x76))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Zero)), Neg(Succ(Succ(x76))))), Neg(Succ(Succ(x76))), Neg(Succ(Zero)))) 67.74/34.82 67.74/34.82 (45) (new_primModNatS01(x78, x77, x78, x77)=Succ(x62) ==> new_gcd0Gcd'(Neg(Succ(Succ(x77))), Neg(Succ(Succ(x78))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Succ(x78))), Neg(Succ(Succ(x77))))), Neg(Succ(Succ(x77))), Neg(Succ(Succ(x78))))) 67.74/34.82 67.74/34.82 (46) (new_primModNatS1(new_primMinusNatS1, Zero)=Succ(x62) ==> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Zero)), Neg(Succ(Zero)))), Neg(Succ(Zero)), Neg(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (43) using rules (III), (IV), (VII) which results in the following new constraint: 67.74/34.82 67.74/34.82 (47) (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x75))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Succ(x75))), Neg(Succ(Zero)))), Neg(Succ(Zero)), Neg(Succ(Succ(x75))))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (44) using rules (I), (II), (IV) which results in the following new constraint: 67.74/34.82 67.74/34.82 (48) (new_gcd0Gcd'(Neg(Succ(Succ(x76))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Zero)), Neg(Succ(Succ(x76))))), Neg(Succ(Succ(x76))), Neg(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (45) using rules (III), (IV), (VII) which results in the following new constraint: 67.74/34.82 67.74/34.82 (49) (new_gcd0Gcd'(Neg(Succ(Succ(x83))), Neg(Succ(Succ(x82))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Succ(x82))), Neg(Succ(Succ(x83))))), Neg(Succ(Succ(x83))), Neg(Succ(Succ(x82))))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (46) using rules (III), (IV), (VII) which results in the following new constraint: 67.74/34.82 67.74/34.82 (50) (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Zero)), Neg(Succ(Zero)))), Neg(Succ(Zero)), Neg(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (42) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS1(x73, x72)=Succ(x62) which results in the following new constraints: 67.74/34.82 67.74/34.82 (51) (new_primModNatS1(new_primMinusNatS0(x86), Zero)=Succ(x62) ==> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x86))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Succ(x86))), Pos(Succ(Zero)))), Pos(Succ(Zero)), Neg(Succ(Succ(x86))))) 67.74/34.82 67.74/34.82 (52) (Succ(Zero)=Succ(x62) ==> new_gcd0Gcd'(Pos(Succ(Succ(x87))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Zero)), Pos(Succ(Succ(x87))))), Pos(Succ(Succ(x87))), Neg(Succ(Zero)))) 67.74/34.82 67.74/34.82 (53) (new_primModNatS01(x89, x88, x89, x88)=Succ(x62) ==> new_gcd0Gcd'(Pos(Succ(Succ(x88))), Neg(Succ(Succ(x89))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Succ(x89))), Pos(Succ(Succ(x88))))), Pos(Succ(Succ(x88))), Neg(Succ(Succ(x89))))) 67.74/34.82 67.74/34.82 (54) (new_primModNatS1(new_primMinusNatS1, Zero)=Succ(x62) ==> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Zero)), Pos(Succ(Zero)))), Pos(Succ(Zero)), Neg(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (51) using rules (III), (IV), (VII) which results in the following new constraint: 67.74/34.82 67.74/34.82 (55) (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x86))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Succ(x86))), Pos(Succ(Zero)))), Pos(Succ(Zero)), Neg(Succ(Succ(x86))))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (52) using rules (I), (II), (IV) which results in the following new constraint: 67.74/34.82 67.74/34.82 (56) (new_gcd0Gcd'(Pos(Succ(Succ(x87))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Zero)), Pos(Succ(Succ(x87))))), Pos(Succ(Succ(x87))), Neg(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (53) using rules (III), (IV), (VII) which results in the following new constraint: 67.74/34.82 67.74/34.82 (57) (new_gcd0Gcd'(Pos(Succ(Succ(x94))), Neg(Succ(Succ(x93))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Succ(x93))), Pos(Succ(Succ(x94))))), Pos(Succ(Succ(x94))), Neg(Succ(Succ(x93))))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (54) using rules (III), (IV), (VII) which results in the following new constraint: 67.74/34.82 67.74/34.82 (58) (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Zero)), Pos(Succ(Zero)))), Pos(Succ(Zero)), Neg(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 For Pair new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) the following chains were created: 67.74/34.82 *We consider the chain new_gcd0Gcd'1(False, x16, x17) -> new_gcd0Gcd'0(x16, new_rem(x17, x16)), new_gcd0Gcd'0(x18, x19) -> new_gcd0Gcd'(x19, x18) which results in the following constraint: 67.74/34.82 67.74/34.82 (1) (new_gcd0Gcd'0(x16, new_rem(x17, x16))=new_gcd0Gcd'0(x18, x19) ==> new_gcd0Gcd'1(False, x16, x17)_>=_new_gcd0Gcd'0(x16, new_rem(x17, x16))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.74/34.82 67.74/34.82 (2) (new_gcd0Gcd'1(False, x16, x17)_>=_new_gcd0Gcd'0(x16, new_rem(x17, x16))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 To summarize, we get the following constraints P__>=_ for the following pairs. 67.74/34.82 67.74/34.82 *new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'0(x2, x3)_>=_new_gcd0Gcd'(x3, x2)) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 *new_gcd0Gcd'(vuz542, vuz549) -> new_gcd0Gcd'1(new_esEs(new_rem(vuz549, vuz542)), vuz542, vuz549) 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'(Pos(Succ(Succ(x41))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Zero)), Pos(Succ(Succ(x41))))), Pos(Succ(Succ(x41))), Pos(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'(Neg(Succ(Succ(x52))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Zero)), Neg(Succ(Succ(x52))))), Neg(Succ(Succ(x52))), Pos(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'(Neg(Succ(Succ(x76))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Zero)), Neg(Succ(Succ(x76))))), Neg(Succ(Succ(x76))), Neg(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'(Pos(Succ(Succ(x87))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Zero)), Pos(Succ(Succ(x87))))), Pos(Succ(Succ(x87))), Neg(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x40))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Succ(x40))), Pos(Succ(Zero)))), Pos(Succ(Zero)), Pos(Succ(Succ(x40))))) 67.74/34.82 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'(Pos(Succ(Succ(x48))), Pos(Succ(Succ(x47))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Succ(x47))), Pos(Succ(Succ(x48))))), Pos(Succ(Succ(x48))), Pos(Succ(Succ(x47))))) 67.74/34.82 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Zero)), Pos(Succ(Zero)))), Pos(Succ(Zero)), Pos(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x51))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Succ(x51))), Neg(Succ(Zero)))), Neg(Succ(Zero)), Pos(Succ(Succ(x51))))) 67.74/34.82 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'(Neg(Succ(Succ(x59))), Pos(Succ(Succ(x58))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Succ(x58))), Neg(Succ(Succ(x59))))), Neg(Succ(Succ(x59))), Pos(Succ(Succ(x58))))) 67.74/34.82 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Pos(Succ(Zero)), Neg(Succ(Zero)))), Neg(Succ(Zero)), Pos(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x75))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Succ(x75))), Neg(Succ(Zero)))), Neg(Succ(Zero)), Neg(Succ(Succ(x75))))) 67.74/34.82 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'(Neg(Succ(Succ(x83))), Neg(Succ(Succ(x82))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Succ(x82))), Neg(Succ(Succ(x83))))), Neg(Succ(Succ(x83))), Neg(Succ(Succ(x82))))) 67.74/34.82 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Zero)), Neg(Succ(Zero)))), Neg(Succ(Zero)), Neg(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x86))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Succ(x86))), Pos(Succ(Zero)))), Pos(Succ(Zero)), Neg(Succ(Succ(x86))))) 67.74/34.82 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'(Pos(Succ(Succ(x94))), Neg(Succ(Succ(x93))))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Succ(x93))), Pos(Succ(Succ(x94))))), Pos(Succ(Succ(x94))), Neg(Succ(Succ(x93))))) 67.74/34.82 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(new_esEs(new_rem(Neg(Succ(Zero)), Pos(Succ(Zero)))), Pos(Succ(Zero)), Neg(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 *new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.82 67.74/34.82 *(new_gcd0Gcd'1(False, x16, x17)_>=_new_gcd0Gcd'0(x16, new_rem(x17, x16))) 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 67.74/34.82 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. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (49) 67.74/34.82 Obligation: 67.74/34.82 Q DP problem: 67.74/34.82 The TRS P consists of the following rules: 67.74/34.82 67.74/34.82 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.82 new_gcd0Gcd'(vuz542, vuz549) -> new_gcd0Gcd'1(new_esEs(new_rem(vuz549, vuz542)), vuz542, vuz549) 67.74/34.82 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.82 67.74/34.82 The TRS R consists of the following rules: 67.74/34.82 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.82 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.82 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.82 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.82 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.82 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.82 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.82 new_error -> error([]) 67.74/34.82 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.82 new_primEqInt2 -> True 67.74/34.82 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.82 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS1 -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.82 new_primEqInt1 -> True 67.74/34.82 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primEqInt0(vuz3260) -> False 67.74/34.82 new_primEqInt(vuz3250) -> False 67.74/34.82 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 67.74/34.82 The set Q consists of the following terms: 67.74/34.82 67.74/34.82 new_rem(Neg(x0), Neg(Zero)) 67.74/34.82 new_primEqInt1 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.82 new_primMinusNatS1 67.74/34.82 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.82 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.82 new_primMinusNatS2(Zero, Zero) 67.74/34.82 new_error 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) 67.74/34.82 new_rem(Pos(x0), Pos(Zero)) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.82 new_primEqInt0(x0) 67.74/34.82 new_esEs(Pos(Zero)) 67.74/34.82 new_esEs(Pos(Succ(x0))) 67.74/34.82 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS02(x0, x1) 67.74/34.82 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.82 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.82 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS1(Zero, x0) 67.74/34.82 new_primEqInt(x0) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.82 new_rem(Pos(x0), Neg(Zero)) 67.74/34.82 new_rem(Neg(x0), Pos(Zero)) 67.74/34.82 new_primMinusNatS0(x0) 67.74/34.82 new_primEqInt2 67.74/34.82 new_esEs(Neg(Zero)) 67.74/34.82 new_esEs(Neg(Succ(x0))) 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.82 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.82 67.74/34.82 We have to consider all minimal (P,Q,R)-chains. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (50) TransformationProof (EQUIVALENT) 67.74/34.82 By narrowing [LPAR04] the rule new_gcd0Gcd'(vuz542, vuz549) -> new_gcd0Gcd'1(new_esEs(new_rem(vuz549, vuz542)), vuz542, vuz549) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.82 67.74/34.82 (new_gcd0Gcd'(Neg(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Neg(x0)),new_gcd0Gcd'(Neg(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Neg(x0))) 67.74/34.82 (new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)),new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0))) 67.74/34.82 (new_gcd0Gcd'(Neg(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Neg(Zero), Neg(x0)),new_gcd0Gcd'(Neg(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Neg(Zero), Neg(x0))) 67.74/34.82 (new_gcd0Gcd'(Neg(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Neg(Zero), Pos(x0)),new_gcd0Gcd'(Neg(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Neg(Zero), Pos(x0))) 67.74/34.82 (new_gcd0Gcd'(Pos(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Neg(x0)),new_gcd0Gcd'(Pos(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Neg(x0))) 67.74/34.82 (new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)),new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0))) 67.74/34.82 (new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)),new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0))) 67.74/34.82 (new_gcd0Gcd'(Pos(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Pos(x0)),new_gcd0Gcd'(Pos(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Pos(x0))) 67.74/34.82 67.74/34.82 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (51) 67.74/34.82 Obligation: 67.74/34.82 Q DP problem: 67.74/34.82 The TRS P consists of the following rules: 67.74/34.82 67.74/34.82 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.82 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Neg(Zero), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Neg(Zero), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Pos(x0)) 67.74/34.82 67.74/34.82 The TRS R consists of the following rules: 67.74/34.82 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.82 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.82 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.82 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.82 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.82 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.82 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.82 new_error -> error([]) 67.74/34.82 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.82 new_primEqInt2 -> True 67.74/34.82 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.82 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS1 -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.82 new_primEqInt1 -> True 67.74/34.82 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primEqInt0(vuz3260) -> False 67.74/34.82 new_primEqInt(vuz3250) -> False 67.74/34.82 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 67.74/34.82 The set Q consists of the following terms: 67.74/34.82 67.74/34.82 new_rem(Neg(x0), Neg(Zero)) 67.74/34.82 new_primEqInt1 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.82 new_primMinusNatS1 67.74/34.82 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.82 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.82 new_primMinusNatS2(Zero, Zero) 67.74/34.82 new_error 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) 67.74/34.82 new_rem(Pos(x0), Pos(Zero)) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.82 new_primEqInt0(x0) 67.74/34.82 new_esEs(Pos(Zero)) 67.74/34.82 new_esEs(Pos(Succ(x0))) 67.74/34.82 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS02(x0, x1) 67.74/34.82 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.82 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.82 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS1(Zero, x0) 67.74/34.82 new_primEqInt(x0) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.82 new_rem(Pos(x0), Neg(Zero)) 67.74/34.82 new_rem(Neg(x0), Pos(Zero)) 67.74/34.82 new_primMinusNatS0(x0) 67.74/34.82 new_primEqInt2 67.74/34.82 new_esEs(Neg(Zero)) 67.74/34.82 new_esEs(Neg(Succ(x0))) 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.82 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.82 67.74/34.82 We have to consider all minimal (P,Q,R)-chains. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (52) TransformationProof (EQUIVALENT) 67.74/34.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Neg(Zero), Neg(x0)) at position [0,0] we obtained the following new rules [LPAR04]: 67.74/34.82 67.74/34.82 (new_gcd0Gcd'(Neg(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(error([])), Neg(Zero), Neg(x0)),new_gcd0Gcd'(Neg(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(error([])), Neg(Zero), Neg(x0))) 67.74/34.82 67.74/34.82 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (53) 67.74/34.82 Obligation: 67.74/34.82 Q DP problem: 67.74/34.82 The TRS P consists of the following rules: 67.74/34.82 67.74/34.82 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.82 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Neg(Zero), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(error([])), Neg(Zero), Neg(x0)) 67.74/34.82 67.74/34.82 The TRS R consists of the following rules: 67.74/34.82 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.82 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.82 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.82 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.82 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.82 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.82 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.82 new_error -> error([]) 67.74/34.82 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.82 new_primEqInt2 -> True 67.74/34.82 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.82 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS1 -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.82 new_primEqInt1 -> True 67.74/34.82 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primEqInt0(vuz3260) -> False 67.74/34.82 new_primEqInt(vuz3250) -> False 67.74/34.82 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 67.74/34.82 The set Q consists of the following terms: 67.74/34.82 67.74/34.82 new_rem(Neg(x0), Neg(Zero)) 67.74/34.82 new_primEqInt1 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.82 new_primMinusNatS1 67.74/34.82 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.82 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.82 new_primMinusNatS2(Zero, Zero) 67.74/34.82 new_error 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) 67.74/34.82 new_rem(Pos(x0), Pos(Zero)) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.82 new_primEqInt0(x0) 67.74/34.82 new_esEs(Pos(Zero)) 67.74/34.82 new_esEs(Pos(Succ(x0))) 67.74/34.82 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS02(x0, x1) 67.74/34.82 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.82 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.82 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS1(Zero, x0) 67.74/34.82 new_primEqInt(x0) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.82 new_rem(Pos(x0), Neg(Zero)) 67.74/34.82 new_rem(Neg(x0), Pos(Zero)) 67.74/34.82 new_primMinusNatS0(x0) 67.74/34.82 new_primEqInt2 67.74/34.82 new_esEs(Neg(Zero)) 67.74/34.82 new_esEs(Neg(Succ(x0))) 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.82 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.82 67.74/34.82 We have to consider all minimal (P,Q,R)-chains. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (54) DependencyGraphProof (EQUIVALENT) 67.74/34.82 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (55) 67.74/34.82 Obligation: 67.74/34.82 Q DP problem: 67.74/34.82 The TRS P consists of the following rules: 67.74/34.82 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.82 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Neg(Zero), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Pos(x0)) 67.74/34.82 67.74/34.82 The TRS R consists of the following rules: 67.74/34.82 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.82 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.82 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.82 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.82 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.82 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.82 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.82 new_error -> error([]) 67.74/34.82 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.82 new_primEqInt2 -> True 67.74/34.82 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.82 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS1 -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.82 new_primEqInt1 -> True 67.74/34.82 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primEqInt0(vuz3260) -> False 67.74/34.82 new_primEqInt(vuz3250) -> False 67.74/34.82 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 67.74/34.82 The set Q consists of the following terms: 67.74/34.82 67.74/34.82 new_rem(Neg(x0), Neg(Zero)) 67.74/34.82 new_primEqInt1 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.82 new_primMinusNatS1 67.74/34.82 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.82 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.82 new_primMinusNatS2(Zero, Zero) 67.74/34.82 new_error 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) 67.74/34.82 new_rem(Pos(x0), Pos(Zero)) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.82 new_primEqInt0(x0) 67.74/34.82 new_esEs(Pos(Zero)) 67.74/34.82 new_esEs(Pos(Succ(x0))) 67.74/34.82 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS02(x0, x1) 67.74/34.82 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.82 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.82 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS1(Zero, x0) 67.74/34.82 new_primEqInt(x0) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.82 new_rem(Pos(x0), Neg(Zero)) 67.74/34.82 new_rem(Neg(x0), Pos(Zero)) 67.74/34.82 new_primMinusNatS0(x0) 67.74/34.82 new_primEqInt2 67.74/34.82 new_esEs(Neg(Zero)) 67.74/34.82 new_esEs(Neg(Succ(x0))) 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.82 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.82 67.74/34.82 We have to consider all minimal (P,Q,R)-chains. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (56) TransformationProof (EQUIVALENT) 67.74/34.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Neg(Zero), Pos(x0)) at position [0,0] we obtained the following new rules [LPAR04]: 67.74/34.82 67.74/34.82 (new_gcd0Gcd'(Neg(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(error([])), Neg(Zero), Pos(x0)),new_gcd0Gcd'(Neg(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(error([])), Neg(Zero), Pos(x0))) 67.74/34.82 67.74/34.82 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (57) 67.74/34.82 Obligation: 67.74/34.82 Q DP problem: 67.74/34.82 The TRS P consists of the following rules: 67.74/34.82 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.82 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(error([])), Neg(Zero), Pos(x0)) 67.74/34.82 67.74/34.82 The TRS R consists of the following rules: 67.74/34.82 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.82 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.82 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.82 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.82 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.82 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.82 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.82 new_error -> error([]) 67.74/34.82 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.82 new_primEqInt2 -> True 67.74/34.82 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.82 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS1 -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.82 new_primEqInt1 -> True 67.74/34.82 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primEqInt0(vuz3260) -> False 67.74/34.82 new_primEqInt(vuz3250) -> False 67.74/34.82 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 67.74/34.82 The set Q consists of the following terms: 67.74/34.82 67.74/34.82 new_rem(Neg(x0), Neg(Zero)) 67.74/34.82 new_primEqInt1 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.82 new_primMinusNatS1 67.74/34.82 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.82 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.82 new_primMinusNatS2(Zero, Zero) 67.74/34.82 new_error 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) 67.74/34.82 new_rem(Pos(x0), Pos(Zero)) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.82 new_primEqInt0(x0) 67.74/34.82 new_esEs(Pos(Zero)) 67.74/34.82 new_esEs(Pos(Succ(x0))) 67.74/34.82 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS02(x0, x1) 67.74/34.82 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.82 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.82 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS1(Zero, x0) 67.74/34.82 new_primEqInt(x0) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.82 new_rem(Pos(x0), Neg(Zero)) 67.74/34.82 new_rem(Neg(x0), Pos(Zero)) 67.74/34.82 new_primMinusNatS0(x0) 67.74/34.82 new_primEqInt2 67.74/34.82 new_esEs(Neg(Zero)) 67.74/34.82 new_esEs(Neg(Succ(x0))) 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.82 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.82 67.74/34.82 We have to consider all minimal (P,Q,R)-chains. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (58) DependencyGraphProof (EQUIVALENT) 67.74/34.82 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (59) 67.74/34.82 Obligation: 67.74/34.82 Q DP problem: 67.74/34.82 The TRS P consists of the following rules: 67.74/34.82 67.74/34.82 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.82 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Pos(x0)) 67.74/34.82 67.74/34.82 The TRS R consists of the following rules: 67.74/34.82 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.82 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.82 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.82 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.82 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.82 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.82 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.82 new_error -> error([]) 67.74/34.82 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.82 new_primEqInt2 -> True 67.74/34.82 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.82 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS1 -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.82 new_primEqInt1 -> True 67.74/34.82 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primEqInt0(vuz3260) -> False 67.74/34.82 new_primEqInt(vuz3250) -> False 67.74/34.82 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 67.74/34.82 The set Q consists of the following terms: 67.74/34.82 67.74/34.82 new_rem(Neg(x0), Neg(Zero)) 67.74/34.82 new_primEqInt1 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.82 new_primMinusNatS1 67.74/34.82 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.82 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.82 new_primMinusNatS2(Zero, Zero) 67.74/34.82 new_error 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) 67.74/34.82 new_rem(Pos(x0), Pos(Zero)) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.82 new_primEqInt0(x0) 67.74/34.82 new_esEs(Pos(Zero)) 67.74/34.82 new_esEs(Pos(Succ(x0))) 67.74/34.82 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS02(x0, x1) 67.74/34.82 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.82 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.82 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS1(Zero, x0) 67.74/34.82 new_primEqInt(x0) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.82 new_rem(Pos(x0), Neg(Zero)) 67.74/34.82 new_rem(Neg(x0), Pos(Zero)) 67.74/34.82 new_primMinusNatS0(x0) 67.74/34.82 new_primEqInt2 67.74/34.82 new_esEs(Neg(Zero)) 67.74/34.82 new_esEs(Neg(Succ(x0))) 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.82 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.82 67.74/34.82 We have to consider all minimal (P,Q,R)-chains. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (60) TransformationProof (EQUIVALENT) 67.74/34.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Neg(x0)) at position [0,0] we obtained the following new rules [LPAR04]: 67.74/34.82 67.74/34.82 (new_gcd0Gcd'(Pos(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(error([])), Pos(Zero), Neg(x0)),new_gcd0Gcd'(Pos(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(error([])), Pos(Zero), Neg(x0))) 67.74/34.82 67.74/34.82 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (61) 67.74/34.82 Obligation: 67.74/34.82 Q DP problem: 67.74/34.82 The TRS P consists of the following rules: 67.74/34.82 67.74/34.82 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.82 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Zero), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(error([])), Pos(Zero), Neg(x0)) 67.74/34.82 67.74/34.82 The TRS R consists of the following rules: 67.74/34.82 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.82 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.82 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.82 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.82 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.82 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.82 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.82 new_error -> error([]) 67.74/34.82 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.82 new_primEqInt2 -> True 67.74/34.82 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.82 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS1 -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.82 new_primEqInt1 -> True 67.74/34.82 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primEqInt0(vuz3260) -> False 67.74/34.82 new_primEqInt(vuz3250) -> False 67.74/34.82 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 67.74/34.82 The set Q consists of the following terms: 67.74/34.82 67.74/34.82 new_rem(Neg(x0), Neg(Zero)) 67.74/34.82 new_primEqInt1 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.82 new_primMinusNatS1 67.74/34.82 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.82 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.82 new_primMinusNatS2(Zero, Zero) 67.74/34.82 new_error 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) 67.74/34.82 new_rem(Pos(x0), Pos(Zero)) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.82 new_primEqInt0(x0) 67.74/34.82 new_esEs(Pos(Zero)) 67.74/34.82 new_esEs(Pos(Succ(x0))) 67.74/34.82 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS02(x0, x1) 67.74/34.82 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.82 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.82 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS1(Zero, x0) 67.74/34.82 new_primEqInt(x0) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.82 new_rem(Pos(x0), Neg(Zero)) 67.74/34.82 new_rem(Neg(x0), Pos(Zero)) 67.74/34.82 new_primMinusNatS0(x0) 67.74/34.82 new_primEqInt2 67.74/34.82 new_esEs(Neg(Zero)) 67.74/34.82 new_esEs(Neg(Succ(x0))) 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.82 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.82 67.74/34.82 We have to consider all minimal (P,Q,R)-chains. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (62) DependencyGraphProof (EQUIVALENT) 67.74/34.82 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (63) 67.74/34.82 Obligation: 67.74/34.82 Q DP problem: 67.74/34.82 The TRS P consists of the following rules: 67.74/34.82 67.74/34.82 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Pos(x0)) 67.74/34.82 67.74/34.82 The TRS R consists of the following rules: 67.74/34.82 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.82 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.82 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.82 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.82 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.82 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.82 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.82 new_error -> error([]) 67.74/34.82 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.82 new_primEqInt2 -> True 67.74/34.82 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.82 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS1 -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.82 new_primEqInt1 -> True 67.74/34.82 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primEqInt0(vuz3260) -> False 67.74/34.82 new_primEqInt(vuz3250) -> False 67.74/34.82 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 67.74/34.82 The set Q consists of the following terms: 67.74/34.82 67.74/34.82 new_rem(Neg(x0), Neg(Zero)) 67.74/34.82 new_primEqInt1 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.82 new_primMinusNatS1 67.74/34.82 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.82 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.82 new_primMinusNatS2(Zero, Zero) 67.74/34.82 new_error 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) 67.74/34.82 new_rem(Pos(x0), Pos(Zero)) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.82 new_primEqInt0(x0) 67.74/34.82 new_esEs(Pos(Zero)) 67.74/34.82 new_esEs(Pos(Succ(x0))) 67.74/34.82 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS02(x0, x1) 67.74/34.82 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.82 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.82 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS1(Zero, x0) 67.74/34.82 new_primEqInt(x0) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.82 new_rem(Pos(x0), Neg(Zero)) 67.74/34.82 new_rem(Neg(x0), Pos(Zero)) 67.74/34.82 new_primMinusNatS0(x0) 67.74/34.82 new_primEqInt2 67.74/34.82 new_esEs(Neg(Zero)) 67.74/34.82 new_esEs(Neg(Succ(x0))) 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.82 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.82 67.74/34.82 We have to consider all minimal (P,Q,R)-chains. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (64) TransformationProof (EQUIVALENT) 67.74/34.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(new_error), Pos(Zero), Pos(x0)) at position [0,0] we obtained the following new rules [LPAR04]: 67.74/34.82 67.74/34.82 (new_gcd0Gcd'(Pos(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(error([])), Pos(Zero), Pos(x0)),new_gcd0Gcd'(Pos(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(error([])), Pos(Zero), Pos(x0))) 67.74/34.82 67.74/34.82 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (65) 67.74/34.82 Obligation: 67.74/34.82 Q DP problem: 67.74/34.82 The TRS P consists of the following rules: 67.74/34.82 67.74/34.82 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Zero), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(error([])), Pos(Zero), Pos(x0)) 67.74/34.82 67.74/34.82 The TRS R consists of the following rules: 67.74/34.82 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.82 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.82 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.82 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.82 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.82 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.82 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.82 new_error -> error([]) 67.74/34.82 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.82 new_primEqInt2 -> True 67.74/34.82 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.82 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS1 -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.82 new_primEqInt1 -> True 67.74/34.82 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primEqInt0(vuz3260) -> False 67.74/34.82 new_primEqInt(vuz3250) -> False 67.74/34.82 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 67.74/34.82 The set Q consists of the following terms: 67.74/34.82 67.74/34.82 new_rem(Neg(x0), Neg(Zero)) 67.74/34.82 new_primEqInt1 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.82 new_primMinusNatS1 67.74/34.82 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.82 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.82 new_primMinusNatS2(Zero, Zero) 67.74/34.82 new_error 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) 67.74/34.82 new_rem(Pos(x0), Pos(Zero)) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.82 new_primEqInt0(x0) 67.74/34.82 new_esEs(Pos(Zero)) 67.74/34.82 new_esEs(Pos(Succ(x0))) 67.74/34.82 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS02(x0, x1) 67.74/34.82 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.82 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.82 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS1(Zero, x0) 67.74/34.82 new_primEqInt(x0) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.82 new_rem(Pos(x0), Neg(Zero)) 67.74/34.82 new_rem(Neg(x0), Pos(Zero)) 67.74/34.82 new_primMinusNatS0(x0) 67.74/34.82 new_primEqInt2 67.74/34.82 new_esEs(Neg(Zero)) 67.74/34.82 new_esEs(Neg(Succ(x0))) 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.82 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.82 67.74/34.82 We have to consider all minimal (P,Q,R)-chains. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (66) DependencyGraphProof (EQUIVALENT) 67.74/34.82 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (67) 67.74/34.82 Obligation: 67.74/34.82 Q DP problem: 67.74/34.82 The TRS P consists of the following rules: 67.74/34.82 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.82 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.82 67.74/34.82 The TRS R consists of the following rules: 67.74/34.82 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.82 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.82 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.82 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.82 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.82 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.82 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.82 new_error -> error([]) 67.74/34.82 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.82 new_primEqInt2 -> True 67.74/34.82 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.82 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS1 -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.82 new_primEqInt1 -> True 67.74/34.82 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primEqInt0(vuz3260) -> False 67.74/34.82 new_primEqInt(vuz3250) -> False 67.74/34.82 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 67.74/34.82 The set Q consists of the following terms: 67.74/34.82 67.74/34.82 new_rem(Neg(x0), Neg(Zero)) 67.74/34.82 new_primEqInt1 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.82 new_primMinusNatS1 67.74/34.82 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.82 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.82 new_primMinusNatS2(Zero, Zero) 67.74/34.82 new_error 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) 67.74/34.82 new_rem(Pos(x0), Pos(Zero)) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.82 new_primEqInt0(x0) 67.74/34.82 new_esEs(Pos(Zero)) 67.74/34.82 new_esEs(Pos(Succ(x0))) 67.74/34.82 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS02(x0, x1) 67.74/34.82 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.82 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.82 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS1(Zero, x0) 67.74/34.82 new_primEqInt(x0) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.82 new_rem(Pos(x0), Neg(Zero)) 67.74/34.82 new_rem(Neg(x0), Pos(Zero)) 67.74/34.82 new_primMinusNatS0(x0) 67.74/34.82 new_primEqInt2 67.74/34.82 new_esEs(Neg(Zero)) 67.74/34.82 new_esEs(Neg(Succ(x0))) 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.82 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.82 67.74/34.82 We have to consider all minimal (P,Q,R)-chains. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (68) TransformationProof (EQUIVALENT) 67.74/34.82 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Neg(x0)) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.82 67.74/34.82 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0))))) 67.74/34.82 (new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Neg(Succ(Succ(x0))), Neg(Succ(Zero))),new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Neg(Succ(Succ(x0))), Neg(Succ(Zero)))) 67.74/34.82 (new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))),new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0))))) 67.74/34.82 (new_gcd0Gcd'(Neg(Succ(x0)), Neg(Zero)) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(x0)), Neg(Zero)),new_gcd0Gcd'(Neg(Succ(x0)), Neg(Zero)) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(x0)), Neg(Zero))) 67.74/34.82 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Neg(Succ(Zero))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Neg(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (69) 67.74/34.82 Obligation: 67.74/34.82 Q DP problem: 67.74/34.82 The TRS P consists of the following rules: 67.74/34.82 67.74/34.82 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.82 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x0)), Neg(Zero)) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(x0)), Neg(Zero)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Neg(Succ(Zero))) 67.74/34.82 67.74/34.82 The TRS R consists of the following rules: 67.74/34.82 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.82 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.82 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.82 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.82 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.82 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.82 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.82 new_error -> error([]) 67.74/34.82 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.82 new_primEqInt2 -> True 67.74/34.82 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.82 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS1 -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.82 new_primEqInt1 -> True 67.74/34.82 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primEqInt0(vuz3260) -> False 67.74/34.82 new_primEqInt(vuz3250) -> False 67.74/34.82 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 67.74/34.82 The set Q consists of the following terms: 67.74/34.82 67.74/34.82 new_rem(Neg(x0), Neg(Zero)) 67.74/34.82 new_primEqInt1 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.82 new_primMinusNatS1 67.74/34.82 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.82 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.82 new_primMinusNatS2(Zero, Zero) 67.74/34.82 new_error 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) 67.74/34.82 new_rem(Pos(x0), Pos(Zero)) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.82 new_primEqInt0(x0) 67.74/34.82 new_esEs(Pos(Zero)) 67.74/34.82 new_esEs(Pos(Succ(x0))) 67.74/34.82 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS02(x0, x1) 67.74/34.82 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.82 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.82 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS1(Zero, x0) 67.74/34.82 new_primEqInt(x0) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.82 new_rem(Pos(x0), Neg(Zero)) 67.74/34.82 new_rem(Neg(x0), Pos(Zero)) 67.74/34.82 new_primMinusNatS0(x0) 67.74/34.82 new_primEqInt2 67.74/34.82 new_esEs(Neg(Zero)) 67.74/34.82 new_esEs(Neg(Succ(x0))) 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.82 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.82 67.74/34.82 We have to consider all minimal (P,Q,R)-chains. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (70) DependencyGraphProof (EQUIVALENT) 67.74/34.82 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (71) 67.74/34.82 Obligation: 67.74/34.82 Q DP problem: 67.74/34.82 The TRS P consists of the following rules: 67.74/34.82 67.74/34.82 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Neg(Succ(Zero))) 67.74/34.82 67.74/34.82 The TRS R consists of the following rules: 67.74/34.82 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.82 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.82 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.82 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.82 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.82 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.82 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.82 new_error -> error([]) 67.74/34.82 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.82 new_primEqInt2 -> True 67.74/34.82 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.82 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS1 -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.82 new_primEqInt1 -> True 67.74/34.82 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primEqInt0(vuz3260) -> False 67.74/34.82 new_primEqInt(vuz3250) -> False 67.74/34.82 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 67.74/34.82 The set Q consists of the following terms: 67.74/34.82 67.74/34.82 new_rem(Neg(x0), Neg(Zero)) 67.74/34.82 new_primEqInt1 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.82 new_primMinusNatS1 67.74/34.82 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.82 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.82 new_primMinusNatS2(Zero, Zero) 67.74/34.82 new_error 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) 67.74/34.82 new_rem(Pos(x0), Pos(Zero)) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.82 new_primEqInt0(x0) 67.74/34.82 new_esEs(Pos(Zero)) 67.74/34.82 new_esEs(Pos(Succ(x0))) 67.74/34.82 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS02(x0, x1) 67.74/34.82 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.82 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.82 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS1(Zero, x0) 67.74/34.82 new_primEqInt(x0) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.82 new_rem(Pos(x0), Neg(Zero)) 67.74/34.82 new_rem(Neg(x0), Pos(Zero)) 67.74/34.82 new_primMinusNatS0(x0) 67.74/34.82 new_primEqInt2 67.74/34.82 new_esEs(Neg(Zero)) 67.74/34.82 new_esEs(Neg(Succ(x0))) 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.82 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.82 67.74/34.82 We have to consider all minimal (P,Q,R)-chains. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (72) TransformationProof (EQUIVALENT) 67.74/34.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.82 67.74/34.82 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0))))) 67.74/34.82 67.74/34.82 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (73) 67.74/34.82 Obligation: 67.74/34.82 Q DP problem: 67.74/34.82 The TRS P consists of the following rules: 67.74/34.82 67.74/34.82 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Neg(Succ(Zero))) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.82 67.74/34.82 The TRS R consists of the following rules: 67.74/34.82 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.82 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.82 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.82 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.82 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.82 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.82 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.82 new_error -> error([]) 67.74/34.82 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.82 new_primEqInt2 -> True 67.74/34.82 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.82 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS1 -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.82 new_primEqInt1 -> True 67.74/34.82 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primEqInt0(vuz3260) -> False 67.74/34.82 new_primEqInt(vuz3250) -> False 67.74/34.82 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 67.74/34.82 The set Q consists of the following terms: 67.74/34.82 67.74/34.82 new_rem(Neg(x0), Neg(Zero)) 67.74/34.82 new_primEqInt1 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.82 new_primMinusNatS1 67.74/34.82 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.82 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.82 new_primMinusNatS2(Zero, Zero) 67.74/34.82 new_error 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) 67.74/34.82 new_rem(Pos(x0), Pos(Zero)) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.82 new_primEqInt0(x0) 67.74/34.82 new_esEs(Pos(Zero)) 67.74/34.82 new_esEs(Pos(Succ(x0))) 67.74/34.82 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS02(x0, x1) 67.74/34.82 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.82 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.82 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS1(Zero, x0) 67.74/34.82 new_primEqInt(x0) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.82 new_rem(Pos(x0), Neg(Zero)) 67.74/34.82 new_rem(Neg(x0), Pos(Zero)) 67.74/34.82 new_primMinusNatS0(x0) 67.74/34.82 new_primEqInt2 67.74/34.82 new_esEs(Neg(Zero)) 67.74/34.82 new_esEs(Neg(Succ(x0))) 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.82 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.82 67.74/34.82 We have to consider all minimal (P,Q,R)-chains. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (74) TransformationProof (EQUIVALENT) 67.74/34.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Neg(Succ(Succ(x0))), Neg(Succ(Zero))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.82 67.74/34.82 (new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Neg(Succ(Succ(x0))), Neg(Succ(Zero))),new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Neg(Succ(Succ(x0))), Neg(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (75) 67.74/34.82 Obligation: 67.74/34.82 Q DP problem: 67.74/34.82 The TRS P consists of the following rules: 67.74/34.82 67.74/34.82 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Neg(Succ(Zero))) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.82 67.74/34.82 The TRS R consists of the following rules: 67.74/34.82 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.82 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.82 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.82 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.82 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.82 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.82 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.82 new_error -> error([]) 67.74/34.82 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.82 new_primEqInt2 -> True 67.74/34.82 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.82 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS1 -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.82 new_primEqInt1 -> True 67.74/34.82 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primEqInt0(vuz3260) -> False 67.74/34.82 new_primEqInt(vuz3250) -> False 67.74/34.82 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 67.74/34.82 The set Q consists of the following terms: 67.74/34.82 67.74/34.82 new_rem(Neg(x0), Neg(Zero)) 67.74/34.82 new_primEqInt1 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.82 new_primMinusNatS1 67.74/34.82 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.82 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.82 new_primMinusNatS2(Zero, Zero) 67.74/34.82 new_error 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) 67.74/34.82 new_rem(Pos(x0), Pos(Zero)) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.82 new_primEqInt0(x0) 67.74/34.82 new_esEs(Pos(Zero)) 67.74/34.82 new_esEs(Pos(Succ(x0))) 67.74/34.82 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS02(x0, x1) 67.74/34.82 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.82 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.82 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.82 new_primModNatS1(Zero, x0) 67.74/34.82 new_primEqInt(x0) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.82 new_rem(Pos(x0), Neg(Zero)) 67.74/34.82 new_rem(Neg(x0), Pos(Zero)) 67.74/34.82 new_primMinusNatS0(x0) 67.74/34.82 new_primEqInt2 67.74/34.82 new_esEs(Neg(Zero)) 67.74/34.82 new_esEs(Neg(Succ(x0))) 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.82 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.82 67.74/34.82 We have to consider all minimal (P,Q,R)-chains. 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (76) TransformationProof (EQUIVALENT) 67.74/34.82 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Neg(Succ(Zero))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.82 67.74/34.82 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Neg(Succ(Zero))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Neg(Succ(Zero)))) 67.74/34.82 67.74/34.82 67.74/34.82 ---------------------------------------- 67.74/34.82 67.74/34.82 (77) 67.74/34.82 Obligation: 67.74/34.82 Q DP problem: 67.74/34.82 The TRS P consists of the following rules: 67.74/34.82 67.74/34.82 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.82 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.82 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Neg(Succ(Zero))) 67.74/34.82 67.74/34.82 The TRS R consists of the following rules: 67.74/34.82 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.82 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.82 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.82 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.82 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.82 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.82 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.82 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.82 new_error -> error([]) 67.74/34.82 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.82 new_primEqInt2 -> True 67.74/34.82 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.82 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.82 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.82 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.82 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primMinusNatS1 -> Zero 67.74/34.82 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.82 new_primEqInt1 -> True 67.74/34.82 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.82 new_primEqInt0(vuz3260) -> False 67.74/34.82 new_primEqInt(vuz3250) -> False 67.74/34.82 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.82 67.74/34.82 The set Q consists of the following terms: 67.74/34.82 67.74/34.82 new_rem(Neg(x0), Neg(Zero)) 67.74/34.82 new_primEqInt1 67.74/34.82 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.82 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.82 new_primMinusNatS1 67.74/34.82 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.82 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.82 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.82 new_primMinusNatS2(Zero, Zero) 67.74/34.82 new_error 67.74/34.82 new_primModNatS1(Succ(Zero), Zero) 67.74/34.82 new_rem(Pos(x0), Pos(Zero)) 67.74/34.82 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.82 new_primEqInt0(x0) 67.74/34.82 new_esEs(Pos(Zero)) 67.74/34.82 new_esEs(Pos(Succ(x0))) 67.74/34.82 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (78) TransformationProof (EQUIVALENT) 67.74/34.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Neg(Succ(Succ(x0))), Neg(Succ(Zero))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.83 67.74/34.83 (new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))),new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero)))) 67.74/34.83 67.74/34.83 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (79) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (80) TransformationProof (EQUIVALENT) 67.74/34.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Neg(Succ(Zero))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.83 67.74/34.83 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(Zero)), Neg(Succ(Zero))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(Zero)), Neg(Succ(Zero)))) 67.74/34.83 67.74/34.83 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (81) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(Zero)), Neg(Succ(Zero))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (82) DependencyGraphProof (EQUIVALENT) 67.74/34.83 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (83) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (84) TransformationProof (EQUIVALENT) 67.74/34.83 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Pos(x0)) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.83 67.74/34.83 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0))))) 67.74/34.83 (new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Pos(Succ(Succ(x0))), Pos(Succ(Zero))),new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Pos(Succ(Succ(x0))), Pos(Succ(Zero)))) 67.74/34.83 (new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))),new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0))))) 67.74/34.83 (new_gcd0Gcd'(Pos(Succ(x0)), Pos(Zero)) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(x0)), Pos(Zero)),new_gcd0Gcd'(Pos(Succ(x0)), Pos(Zero)) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(x0)), Pos(Zero))) 67.74/34.83 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Pos(Succ(Zero))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Pos(Succ(Zero)))) 67.74/34.83 67.74/34.83 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (85) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x0)), Pos(Zero)) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(x0)), Pos(Zero)) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Pos(Succ(Zero))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (86) DependencyGraphProof (EQUIVALENT) 67.74/34.83 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (87) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Pos(Succ(Zero))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (88) TransformationProof (EQUIVALENT) 67.74/34.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.83 67.74/34.83 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0))))) 67.74/34.83 67.74/34.83 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (89) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (90) TransformationProof (EQUIVALENT) 67.74/34.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Pos(Succ(Succ(x0))), Pos(Succ(Zero))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.83 67.74/34.83 (new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Pos(Succ(Succ(x0))), Pos(Succ(Zero))),new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Pos(Succ(Succ(x0))), Pos(Succ(Zero)))) 67.74/34.83 67.74/34.83 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (91) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (92) TransformationProof (EQUIVALENT) 67.74/34.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Pos(Succ(Zero))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.83 67.74/34.83 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Pos(Succ(Zero))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Pos(Succ(Zero)))) 67.74/34.83 67.74/34.83 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (93) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Pos(Succ(Zero))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (94) TransformationProof (EQUIVALENT) 67.74/34.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Pos(Succ(Succ(x0))), Pos(Succ(Zero))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.83 67.74/34.83 (new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))),new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero)))) 67.74/34.83 67.74/34.83 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (95) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (96) TransformationProof (EQUIVALENT) 67.74/34.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Pos(Succ(Zero))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.83 67.74/34.83 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(Zero)), Pos(Succ(Zero))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(Zero)), Pos(Succ(Zero)))) 67.74/34.83 67.74/34.83 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (97) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(Zero)), Pos(Succ(Zero))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (98) DependencyGraphProof (EQUIVALENT) 67.74/34.83 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (99) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (100) TransformationProof (EQUIVALENT) 67.74/34.83 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(x1)), Pos(x0)) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(x0, x1))), Neg(Succ(x1)), Pos(x0)) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.83 67.74/34.83 (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))),new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0))))) 67.74/34.83 (new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Neg(Succ(Succ(x0))), Pos(Succ(Zero))),new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Neg(Succ(Succ(x0))), Pos(Succ(Zero)))) 67.74/34.83 (new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))),new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0))))) 67.74/34.83 (new_gcd0Gcd'(Neg(Succ(x0)), Pos(Zero)) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(x0)), Pos(Zero)),new_gcd0Gcd'(Neg(Succ(x0)), Pos(Zero)) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(x0)), Pos(Zero))) 67.74/34.83 (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Pos(Succ(Zero))),new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Pos(Succ(Zero)))) 67.74/34.83 67.74/34.83 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (101) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(x0)), Pos(Zero)) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(x0)), Pos(Zero)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Pos(Succ(Zero))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (102) DependencyGraphProof (EQUIVALENT) 67.74/34.83 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (103) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Pos(Succ(Zero))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (104) TransformationProof (EQUIVALENT) 67.74/34.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.83 67.74/34.83 (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))),new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0))))) 67.74/34.83 67.74/34.83 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (105) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (106) TransformationProof (EQUIVALENT) 67.74/34.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Neg(Succ(Succ(x0))), Pos(Succ(Zero))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.83 67.74/34.83 (new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Neg(Succ(Succ(x0))), Pos(Succ(Zero))),new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Neg(Succ(Succ(x0))), Pos(Succ(Zero)))) 67.74/34.83 67.74/34.83 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (107) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (108) TransformationProof (EQUIVALENT) 67.74/34.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Pos(Succ(Zero))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.83 67.74/34.83 (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Pos(Succ(Zero))),new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Pos(Succ(Zero)))) 67.74/34.83 67.74/34.83 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (109) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Pos(Succ(Zero))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (110) TransformationProof (EQUIVALENT) 67.74/34.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Neg(Succ(Succ(x0))), Pos(Succ(Zero))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.83 67.74/34.83 (new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))),new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero)))) 67.74/34.83 67.74/34.83 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (111) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (112) TransformationProof (EQUIVALENT) 67.74/34.83 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Pos(Succ(Zero))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.83 67.74/34.83 (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(Zero)), Pos(Succ(Zero))),new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(Zero)), Pos(Succ(Zero)))) 67.74/34.83 67.74/34.83 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (113) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(Zero)), Pos(Succ(Zero))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.83 new_primEqInt(x0) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.83 new_rem(Pos(x0), Neg(Zero)) 67.74/34.83 new_rem(Neg(x0), Pos(Zero)) 67.74/34.83 new_primMinusNatS0(x0) 67.74/34.83 new_primEqInt2 67.74/34.83 new_esEs(Neg(Zero)) 67.74/34.83 new_esEs(Neg(Succ(x0))) 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.83 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.83 67.74/34.83 We have to consider all minimal (P,Q,R)-chains. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (114) DependencyGraphProof (EQUIVALENT) 67.74/34.83 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.83 ---------------------------------------- 67.74/34.83 67.74/34.83 (115) 67.74/34.83 Obligation: 67.74/34.83 Q DP problem: 67.74/34.83 The TRS P consists of the following rules: 67.74/34.83 67.74/34.83 new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) 67.74/34.83 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.83 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.83 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.83 67.74/34.83 The TRS R consists of the following rules: 67.74/34.83 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.83 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.83 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.83 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.83 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.83 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.83 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.83 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.83 new_error -> error([]) 67.74/34.83 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.83 new_primEqInt2 -> True 67.74/34.83 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.83 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.83 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.83 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.83 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primMinusNatS1 -> Zero 67.74/34.83 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.83 new_primEqInt1 -> True 67.74/34.83 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.83 new_primEqInt0(vuz3260) -> False 67.74/34.83 new_primEqInt(vuz3250) -> False 67.74/34.83 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.83 67.74/34.83 The set Q consists of the following terms: 67.74/34.83 67.74/34.83 new_rem(Neg(x0), Neg(Zero)) 67.74/34.83 new_primEqInt1 67.74/34.83 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.83 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.83 new_primMinusNatS1 67.74/34.83 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.83 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.83 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.83 new_primMinusNatS2(Zero, Zero) 67.74/34.83 new_error 67.74/34.83 new_primModNatS1(Succ(Zero), Zero) 67.74/34.83 new_rem(Pos(x0), Pos(Zero)) 67.74/34.83 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.83 new_primEqInt0(x0) 67.74/34.83 new_esEs(Pos(Zero)) 67.74/34.83 new_esEs(Pos(Succ(x0))) 67.74/34.83 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS02(x0, x1) 67.74/34.83 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.83 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.83 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.83 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (116) TransformationProof (EQUIVALENT) 67.74/34.84 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(x1)), Neg(x0)) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(x0, x1))), Pos(Succ(x1)), Neg(x0)) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.84 67.74/34.84 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0))))) 67.74/34.84 (new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Pos(Succ(Succ(x0))), Neg(Succ(Zero))),new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Pos(Succ(Succ(x0))), Neg(Succ(Zero)))) 67.74/34.84 (new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))),new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0))))) 67.74/34.84 (new_gcd0Gcd'(Pos(Succ(x0)), Neg(Zero)) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(x0)), Neg(Zero)),new_gcd0Gcd'(Pos(Succ(x0)), Neg(Zero)) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(x0)), Neg(Zero))) 67.74/34.84 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Neg(Succ(Zero))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Neg(Succ(Zero)))) 67.74/34.84 67.74/34.84 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (117) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(x0)), Neg(Zero)) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(x0)), Neg(Zero)) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Neg(Succ(Zero))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.84 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primEqInt0(vuz3260) -> False 67.74/34.84 new_primEqInt(vuz3250) -> False 67.74/34.84 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 67.74/34.84 The set Q consists of the following terms: 67.74/34.84 67.74/34.84 new_rem(Neg(x0), Neg(Zero)) 67.74/34.84 new_primEqInt1 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.84 new_primMinusNatS1 67.74/34.84 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.84 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.84 new_primMinusNatS2(Zero, Zero) 67.74/34.84 new_error 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) 67.74/34.84 new_rem(Pos(x0), Pos(Zero)) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.84 new_primEqInt0(x0) 67.74/34.84 new_esEs(Pos(Zero)) 67.74/34.84 new_esEs(Pos(Succ(x0))) 67.74/34.84 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS02(x0, x1) 67.74/34.84 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.84 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.84 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (118) DependencyGraphProof (EQUIVALENT) 67.74/34.84 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (119) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Neg(Succ(Zero))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.84 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primEqInt0(vuz3260) -> False 67.74/34.84 new_primEqInt(vuz3250) -> False 67.74/34.84 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 67.74/34.84 The set Q consists of the following terms: 67.74/34.84 67.74/34.84 new_rem(Neg(x0), Neg(Zero)) 67.74/34.84 new_primEqInt1 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.84 new_primMinusNatS1 67.74/34.84 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.84 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.84 new_primMinusNatS2(Zero, Zero) 67.74/34.84 new_error 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) 67.74/34.84 new_rem(Pos(x0), Pos(Zero)) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.84 new_primEqInt0(x0) 67.74/34.84 new_esEs(Pos(Zero)) 67.74/34.84 new_esEs(Pos(Succ(x0))) 67.74/34.84 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS02(x0, x1) 67.74/34.84 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.84 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.84 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (120) TransformationProof (EQUIVALENT) 67.74/34.84 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.84 67.74/34.84 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0))))) 67.74/34.84 67.74/34.84 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (121) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.84 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primEqInt0(vuz3260) -> False 67.74/34.84 new_primEqInt(vuz3250) -> False 67.74/34.84 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 67.74/34.84 The set Q consists of the following terms: 67.74/34.84 67.74/34.84 new_rem(Neg(x0), Neg(Zero)) 67.74/34.84 new_primEqInt1 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.84 new_primMinusNatS1 67.74/34.84 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.84 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.84 new_primMinusNatS2(Zero, Zero) 67.74/34.84 new_error 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) 67.74/34.84 new_rem(Pos(x0), Pos(Zero)) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.84 new_primEqInt0(x0) 67.74/34.84 new_esEs(Pos(Zero)) 67.74/34.84 new_esEs(Pos(Succ(x0))) 67.74/34.84 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS02(x0, x1) 67.74/34.84 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.84 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.84 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (122) TransformationProof (EQUIVALENT) 67.74/34.84 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Pos(Succ(Succ(x0))), Neg(Succ(Zero))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.84 67.74/34.84 (new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Pos(Succ(Succ(x0))), Neg(Succ(Zero))),new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Pos(Succ(Succ(x0))), Neg(Succ(Zero)))) 67.74/34.84 67.74/34.84 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (123) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.84 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primEqInt0(vuz3260) -> False 67.74/34.84 new_primEqInt(vuz3250) -> False 67.74/34.84 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 67.74/34.84 The set Q consists of the following terms: 67.74/34.84 67.74/34.84 new_rem(Neg(x0), Neg(Zero)) 67.74/34.84 new_primEqInt1 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.84 new_primMinusNatS1 67.74/34.84 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.84 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.84 new_primMinusNatS2(Zero, Zero) 67.74/34.84 new_error 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) 67.74/34.84 new_rem(Pos(x0), Pos(Zero)) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.84 new_primEqInt0(x0) 67.74/34.84 new_esEs(Pos(Zero)) 67.74/34.84 new_esEs(Pos(Succ(x0))) 67.74/34.84 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS02(x0, x1) 67.74/34.84 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.84 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.84 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (124) TransformationProof (EQUIVALENT) 67.74/34.84 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Neg(Succ(Zero))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.84 67.74/34.84 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Neg(Succ(Zero))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Neg(Succ(Zero)))) 67.74/34.84 67.74/34.84 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (125) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Neg(Succ(Zero))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.84 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primEqInt0(vuz3260) -> False 67.74/34.84 new_primEqInt(vuz3250) -> False 67.74/34.84 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 67.74/34.84 The set Q consists of the following terms: 67.74/34.84 67.74/34.84 new_rem(Neg(x0), Neg(Zero)) 67.74/34.84 new_primEqInt1 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.84 new_primMinusNatS1 67.74/34.84 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.84 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.84 new_primMinusNatS2(Zero, Zero) 67.74/34.84 new_error 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) 67.74/34.84 new_rem(Pos(x0), Pos(Zero)) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.84 new_primEqInt0(x0) 67.74/34.84 new_esEs(Pos(Zero)) 67.74/34.84 new_esEs(Pos(Succ(x0))) 67.74/34.84 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS02(x0, x1) 67.74/34.84 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.84 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.84 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (126) TransformationProof (EQUIVALENT) 67.74/34.84 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Pos(Succ(Succ(x0))), Neg(Succ(Zero))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.84 67.74/34.84 (new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))),new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero)))) 67.74/34.84 67.74/34.84 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (127) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.84 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primEqInt0(vuz3260) -> False 67.74/34.84 new_primEqInt(vuz3250) -> False 67.74/34.84 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 67.74/34.84 The set Q consists of the following terms: 67.74/34.84 67.74/34.84 new_rem(Neg(x0), Neg(Zero)) 67.74/34.84 new_primEqInt1 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.84 new_primMinusNatS1 67.74/34.84 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.84 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.84 new_primMinusNatS2(Zero, Zero) 67.74/34.84 new_error 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) 67.74/34.84 new_rem(Pos(x0), Pos(Zero)) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.84 new_primEqInt0(x0) 67.74/34.84 new_esEs(Pos(Zero)) 67.74/34.84 new_esEs(Pos(Succ(x0))) 67.74/34.84 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS02(x0, x1) 67.74/34.84 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.84 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.84 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (128) TransformationProof (EQUIVALENT) 67.74/34.84 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Neg(Succ(Zero))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.84 67.74/34.84 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(Zero)), Neg(Succ(Zero))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(Zero)), Neg(Succ(Zero)))) 67.74/34.84 67.74/34.84 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (129) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(Zero)), Neg(Succ(Zero))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.84 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primEqInt0(vuz3260) -> False 67.74/34.84 new_primEqInt(vuz3250) -> False 67.74/34.84 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 67.74/34.84 The set Q consists of the following terms: 67.74/34.84 67.74/34.84 new_rem(Neg(x0), Neg(Zero)) 67.74/34.84 new_primEqInt1 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.84 new_primMinusNatS1 67.74/34.84 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.84 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.84 new_primMinusNatS2(Zero, Zero) 67.74/34.84 new_error 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) 67.74/34.84 new_rem(Pos(x0), Pos(Zero)) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.84 new_primEqInt0(x0) 67.74/34.84 new_esEs(Pos(Zero)) 67.74/34.84 new_esEs(Pos(Succ(x0))) 67.74/34.84 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS02(x0, x1) 67.74/34.84 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.84 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.84 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (130) DependencyGraphProof (EQUIVALENT) 67.74/34.84 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (131) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.84 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primEqInt0(vuz3260) -> False 67.74/34.84 new_primEqInt(vuz3250) -> False 67.74/34.84 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 67.74/34.84 The set Q consists of the following terms: 67.74/34.84 67.74/34.84 new_rem(Neg(x0), Neg(Zero)) 67.74/34.84 new_primEqInt1 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.84 new_primMinusNatS1 67.74/34.84 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.84 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.84 new_primMinusNatS2(Zero, Zero) 67.74/34.84 new_error 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) 67.74/34.84 new_rem(Pos(x0), Pos(Zero)) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.84 new_primEqInt0(x0) 67.74/34.84 new_esEs(Pos(Zero)) 67.74/34.84 new_esEs(Pos(Succ(x0))) 67.74/34.84 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS02(x0, x1) 67.74/34.84 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.84 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.84 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (132) TransformationProof (EQUIVALENT) 67.74/34.84 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.84 67.74/34.84 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2)))))) 67.74/34.84 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero))))) 67.74/34.84 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Zero, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Zero, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero))))) 67.74/34.84 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(x2), Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(x2), Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2)))))) 67.74/34.84 67.74/34.84 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (133) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Zero, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(x2), Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.84 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primEqInt0(vuz3260) -> False 67.74/34.84 new_primEqInt(vuz3250) -> False 67.74/34.84 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 67.74/34.84 The set Q consists of the following terms: 67.74/34.84 67.74/34.84 new_rem(Neg(x0), Neg(Zero)) 67.74/34.84 new_primEqInt1 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.84 new_primMinusNatS1 67.74/34.84 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.84 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.84 new_primMinusNatS2(Zero, Zero) 67.74/34.84 new_error 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) 67.74/34.84 new_rem(Pos(x0), Pos(Zero)) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.84 new_primEqInt0(x0) 67.74/34.84 new_esEs(Pos(Zero)) 67.74/34.84 new_esEs(Pos(Succ(x0))) 67.74/34.84 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS02(x0, x1) 67.74/34.84 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.84 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.84 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (134) TransformationProof (EQUIVALENT) 67.74/34.84 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.84 67.74/34.84 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Zero)), Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Zero)), Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero))))) 67.74/34.84 67.74/34.84 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (135) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Zero, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(x2), Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Zero)), Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.84 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primEqInt0(vuz3260) -> False 67.74/34.84 new_primEqInt(vuz3250) -> False 67.74/34.84 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 67.74/34.84 The set Q consists of the following terms: 67.74/34.84 67.74/34.84 new_rem(Neg(x0), Neg(Zero)) 67.74/34.84 new_primEqInt1 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.84 new_primMinusNatS1 67.74/34.84 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.84 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.84 new_primMinusNatS2(Zero, Zero) 67.74/34.84 new_error 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) 67.74/34.84 new_rem(Pos(x0), Pos(Zero)) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.84 new_primEqInt0(x0) 67.74/34.84 new_esEs(Pos(Zero)) 67.74/34.84 new_esEs(Pos(Succ(x0))) 67.74/34.84 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS02(x0, x1) 67.74/34.84 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.84 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.84 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (136) TransformationProof (EQUIVALENT) 67.74/34.84 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Zero, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.84 67.74/34.84 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero))))) 67.74/34.84 67.74/34.84 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (137) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(x2), Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Zero)), Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.84 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primEqInt0(vuz3260) -> False 67.74/34.84 new_primEqInt(vuz3250) -> False 67.74/34.84 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 67.74/34.84 The set Q consists of the following terms: 67.74/34.84 67.74/34.84 new_rem(Neg(x0), Neg(Zero)) 67.74/34.84 new_primEqInt1 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.84 new_primMinusNatS1 67.74/34.84 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.84 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.84 new_primMinusNatS2(Zero, Zero) 67.74/34.84 new_error 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) 67.74/34.84 new_rem(Pos(x0), Pos(Zero)) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.84 new_primEqInt0(x0) 67.74/34.84 new_esEs(Pos(Zero)) 67.74/34.84 new_esEs(Pos(Succ(x0))) 67.74/34.84 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS02(x0, x1) 67.74/34.84 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.84 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.84 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (138) TransformationProof (EQUIVALENT) 67.74/34.84 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(x2), Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.84 67.74/34.84 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2)))))) 67.74/34.84 67.74/34.84 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (139) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Zero)), Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.84 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primEqInt0(vuz3260) -> False 67.74/34.84 new_primEqInt(vuz3250) -> False 67.74/34.84 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 67.74/34.84 The set Q consists of the following terms: 67.74/34.84 67.74/34.84 new_rem(Neg(x0), Neg(Zero)) 67.74/34.84 new_primEqInt1 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.84 new_primMinusNatS1 67.74/34.84 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.84 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.84 new_primMinusNatS2(Zero, Zero) 67.74/34.84 new_error 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) 67.74/34.84 new_rem(Pos(x0), Pos(Zero)) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.84 new_primEqInt0(x0) 67.74/34.84 new_esEs(Pos(Zero)) 67.74/34.84 new_esEs(Pos(Succ(x0))) 67.74/34.84 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS02(x0, x1) 67.74/34.84 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.84 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.84 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (140) TransformationProof (EQUIVALENT) 67.74/34.84 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Zero)), Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.84 67.74/34.84 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero))))) 67.74/34.84 67.74/34.84 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (141) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.84 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primEqInt0(vuz3260) -> False 67.74/34.84 new_primEqInt(vuz3250) -> False 67.74/34.84 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 67.74/34.84 The set Q consists of the following terms: 67.74/34.84 67.74/34.84 new_rem(Neg(x0), Neg(Zero)) 67.74/34.84 new_primEqInt1 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.84 new_primMinusNatS1 67.74/34.84 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.84 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.84 new_primMinusNatS2(Zero, Zero) 67.74/34.84 new_error 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) 67.74/34.84 new_rem(Pos(x0), Pos(Zero)) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.84 new_primEqInt0(x0) 67.74/34.84 new_esEs(Pos(Zero)) 67.74/34.84 new_esEs(Pos(Succ(x0))) 67.74/34.84 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS02(x0, x1) 67.74/34.84 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.84 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.84 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (142) TransformationProof (EQUIVALENT) 67.74/34.84 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.84 67.74/34.84 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero))))) 67.74/34.84 67.74/34.84 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (143) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.84 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primEqInt0(vuz3260) -> False 67.74/34.84 new_primEqInt(vuz3250) -> False 67.74/34.84 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 67.74/34.84 The set Q consists of the following terms: 67.74/34.84 67.74/34.84 new_rem(Neg(x0), Neg(Zero)) 67.74/34.84 new_primEqInt1 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.84 new_primMinusNatS1 67.74/34.84 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.84 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.84 new_primMinusNatS2(Zero, Zero) 67.74/34.84 new_error 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) 67.74/34.84 new_rem(Pos(x0), Pos(Zero)) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.84 new_primEqInt0(x0) 67.74/34.84 new_esEs(Pos(Zero)) 67.74/34.84 new_esEs(Pos(Succ(x0))) 67.74/34.84 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS02(x0, x1) 67.74/34.84 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.84 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.84 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (144) TransformationProof (EQUIVALENT) 67.74/34.84 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.84 67.74/34.84 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2)))))) 67.74/34.84 67.74/34.84 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (145) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.84 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primEqInt0(vuz3260) -> False 67.74/34.84 new_primEqInt(vuz3250) -> False 67.74/34.84 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 67.74/34.84 The set Q consists of the following terms: 67.74/34.84 67.74/34.84 new_rem(Neg(x0), Neg(Zero)) 67.74/34.84 new_primEqInt1 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.84 new_primMinusNatS1 67.74/34.84 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.84 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.84 new_primMinusNatS2(Zero, Zero) 67.74/34.84 new_error 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) 67.74/34.84 new_rem(Pos(x0), Pos(Zero)) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.84 new_primEqInt0(x0) 67.74/34.84 new_esEs(Pos(Zero)) 67.74/34.84 new_esEs(Pos(Succ(x0))) 67.74/34.84 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS02(x0, x1) 67.74/34.84 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.84 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.84 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (146) TransformationProof (EQUIVALENT) 67.74/34.84 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.84 67.74/34.84 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero))))) 67.74/34.84 67.74/34.84 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (147) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.84 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primEqInt0(vuz3260) -> False 67.74/34.84 new_primEqInt(vuz3250) -> False 67.74/34.84 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 67.74/34.84 The set Q consists of the following terms: 67.74/34.84 67.74/34.84 new_rem(Neg(x0), Neg(Zero)) 67.74/34.84 new_primEqInt1 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.84 new_primMinusNatS1 67.74/34.84 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.84 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.84 new_primMinusNatS2(Zero, Zero) 67.74/34.84 new_error 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) 67.74/34.84 new_rem(Pos(x0), Pos(Zero)) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.84 new_primEqInt0(x0) 67.74/34.84 new_esEs(Pos(Zero)) 67.74/34.84 new_esEs(Pos(Succ(x0))) 67.74/34.84 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS02(x0, x1) 67.74/34.84 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.84 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.84 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (148) TransformationProof (EQUIVALENT) 67.74/34.84 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.84 67.74/34.84 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2)))))) 67.74/34.84 67.74/34.84 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (149) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.84 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primEqInt0(vuz3260) -> False 67.74/34.84 new_primEqInt(vuz3250) -> False 67.74/34.84 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 67.74/34.84 The set Q consists of the following terms: 67.74/34.84 67.74/34.84 new_rem(Neg(x0), Neg(Zero)) 67.74/34.84 new_primEqInt1 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.84 new_primMinusNatS1 67.74/34.84 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.84 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.84 new_primMinusNatS2(Zero, Zero) 67.74/34.84 new_error 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) 67.74/34.84 new_rem(Pos(x0), Pos(Zero)) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.84 new_primEqInt0(x0) 67.74/34.84 new_esEs(Pos(Zero)) 67.74/34.84 new_esEs(Pos(Succ(x0))) 67.74/34.84 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS02(x0, x1) 67.74/34.84 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.84 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.84 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.84 new_primModNatS1(Zero, x0) 67.74/34.84 new_primEqInt(x0) 67.74/34.84 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.84 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.84 new_rem(Pos(x0), Neg(Zero)) 67.74/34.84 new_rem(Neg(x0), Pos(Zero)) 67.74/34.84 new_primMinusNatS0(x0) 67.74/34.84 new_primEqInt2 67.74/34.84 new_esEs(Neg(Zero)) 67.74/34.84 new_esEs(Neg(Succ(x0))) 67.74/34.84 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.84 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.84 67.74/34.84 We have to consider all minimal (P,Q,R)-chains. 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (150) TransformationProof (EQUIVALENT) 67.74/34.84 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.84 67.74/34.84 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero))))) 67.74/34.84 67.74/34.84 67.74/34.84 ---------------------------------------- 67.74/34.84 67.74/34.84 (151) 67.74/34.84 Obligation: 67.74/34.84 Q DP problem: 67.74/34.84 The TRS P consists of the following rules: 67.74/34.84 67.74/34.84 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.84 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.84 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.84 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.84 67.74/34.84 The TRS R consists of the following rules: 67.74/34.84 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.84 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.84 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.84 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.84 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.84 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.84 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.84 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.84 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.84 new_error -> error([]) 67.74/34.84 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.84 new_primEqInt2 -> True 67.74/34.84 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.84 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.84 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.84 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.84 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.84 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.84 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.84 new_primMinusNatS1 -> Zero 67.74/34.84 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.84 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (152) DependencyGraphProof (EQUIVALENT) 67.74/34.85 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (153) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 67.74/34.85 The TRS R consists of the following rules: 67.74/34.85 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.85 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.85 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.85 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.85 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.85 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.85 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.85 new_error -> error([]) 67.74/34.85 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.85 new_primEqInt2 -> True 67.74/34.85 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.85 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS1 -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.85 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (154) TransformationProof (EQUIVALENT) 67.74/34.85 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.85 67.74/34.85 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0)))))) 67.74/34.85 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Zero))))) 67.74/34.85 67.74/34.85 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (155) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) 67.74/34.85 67.74/34.85 The TRS R consists of the following rules: 67.74/34.85 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.85 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.85 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.85 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.85 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.85 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.85 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.85 new_error -> error([]) 67.74/34.85 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.85 new_primEqInt2 -> True 67.74/34.85 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.85 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS1 -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.85 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (156) TransformationProof (EQUIVALENT) 67.74/34.85 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.85 67.74/34.85 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0)))))) 67.74/34.85 67.74/34.85 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (157) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.85 67.74/34.85 The TRS R consists of the following rules: 67.74/34.85 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.85 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.85 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.85 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.85 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.85 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.85 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.85 new_error -> error([]) 67.74/34.85 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.85 new_primEqInt2 -> True 67.74/34.85 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.85 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS1 -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.85 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (158) TransformationProof (EQUIVALENT) 67.74/34.85 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.85 67.74/34.85 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Zero))))) 67.74/34.85 67.74/34.85 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (159) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) 67.74/34.85 67.74/34.85 The TRS R consists of the following rules: 67.74/34.85 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.85 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.85 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.85 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.85 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.85 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.85 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.85 new_error -> error([]) 67.74/34.85 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.85 new_primEqInt2 -> True 67.74/34.85 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.85 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS1 -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.85 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (160) TransformationProof (EQUIVALENT) 67.74/34.85 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.85 67.74/34.85 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(Zero)), Neg(Succ(Succ(Zero))))) 67.74/34.85 67.74/34.85 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (161) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(Zero)), Neg(Succ(Succ(Zero)))) 67.74/34.85 67.74/34.85 The TRS R consists of the following rules: 67.74/34.85 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.85 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.85 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.85 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.85 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.85 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.85 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.85 new_error -> error([]) 67.74/34.85 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.85 new_primEqInt2 -> True 67.74/34.85 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.85 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS1 -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.85 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (162) DependencyGraphProof (EQUIVALENT) 67.74/34.85 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (163) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.85 67.74/34.85 The TRS R consists of the following rules: 67.74/34.85 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.85 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.85 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.85 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.85 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.85 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.85 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.85 new_error -> error([]) 67.74/34.85 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.85 new_primEqInt2 -> True 67.74/34.85 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.85 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS1 -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.85 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (164) TransformationProof (EQUIVALENT) 67.74/34.85 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.85 67.74/34.85 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2)))))) 67.74/34.85 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero))))) 67.74/34.85 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Zero, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Zero, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero))))) 67.74/34.85 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(x2), Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(x2), Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2)))))) 67.74/34.85 67.74/34.85 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (165) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Zero, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(x2), Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 67.74/34.85 The TRS R consists of the following rules: 67.74/34.85 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.85 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.85 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.85 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.85 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.85 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.85 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.85 new_error -> error([]) 67.74/34.85 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.85 new_primEqInt2 -> True 67.74/34.85 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.85 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS1 -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.85 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (166) TransformationProof (EQUIVALENT) 67.74/34.85 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.85 67.74/34.85 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Zero)), Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Zero)), Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero))))) 67.74/34.85 67.74/34.85 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (167) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Zero, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(x2), Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Zero)), Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.85 67.74/34.85 The TRS R consists of the following rules: 67.74/34.85 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.85 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.85 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.85 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.85 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.85 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.85 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.85 new_error -> error([]) 67.74/34.85 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.85 new_primEqInt2 -> True 67.74/34.85 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.85 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS1 -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.85 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (168) TransformationProof (EQUIVALENT) 67.74/34.85 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Zero, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.85 67.74/34.85 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero))))) 67.74/34.85 67.74/34.85 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (169) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(x2), Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Zero)), Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.85 67.74/34.85 The TRS R consists of the following rules: 67.74/34.85 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.85 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.85 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.85 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.85 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.85 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.85 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.85 new_error -> error([]) 67.74/34.85 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.85 new_primEqInt2 -> True 67.74/34.85 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.85 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS1 -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.85 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (170) TransformationProof (EQUIVALENT) 67.74/34.85 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(x2), Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.85 67.74/34.85 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2)))))) 67.74/34.85 67.74/34.85 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (171) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Zero)), Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 67.74/34.85 The TRS R consists of the following rules: 67.74/34.85 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.85 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.85 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.85 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.85 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.85 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.85 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.85 new_error -> error([]) 67.74/34.85 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.85 new_primEqInt2 -> True 67.74/34.85 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.85 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS1 -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.85 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (172) TransformationProof (EQUIVALENT) 67.74/34.85 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Zero)), Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.85 67.74/34.85 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero))))) 67.74/34.85 67.74/34.85 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (173) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.85 67.74/34.85 The TRS R consists of the following rules: 67.74/34.85 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.85 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.85 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.85 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.85 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.85 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.85 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.85 new_error -> error([]) 67.74/34.85 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.85 new_primEqInt2 -> True 67.74/34.85 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.85 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS1 -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.85 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (174) TransformationProof (EQUIVALENT) 67.74/34.85 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.85 67.74/34.85 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero))))) 67.74/34.85 67.74/34.85 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (175) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.85 67.74/34.85 The TRS R consists of the following rules: 67.74/34.85 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.85 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.85 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.85 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.85 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.85 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.85 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.85 new_error -> error([]) 67.74/34.85 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.85 new_primEqInt2 -> True 67.74/34.85 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.85 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS1 -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.85 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (176) TransformationProof (EQUIVALENT) 67.74/34.85 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.85 67.74/34.85 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2)))))) 67.74/34.85 67.74/34.85 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (177) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 67.74/34.85 The TRS R consists of the following rules: 67.74/34.85 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.85 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.85 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.85 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.85 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.85 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.85 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.85 new_error -> error([]) 67.74/34.85 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.85 new_primEqInt2 -> True 67.74/34.85 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.85 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS1 -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.85 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (178) TransformationProof (EQUIVALENT) 67.74/34.85 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.85 67.74/34.85 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero))))) 67.74/34.85 67.74/34.85 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (179) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.85 67.74/34.85 The TRS R consists of the following rules: 67.74/34.85 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.85 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.85 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.85 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.85 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.85 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.85 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.85 new_error -> error([]) 67.74/34.85 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.85 new_primEqInt2 -> True 67.74/34.85 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.85 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS1 -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.85 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (180) TransformationProof (EQUIVALENT) 67.74/34.85 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.85 67.74/34.85 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2)))))) 67.74/34.85 67.74/34.85 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (181) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 67.74/34.85 The TRS R consists of the following rules: 67.74/34.85 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.85 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.85 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.85 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.85 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.85 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.85 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.85 new_error -> error([]) 67.74/34.85 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.85 new_primEqInt2 -> True 67.74/34.85 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.85 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS1 -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.85 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (182) TransformationProof (EQUIVALENT) 67.74/34.85 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.85 67.74/34.85 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero))))) 67.74/34.85 67.74/34.85 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (183) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.85 67.74/34.85 The TRS R consists of the following rules: 67.74/34.85 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.85 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.85 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.85 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.85 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.85 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.85 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.85 new_error -> error([]) 67.74/34.85 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.85 new_primEqInt2 -> True 67.74/34.85 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.85 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS1 -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.85 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (184) DependencyGraphProof (EQUIVALENT) 67.74/34.85 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (185) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.85 67.74/34.85 The TRS R consists of the following rules: 67.74/34.85 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.85 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.85 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.85 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.85 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.85 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.85 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.85 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.85 new_error -> error([]) 67.74/34.85 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.85 new_primEqInt2 -> True 67.74/34.85 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.85 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.85 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.85 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.85 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primMinusNatS1 -> Zero 67.74/34.85 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.85 new_primEqInt1 -> True 67.74/34.85 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.85 new_primEqInt0(vuz3260) -> False 67.74/34.85 new_primEqInt(vuz3250) -> False 67.74/34.85 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.85 67.74/34.85 The set Q consists of the following terms: 67.74/34.85 67.74/34.85 new_rem(Neg(x0), Neg(Zero)) 67.74/34.85 new_primEqInt1 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.85 new_primMinusNatS1 67.74/34.85 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.85 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.85 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.85 new_primMinusNatS2(Zero, Zero) 67.74/34.85 new_error 67.74/34.85 new_primModNatS1(Succ(Zero), Zero) 67.74/34.85 new_rem(Pos(x0), Pos(Zero)) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.85 new_primEqInt0(x0) 67.74/34.85 new_esEs(Pos(Zero)) 67.74/34.85 new_esEs(Pos(Succ(x0))) 67.74/34.85 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS02(x0, x1) 67.74/34.85 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.85 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.85 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.85 new_primModNatS1(Zero, x0) 67.74/34.85 new_primEqInt(x0) 67.74/34.85 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.85 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.85 new_rem(Pos(x0), Neg(Zero)) 67.74/34.85 new_rem(Neg(x0), Pos(Zero)) 67.74/34.85 new_primMinusNatS0(x0) 67.74/34.85 new_primEqInt2 67.74/34.85 new_esEs(Neg(Zero)) 67.74/34.85 new_esEs(Neg(Succ(x0))) 67.74/34.85 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.85 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.85 67.74/34.85 We have to consider all minimal (P,Q,R)-chains. 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (186) TransformationProof (EQUIVALENT) 67.74/34.85 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.85 67.74/34.85 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0)))))) 67.74/34.85 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Zero))))) 67.74/34.85 67.74/34.85 67.74/34.85 ---------------------------------------- 67.74/34.85 67.74/34.85 (187) 67.74/34.85 Obligation: 67.74/34.85 Q DP problem: 67.74/34.85 The TRS P consists of the following rules: 67.74/34.85 67.74/34.85 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.85 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.85 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) 67.74/34.86 67.74/34.86 The TRS R consists of the following rules: 67.74/34.86 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.86 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.86 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.86 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.86 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.86 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.86 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.86 new_error -> error([]) 67.74/34.86 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.86 new_primEqInt2 -> True 67.74/34.86 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.86 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS1 -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.86 new_primEqInt1 -> True 67.74/34.86 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primEqInt0(vuz3260) -> False 67.74/34.86 new_primEqInt(vuz3250) -> False 67.74/34.86 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 67.74/34.86 The set Q consists of the following terms: 67.74/34.86 67.74/34.86 new_rem(Neg(x0), Neg(Zero)) 67.74/34.86 new_primEqInt1 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.86 new_primMinusNatS1 67.74/34.86 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.86 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.86 new_primMinusNatS2(Zero, Zero) 67.74/34.86 new_error 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) 67.74/34.86 new_rem(Pos(x0), Pos(Zero)) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.86 new_primEqInt0(x0) 67.74/34.86 new_esEs(Pos(Zero)) 67.74/34.86 new_esEs(Pos(Succ(x0))) 67.74/34.86 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS02(x0, x1) 67.74/34.86 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.86 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.86 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS1(Zero, x0) 67.74/34.86 new_primEqInt(x0) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.86 new_rem(Pos(x0), Neg(Zero)) 67.74/34.86 new_rem(Neg(x0), Pos(Zero)) 67.74/34.86 new_primMinusNatS0(x0) 67.74/34.86 new_primEqInt2 67.74/34.86 new_esEs(Neg(Zero)) 67.74/34.86 new_esEs(Neg(Succ(x0))) 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.86 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.86 67.74/34.86 We have to consider all minimal (P,Q,R)-chains. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (188) TransformationProof (EQUIVALENT) 67.74/34.86 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.86 67.74/34.86 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0)))))) 67.74/34.86 67.74/34.86 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (189) 67.74/34.86 Obligation: 67.74/34.86 Q DP problem: 67.74/34.86 The TRS P consists of the following rules: 67.74/34.86 67.74/34.86 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.86 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 67.74/34.86 The TRS R consists of the following rules: 67.74/34.86 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.86 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.86 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.86 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.86 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.86 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.86 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.86 new_error -> error([]) 67.74/34.86 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.86 new_primEqInt2 -> True 67.74/34.86 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.86 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS1 -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.86 new_primEqInt1 -> True 67.74/34.86 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primEqInt0(vuz3260) -> False 67.74/34.86 new_primEqInt(vuz3250) -> False 67.74/34.86 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 67.74/34.86 The set Q consists of the following terms: 67.74/34.86 67.74/34.86 new_rem(Neg(x0), Neg(Zero)) 67.74/34.86 new_primEqInt1 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.86 new_primMinusNatS1 67.74/34.86 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.86 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.86 new_primMinusNatS2(Zero, Zero) 67.74/34.86 new_error 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) 67.74/34.86 new_rem(Pos(x0), Pos(Zero)) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.86 new_primEqInt0(x0) 67.74/34.86 new_esEs(Pos(Zero)) 67.74/34.86 new_esEs(Pos(Succ(x0))) 67.74/34.86 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS02(x0, x1) 67.74/34.86 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.86 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.86 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS1(Zero, x0) 67.74/34.86 new_primEqInt(x0) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.86 new_rem(Pos(x0), Neg(Zero)) 67.74/34.86 new_rem(Neg(x0), Pos(Zero)) 67.74/34.86 new_primMinusNatS0(x0) 67.74/34.86 new_primEqInt2 67.74/34.86 new_esEs(Neg(Zero)) 67.74/34.86 new_esEs(Neg(Succ(x0))) 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.86 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.86 67.74/34.86 We have to consider all minimal (P,Q,R)-chains. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (190) TransformationProof (EQUIVALENT) 67.74/34.86 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.86 67.74/34.86 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Zero))))) 67.74/34.86 67.74/34.86 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (191) 67.74/34.86 Obligation: 67.74/34.86 Q DP problem: 67.74/34.86 The TRS P consists of the following rules: 67.74/34.86 67.74/34.86 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.86 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) 67.74/34.86 67.74/34.86 The TRS R consists of the following rules: 67.74/34.86 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.86 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.86 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.86 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.86 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.86 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.86 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.86 new_error -> error([]) 67.74/34.86 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.86 new_primEqInt2 -> True 67.74/34.86 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.86 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS1 -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.86 new_primEqInt1 -> True 67.74/34.86 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primEqInt0(vuz3260) -> False 67.74/34.86 new_primEqInt(vuz3250) -> False 67.74/34.86 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 67.74/34.86 The set Q consists of the following terms: 67.74/34.86 67.74/34.86 new_rem(Neg(x0), Neg(Zero)) 67.74/34.86 new_primEqInt1 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.86 new_primMinusNatS1 67.74/34.86 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.86 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.86 new_primMinusNatS2(Zero, Zero) 67.74/34.86 new_error 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) 67.74/34.86 new_rem(Pos(x0), Pos(Zero)) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.86 new_primEqInt0(x0) 67.74/34.86 new_esEs(Pos(Zero)) 67.74/34.86 new_esEs(Pos(Succ(x0))) 67.74/34.86 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS02(x0, x1) 67.74/34.86 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.86 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.86 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS1(Zero, x0) 67.74/34.86 new_primEqInt(x0) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.86 new_rem(Pos(x0), Neg(Zero)) 67.74/34.86 new_rem(Neg(x0), Pos(Zero)) 67.74/34.86 new_primMinusNatS0(x0) 67.74/34.86 new_primEqInt2 67.74/34.86 new_esEs(Neg(Zero)) 67.74/34.86 new_esEs(Neg(Succ(x0))) 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.86 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.86 67.74/34.86 We have to consider all minimal (P,Q,R)-chains. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (192) TransformationProof (EQUIVALENT) 67.74/34.86 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.86 67.74/34.86 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(Zero)), Pos(Succ(Succ(Zero))))) 67.74/34.86 67.74/34.86 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (193) 67.74/34.86 Obligation: 67.74/34.86 Q DP problem: 67.74/34.86 The TRS P consists of the following rules: 67.74/34.86 67.74/34.86 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.86 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(Zero)), Pos(Succ(Succ(Zero)))) 67.74/34.86 67.74/34.86 The TRS R consists of the following rules: 67.74/34.86 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.86 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.86 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.86 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.86 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.86 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.86 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.86 new_error -> error([]) 67.74/34.86 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.86 new_primEqInt2 -> True 67.74/34.86 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.86 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS1 -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.86 new_primEqInt1 -> True 67.74/34.86 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primEqInt0(vuz3260) -> False 67.74/34.86 new_primEqInt(vuz3250) -> False 67.74/34.86 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 67.74/34.86 The set Q consists of the following terms: 67.74/34.86 67.74/34.86 new_rem(Neg(x0), Neg(Zero)) 67.74/34.86 new_primEqInt1 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.86 new_primMinusNatS1 67.74/34.86 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.86 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.86 new_primMinusNatS2(Zero, Zero) 67.74/34.86 new_error 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) 67.74/34.86 new_rem(Pos(x0), Pos(Zero)) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.86 new_primEqInt0(x0) 67.74/34.86 new_esEs(Pos(Zero)) 67.74/34.86 new_esEs(Pos(Succ(x0))) 67.74/34.86 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS02(x0, x1) 67.74/34.86 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.86 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.86 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS1(Zero, x0) 67.74/34.86 new_primEqInt(x0) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.86 new_rem(Pos(x0), Neg(Zero)) 67.74/34.86 new_rem(Neg(x0), Pos(Zero)) 67.74/34.86 new_primMinusNatS0(x0) 67.74/34.86 new_primEqInt2 67.74/34.86 new_esEs(Neg(Zero)) 67.74/34.86 new_esEs(Neg(Succ(x0))) 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.86 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.86 67.74/34.86 We have to consider all minimal (P,Q,R)-chains. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (194) DependencyGraphProof (EQUIVALENT) 67.74/34.86 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (195) 67.74/34.86 Obligation: 67.74/34.86 Q DP problem: 67.74/34.86 The TRS P consists of the following rules: 67.74/34.86 67.74/34.86 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 67.74/34.86 The TRS R consists of the following rules: 67.74/34.86 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.86 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.86 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.86 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.86 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.86 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.86 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.86 new_error -> error([]) 67.74/34.86 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.86 new_primEqInt2 -> True 67.74/34.86 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.86 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS1 -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.86 new_primEqInt1 -> True 67.74/34.86 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primEqInt0(vuz3260) -> False 67.74/34.86 new_primEqInt(vuz3250) -> False 67.74/34.86 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 67.74/34.86 The set Q consists of the following terms: 67.74/34.86 67.74/34.86 new_rem(Neg(x0), Neg(Zero)) 67.74/34.86 new_primEqInt1 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.86 new_primMinusNatS1 67.74/34.86 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.86 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.86 new_primMinusNatS2(Zero, Zero) 67.74/34.86 new_error 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) 67.74/34.86 new_rem(Pos(x0), Pos(Zero)) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.86 new_primEqInt0(x0) 67.74/34.86 new_esEs(Pos(Zero)) 67.74/34.86 new_esEs(Pos(Succ(x0))) 67.74/34.86 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS02(x0, x1) 67.74/34.86 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.86 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.86 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS1(Zero, x0) 67.74/34.86 new_primEqInt(x0) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.86 new_rem(Pos(x0), Neg(Zero)) 67.74/34.86 new_rem(Neg(x0), Pos(Zero)) 67.74/34.86 new_primMinusNatS0(x0) 67.74/34.86 new_primEqInt2 67.74/34.86 new_esEs(Neg(Zero)) 67.74/34.86 new_esEs(Neg(Succ(x0))) 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.86 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.86 67.74/34.86 We have to consider all minimal (P,Q,R)-chains. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (196) TransformationProof (EQUIVALENT) 67.74/34.86 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, x1, x0, x1))), Neg(Succ(Succ(x1))), Pos(Succ(Succ(x0)))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.86 67.74/34.86 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2)))))) 67.74/34.86 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero))))) 67.74/34.86 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Zero, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Zero, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero))))) 67.74/34.86 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(x2), Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(x2), Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2)))))) 67.74/34.86 67.74/34.86 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (197) 67.74/34.86 Obligation: 67.74/34.86 Q DP problem: 67.74/34.86 The TRS P consists of the following rules: 67.74/34.86 67.74/34.86 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Zero, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(x2), Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 67.74/34.86 The TRS R consists of the following rules: 67.74/34.86 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.86 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.86 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.86 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.86 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.86 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.86 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.86 new_error -> error([]) 67.74/34.86 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.86 new_primEqInt2 -> True 67.74/34.86 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.86 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS1 -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.86 new_primEqInt1 -> True 67.74/34.86 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primEqInt0(vuz3260) -> False 67.74/34.86 new_primEqInt(vuz3250) -> False 67.74/34.86 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 67.74/34.86 The set Q consists of the following terms: 67.74/34.86 67.74/34.86 new_rem(Neg(x0), Neg(Zero)) 67.74/34.86 new_primEqInt1 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.86 new_primMinusNatS1 67.74/34.86 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.86 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.86 new_primMinusNatS2(Zero, Zero) 67.74/34.86 new_error 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) 67.74/34.86 new_rem(Pos(x0), Pos(Zero)) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.86 new_primEqInt0(x0) 67.74/34.86 new_esEs(Pos(Zero)) 67.74/34.86 new_esEs(Pos(Succ(x0))) 67.74/34.86 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS02(x0, x1) 67.74/34.86 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.86 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.86 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS1(Zero, x0) 67.74/34.86 new_primEqInt(x0) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.86 new_rem(Pos(x0), Neg(Zero)) 67.74/34.86 new_rem(Neg(x0), Pos(Zero)) 67.74/34.86 new_primMinusNatS0(x0) 67.74/34.86 new_primEqInt2 67.74/34.86 new_esEs(Neg(Zero)) 67.74/34.86 new_esEs(Neg(Succ(x0))) 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.86 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.86 67.74/34.86 We have to consider all minimal (P,Q,R)-chains. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (198) TransformationProof (EQUIVALENT) 67.74/34.86 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.86 67.74/34.86 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Zero)), Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Zero)), Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero))))) 67.74/34.86 67.74/34.86 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (199) 67.74/34.86 Obligation: 67.74/34.86 Q DP problem: 67.74/34.86 The TRS P consists of the following rules: 67.74/34.86 67.74/34.86 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Zero, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(x2), Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Zero)), Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 67.74/34.86 The TRS R consists of the following rules: 67.74/34.86 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.86 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.86 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.86 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.86 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.86 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.86 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.86 new_error -> error([]) 67.74/34.86 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.86 new_primEqInt2 -> True 67.74/34.86 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.86 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS1 -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.86 new_primEqInt1 -> True 67.74/34.86 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primEqInt0(vuz3260) -> False 67.74/34.86 new_primEqInt(vuz3250) -> False 67.74/34.86 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 67.74/34.86 The set Q consists of the following terms: 67.74/34.86 67.74/34.86 new_rem(Neg(x0), Neg(Zero)) 67.74/34.86 new_primEqInt1 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.86 new_primMinusNatS1 67.74/34.86 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.86 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.86 new_primMinusNatS2(Zero, Zero) 67.74/34.86 new_error 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) 67.74/34.86 new_rem(Pos(x0), Pos(Zero)) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.86 new_primEqInt0(x0) 67.74/34.86 new_esEs(Pos(Zero)) 67.74/34.86 new_esEs(Pos(Succ(x0))) 67.74/34.86 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS02(x0, x1) 67.74/34.86 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.86 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.86 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS1(Zero, x0) 67.74/34.86 new_primEqInt(x0) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.86 new_rem(Pos(x0), Neg(Zero)) 67.74/34.86 new_rem(Neg(x0), Pos(Zero)) 67.74/34.86 new_primMinusNatS0(x0) 67.74/34.86 new_primEqInt2 67.74/34.86 new_esEs(Neg(Zero)) 67.74/34.86 new_esEs(Neg(Succ(x0))) 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.86 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.86 67.74/34.86 We have to consider all minimal (P,Q,R)-chains. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (200) TransformationProof (EQUIVALENT) 67.74/34.86 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Zero, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.86 67.74/34.86 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero))))) 67.74/34.86 67.74/34.86 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (201) 67.74/34.86 Obligation: 67.74/34.86 Q DP problem: 67.74/34.86 The TRS P consists of the following rules: 67.74/34.86 67.74/34.86 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(x2), Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Zero)), Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.86 67.74/34.86 The TRS R consists of the following rules: 67.74/34.86 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.86 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.86 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.86 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.86 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.86 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.86 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.86 new_error -> error([]) 67.74/34.86 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.86 new_primEqInt2 -> True 67.74/34.86 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.86 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS1 -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.86 new_primEqInt1 -> True 67.74/34.86 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primEqInt0(vuz3260) -> False 67.74/34.86 new_primEqInt(vuz3250) -> False 67.74/34.86 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 67.74/34.86 The set Q consists of the following terms: 67.74/34.86 67.74/34.86 new_rem(Neg(x0), Neg(Zero)) 67.74/34.86 new_primEqInt1 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.86 new_primMinusNatS1 67.74/34.86 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.86 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.86 new_primMinusNatS2(Zero, Zero) 67.74/34.86 new_error 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) 67.74/34.86 new_rem(Pos(x0), Pos(Zero)) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.86 new_primEqInt0(x0) 67.74/34.86 new_esEs(Pos(Zero)) 67.74/34.86 new_esEs(Pos(Succ(x0))) 67.74/34.86 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS02(x0, x1) 67.74/34.86 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.86 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.86 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS1(Zero, x0) 67.74/34.86 new_primEqInt(x0) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.86 new_rem(Pos(x0), Neg(Zero)) 67.74/34.86 new_rem(Neg(x0), Pos(Zero)) 67.74/34.86 new_primMinusNatS0(x0) 67.74/34.86 new_primEqInt2 67.74/34.86 new_esEs(Neg(Zero)) 67.74/34.86 new_esEs(Neg(Succ(x0))) 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.86 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.86 67.74/34.86 We have to consider all minimal (P,Q,R)-chains. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (202) TransformationProof (EQUIVALENT) 67.74/34.86 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(x2), Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.86 67.74/34.86 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2)))))) 67.74/34.86 67.74/34.86 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (203) 67.74/34.86 Obligation: 67.74/34.86 Q DP problem: 67.74/34.86 The TRS P consists of the following rules: 67.74/34.86 67.74/34.86 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Zero)), Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 67.74/34.86 The TRS R consists of the following rules: 67.74/34.86 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.86 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.86 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.86 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.86 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.86 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.86 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.86 new_error -> error([]) 67.74/34.86 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.86 new_primEqInt2 -> True 67.74/34.86 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.86 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS1 -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.86 new_primEqInt1 -> True 67.74/34.86 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primEqInt0(vuz3260) -> False 67.74/34.86 new_primEqInt(vuz3250) -> False 67.74/34.86 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 67.74/34.86 The set Q consists of the following terms: 67.74/34.86 67.74/34.86 new_rem(Neg(x0), Neg(Zero)) 67.74/34.86 new_primEqInt1 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.86 new_primMinusNatS1 67.74/34.86 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.86 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.86 new_primMinusNatS2(Zero, Zero) 67.74/34.86 new_error 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) 67.74/34.86 new_rem(Pos(x0), Pos(Zero)) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.86 new_primEqInt0(x0) 67.74/34.86 new_esEs(Pos(Zero)) 67.74/34.86 new_esEs(Pos(Succ(x0))) 67.74/34.86 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS02(x0, x1) 67.74/34.86 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.86 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.86 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS1(Zero, x0) 67.74/34.86 new_primEqInt(x0) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.86 new_rem(Pos(x0), Neg(Zero)) 67.74/34.86 new_rem(Neg(x0), Pos(Zero)) 67.74/34.86 new_primMinusNatS0(x0) 67.74/34.86 new_primEqInt2 67.74/34.86 new_esEs(Neg(Zero)) 67.74/34.86 new_esEs(Neg(Succ(x0))) 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.86 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.86 67.74/34.86 We have to consider all minimal (P,Q,R)-chains. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (204) TransformationProof (EQUIVALENT) 67.74/34.86 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Zero)), Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.86 67.74/34.86 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero))))) 67.74/34.86 67.74/34.86 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (205) 67.74/34.86 Obligation: 67.74/34.86 Q DP problem: 67.74/34.86 The TRS P consists of the following rules: 67.74/34.86 67.74/34.86 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 67.74/34.86 The TRS R consists of the following rules: 67.74/34.86 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.86 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.86 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.86 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.86 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.86 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.86 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.86 new_error -> error([]) 67.74/34.86 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.86 new_primEqInt2 -> True 67.74/34.86 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.86 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS1 -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.86 new_primEqInt1 -> True 67.74/34.86 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primEqInt0(vuz3260) -> False 67.74/34.86 new_primEqInt(vuz3250) -> False 67.74/34.86 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 67.74/34.86 The set Q consists of the following terms: 67.74/34.86 67.74/34.86 new_rem(Neg(x0), Neg(Zero)) 67.74/34.86 new_primEqInt1 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.86 new_primMinusNatS1 67.74/34.86 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.86 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.86 new_primMinusNatS2(Zero, Zero) 67.74/34.86 new_error 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) 67.74/34.86 new_rem(Pos(x0), Pos(Zero)) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.86 new_primEqInt0(x0) 67.74/34.86 new_esEs(Pos(Zero)) 67.74/34.86 new_esEs(Pos(Succ(x0))) 67.74/34.86 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS02(x0, x1) 67.74/34.86 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.86 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.86 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS1(Zero, x0) 67.74/34.86 new_primEqInt(x0) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.86 new_rem(Pos(x0), Neg(Zero)) 67.74/34.86 new_rem(Neg(x0), Pos(Zero)) 67.74/34.86 new_primMinusNatS0(x0) 67.74/34.86 new_primEqInt2 67.74/34.86 new_esEs(Neg(Zero)) 67.74/34.86 new_esEs(Neg(Succ(x0))) 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.86 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.86 67.74/34.86 We have to consider all minimal (P,Q,R)-chains. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (206) TransformationProof (EQUIVALENT) 67.74/34.86 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.86 67.74/34.86 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero))))) 67.74/34.86 67.74/34.86 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (207) 67.74/34.86 Obligation: 67.74/34.86 Q DP problem: 67.74/34.86 The TRS P consists of the following rules: 67.74/34.86 67.74/34.86 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.86 67.74/34.86 The TRS R consists of the following rules: 67.74/34.86 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.86 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.86 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.86 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.86 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.86 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.86 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.86 new_error -> error([]) 67.74/34.86 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.86 new_primEqInt2 -> True 67.74/34.86 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.86 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS1 -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.86 new_primEqInt1 -> True 67.74/34.86 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primEqInt0(vuz3260) -> False 67.74/34.86 new_primEqInt(vuz3250) -> False 67.74/34.86 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 67.74/34.86 The set Q consists of the following terms: 67.74/34.86 67.74/34.86 new_rem(Neg(x0), Neg(Zero)) 67.74/34.86 new_primEqInt1 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.86 new_primMinusNatS1 67.74/34.86 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.86 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.86 new_primMinusNatS2(Zero, Zero) 67.74/34.86 new_error 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) 67.74/34.86 new_rem(Pos(x0), Pos(Zero)) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.86 new_primEqInt0(x0) 67.74/34.86 new_esEs(Pos(Zero)) 67.74/34.86 new_esEs(Pos(Succ(x0))) 67.74/34.86 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS02(x0, x1) 67.74/34.86 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.86 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.86 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS1(Zero, x0) 67.74/34.86 new_primEqInt(x0) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.86 new_rem(Pos(x0), Neg(Zero)) 67.74/34.86 new_rem(Neg(x0), Pos(Zero)) 67.74/34.86 new_primMinusNatS0(x0) 67.74/34.86 new_primEqInt2 67.74/34.86 new_esEs(Neg(Zero)) 67.74/34.86 new_esEs(Neg(Succ(x0))) 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.86 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.86 67.74/34.86 We have to consider all minimal (P,Q,R)-chains. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (208) TransformationProof (EQUIVALENT) 67.74/34.86 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.86 67.74/34.86 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2)))))) 67.74/34.86 67.74/34.86 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (209) 67.74/34.86 Obligation: 67.74/34.86 Q DP problem: 67.74/34.86 The TRS P consists of the following rules: 67.74/34.86 67.74/34.86 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 67.74/34.86 The TRS R consists of the following rules: 67.74/34.86 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.86 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.86 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.86 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.86 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.86 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.86 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.86 new_error -> error([]) 67.74/34.86 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.86 new_primEqInt2 -> True 67.74/34.86 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.86 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS1 -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.86 new_primEqInt1 -> True 67.74/34.86 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primEqInt0(vuz3260) -> False 67.74/34.86 new_primEqInt(vuz3250) -> False 67.74/34.86 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 67.74/34.86 The set Q consists of the following terms: 67.74/34.86 67.74/34.86 new_rem(Neg(x0), Neg(Zero)) 67.74/34.86 new_primEqInt1 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.86 new_primMinusNatS1 67.74/34.86 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.86 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.86 new_primMinusNatS2(Zero, Zero) 67.74/34.86 new_error 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) 67.74/34.86 new_rem(Pos(x0), Pos(Zero)) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.86 new_primEqInt0(x0) 67.74/34.86 new_esEs(Pos(Zero)) 67.74/34.86 new_esEs(Pos(Succ(x0))) 67.74/34.86 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS02(x0, x1) 67.74/34.86 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.86 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.86 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS1(Zero, x0) 67.74/34.86 new_primEqInt(x0) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.86 new_rem(Pos(x0), Neg(Zero)) 67.74/34.86 new_rem(Neg(x0), Pos(Zero)) 67.74/34.86 new_primMinusNatS0(x0) 67.74/34.86 new_primEqInt2 67.74/34.86 new_esEs(Neg(Zero)) 67.74/34.86 new_esEs(Neg(Succ(x0))) 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.86 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.86 67.74/34.86 We have to consider all minimal (P,Q,R)-chains. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (210) TransformationProof (EQUIVALENT) 67.74/34.86 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.86 67.74/34.86 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero))))) 67.74/34.86 67.74/34.86 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (211) 67.74/34.86 Obligation: 67.74/34.86 Q DP problem: 67.74/34.86 The TRS P consists of the following rules: 67.74/34.86 67.74/34.86 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.86 67.74/34.86 The TRS R consists of the following rules: 67.74/34.86 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.86 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.86 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.86 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.86 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.86 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.86 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.86 new_error -> error([]) 67.74/34.86 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.86 new_primEqInt2 -> True 67.74/34.86 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.86 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS1 -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.86 new_primEqInt1 -> True 67.74/34.86 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primEqInt0(vuz3260) -> False 67.74/34.86 new_primEqInt(vuz3250) -> False 67.74/34.86 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 67.74/34.86 The set Q consists of the following terms: 67.74/34.86 67.74/34.86 new_rem(Neg(x0), Neg(Zero)) 67.74/34.86 new_primEqInt1 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.86 new_primMinusNatS1 67.74/34.86 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.86 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.86 new_primMinusNatS2(Zero, Zero) 67.74/34.86 new_error 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) 67.74/34.86 new_rem(Pos(x0), Pos(Zero)) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.86 new_primEqInt0(x0) 67.74/34.86 new_esEs(Pos(Zero)) 67.74/34.86 new_esEs(Pos(Succ(x0))) 67.74/34.86 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS02(x0, x1) 67.74/34.86 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.86 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.86 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS1(Zero, x0) 67.74/34.86 new_primEqInt(x0) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.86 new_rem(Pos(x0), Neg(Zero)) 67.74/34.86 new_rem(Neg(x0), Pos(Zero)) 67.74/34.86 new_primMinusNatS0(x0) 67.74/34.86 new_primEqInt2 67.74/34.86 new_esEs(Neg(Zero)) 67.74/34.86 new_esEs(Neg(Succ(x0))) 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.86 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.86 67.74/34.86 We have to consider all minimal (P,Q,R)-chains. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (212) TransformationProof (EQUIVALENT) 67.74/34.86 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.86 67.74/34.86 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2)))))) 67.74/34.86 67.74/34.86 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (213) 67.74/34.86 Obligation: 67.74/34.86 Q DP problem: 67.74/34.86 The TRS P consists of the following rules: 67.74/34.86 67.74/34.86 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 67.74/34.86 The TRS R consists of the following rules: 67.74/34.86 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.86 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.86 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.86 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.86 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.86 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.86 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.86 new_error -> error([]) 67.74/34.86 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.86 new_primEqInt2 -> True 67.74/34.86 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.86 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS1 -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.86 new_primEqInt1 -> True 67.74/34.86 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primEqInt0(vuz3260) -> False 67.74/34.86 new_primEqInt(vuz3250) -> False 67.74/34.86 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 67.74/34.86 The set Q consists of the following terms: 67.74/34.86 67.74/34.86 new_rem(Neg(x0), Neg(Zero)) 67.74/34.86 new_primEqInt1 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.86 new_primMinusNatS1 67.74/34.86 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.86 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.86 new_primMinusNatS2(Zero, Zero) 67.74/34.86 new_error 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) 67.74/34.86 new_rem(Pos(x0), Pos(Zero)) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.86 new_primEqInt0(x0) 67.74/34.86 new_esEs(Pos(Zero)) 67.74/34.86 new_esEs(Pos(Succ(x0))) 67.74/34.86 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS02(x0, x1) 67.74/34.86 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.86 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.86 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS1(Zero, x0) 67.74/34.86 new_primEqInt(x0) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.86 new_rem(Pos(x0), Neg(Zero)) 67.74/34.86 new_rem(Neg(x0), Pos(Zero)) 67.74/34.86 new_primMinusNatS0(x0) 67.74/34.86 new_primEqInt2 67.74/34.86 new_esEs(Neg(Zero)) 67.74/34.86 new_esEs(Neg(Succ(x0))) 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.86 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.86 67.74/34.86 We have to consider all minimal (P,Q,R)-chains. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (214) TransformationProof (EQUIVALENT) 67.74/34.86 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.86 67.74/34.86 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero))))) 67.74/34.86 67.74/34.86 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (215) 67.74/34.86 Obligation: 67.74/34.86 Q DP problem: 67.74/34.86 The TRS P consists of the following rules: 67.74/34.86 67.74/34.86 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) 67.74/34.86 67.74/34.86 The TRS R consists of the following rules: 67.74/34.86 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.86 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.86 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.86 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.86 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.86 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.86 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.86 new_error -> error([]) 67.74/34.86 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.86 new_primEqInt2 -> True 67.74/34.86 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.86 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS1 -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.86 new_primEqInt1 -> True 67.74/34.86 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primEqInt0(vuz3260) -> False 67.74/34.86 new_primEqInt(vuz3250) -> False 67.74/34.86 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 67.74/34.86 The set Q consists of the following terms: 67.74/34.86 67.74/34.86 new_rem(Neg(x0), Neg(Zero)) 67.74/34.86 new_primEqInt1 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.86 new_primMinusNatS1 67.74/34.86 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.86 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.86 new_primMinusNatS2(Zero, Zero) 67.74/34.86 new_error 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) 67.74/34.86 new_rem(Pos(x0), Pos(Zero)) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.86 new_primEqInt0(x0) 67.74/34.86 new_esEs(Pos(Zero)) 67.74/34.86 new_esEs(Pos(Succ(x0))) 67.74/34.86 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS02(x0, x1) 67.74/34.86 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.86 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.86 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS1(Zero, x0) 67.74/34.86 new_primEqInt(x0) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.86 new_rem(Pos(x0), Neg(Zero)) 67.74/34.86 new_rem(Neg(x0), Pos(Zero)) 67.74/34.86 new_primMinusNatS0(x0) 67.74/34.86 new_primEqInt2 67.74/34.86 new_esEs(Neg(Zero)) 67.74/34.86 new_esEs(Neg(Succ(x0))) 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.86 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.86 67.74/34.86 We have to consider all minimal (P,Q,R)-chains. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (216) DependencyGraphProof (EQUIVALENT) 67.74/34.86 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (217) 67.74/34.86 Obligation: 67.74/34.86 Q DP problem: 67.74/34.86 The TRS P consists of the following rules: 67.74/34.86 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.86 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 67.74/34.86 The TRS R consists of the following rules: 67.74/34.86 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.86 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.86 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.86 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.86 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.86 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.86 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.86 new_error -> error([]) 67.74/34.86 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.86 new_primEqInt2 -> True 67.74/34.86 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.86 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS1 -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.86 new_primEqInt1 -> True 67.74/34.86 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primEqInt0(vuz3260) -> False 67.74/34.86 new_primEqInt(vuz3250) -> False 67.74/34.86 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 67.74/34.86 The set Q consists of the following terms: 67.74/34.86 67.74/34.86 new_rem(Neg(x0), Neg(Zero)) 67.74/34.86 new_primEqInt1 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.86 new_primMinusNatS1 67.74/34.86 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.86 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.86 new_primMinusNatS2(Zero, Zero) 67.74/34.86 new_error 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) 67.74/34.86 new_rem(Pos(x0), Pos(Zero)) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.86 new_primEqInt0(x0) 67.74/34.86 new_esEs(Pos(Zero)) 67.74/34.86 new_esEs(Pos(Succ(x0))) 67.74/34.86 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS02(x0, x1) 67.74/34.86 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.86 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.86 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS1(Zero, x0) 67.74/34.86 new_primEqInt(x0) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.86 new_rem(Pos(x0), Neg(Zero)) 67.74/34.86 new_rem(Neg(x0), Pos(Zero)) 67.74/34.86 new_primMinusNatS0(x0) 67.74/34.86 new_primEqInt2 67.74/34.86 new_esEs(Neg(Zero)) 67.74/34.86 new_esEs(Neg(Succ(x0))) 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.86 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.86 67.74/34.86 We have to consider all minimal (P,Q,R)-chains. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (218) TransformationProof (EQUIVALENT) 67.74/34.86 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.86 67.74/34.86 (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))),new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0)))))) 67.74/34.86 (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Zero))))) 67.74/34.86 67.74/34.86 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (219) 67.74/34.86 Obligation: 67.74/34.86 Q DP problem: 67.74/34.86 The TRS P consists of the following rules: 67.74/34.86 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.86 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) 67.74/34.86 67.74/34.86 The TRS R consists of the following rules: 67.74/34.86 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.86 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.86 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.86 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.86 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.86 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.86 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.86 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.86 new_error -> error([]) 67.74/34.86 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.86 new_primEqInt2 -> True 67.74/34.86 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.86 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.86 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.86 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.86 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primMinusNatS1 -> Zero 67.74/34.86 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.86 new_primEqInt1 -> True 67.74/34.86 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.86 new_primEqInt0(vuz3260) -> False 67.74/34.86 new_primEqInt(vuz3250) -> False 67.74/34.86 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.86 67.74/34.86 The set Q consists of the following terms: 67.74/34.86 67.74/34.86 new_rem(Neg(x0), Neg(Zero)) 67.74/34.86 new_primEqInt1 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.86 new_primMinusNatS1 67.74/34.86 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.86 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.86 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.86 new_primMinusNatS2(Zero, Zero) 67.74/34.86 new_error 67.74/34.86 new_primModNatS1(Succ(Zero), Zero) 67.74/34.86 new_rem(Pos(x0), Pos(Zero)) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.86 new_primEqInt0(x0) 67.74/34.86 new_esEs(Pos(Zero)) 67.74/34.86 new_esEs(Pos(Succ(x0))) 67.74/34.86 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS02(x0, x1) 67.74/34.86 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.86 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.86 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.86 new_primModNatS1(Zero, x0) 67.74/34.86 new_primEqInt(x0) 67.74/34.86 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.86 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.86 new_rem(Pos(x0), Neg(Zero)) 67.74/34.86 new_rem(Neg(x0), Pos(Zero)) 67.74/34.86 new_primMinusNatS0(x0) 67.74/34.86 new_primEqInt2 67.74/34.86 new_esEs(Neg(Zero)) 67.74/34.86 new_esEs(Neg(Succ(x0))) 67.74/34.86 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.86 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.86 67.74/34.86 We have to consider all minimal (P,Q,R)-chains. 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (220) TransformationProof (EQUIVALENT) 67.74/34.86 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.86 67.74/34.86 (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))),new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0)))))) 67.74/34.86 67.74/34.86 67.74/34.86 ---------------------------------------- 67.74/34.86 67.74/34.86 (221) 67.74/34.86 Obligation: 67.74/34.86 Q DP problem: 67.74/34.86 The TRS P consists of the following rules: 67.74/34.86 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.86 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.86 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.86 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 67.74/34.87 The TRS R consists of the following rules: 67.74/34.87 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.87 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.87 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.87 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.87 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.87 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.87 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.87 new_error -> error([]) 67.74/34.87 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.87 new_primEqInt2 -> True 67.74/34.87 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.87 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS1 -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.87 new_primEqInt1 -> True 67.74/34.87 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primEqInt0(vuz3260) -> False 67.74/34.87 new_primEqInt(vuz3250) -> False 67.74/34.87 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 67.74/34.87 The set Q consists of the following terms: 67.74/34.87 67.74/34.87 new_rem(Neg(x0), Neg(Zero)) 67.74/34.87 new_primEqInt1 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.87 new_primMinusNatS1 67.74/34.87 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.87 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.87 new_primMinusNatS2(Zero, Zero) 67.74/34.87 new_error 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) 67.74/34.87 new_rem(Pos(x0), Pos(Zero)) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.87 new_primEqInt0(x0) 67.74/34.87 new_esEs(Pos(Zero)) 67.74/34.87 new_esEs(Pos(Succ(x0))) 67.74/34.87 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS02(x0, x1) 67.74/34.87 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.87 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.87 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS1(Zero, x0) 67.74/34.87 new_primEqInt(x0) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.87 new_rem(Pos(x0), Neg(Zero)) 67.74/34.87 new_rem(Neg(x0), Pos(Zero)) 67.74/34.87 new_primMinusNatS0(x0) 67.74/34.87 new_primEqInt2 67.74/34.87 new_esEs(Neg(Zero)) 67.74/34.87 new_esEs(Neg(Succ(x0))) 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.87 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.87 67.74/34.87 We have to consider all minimal (P,Q,R)-chains. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (222) TransformationProof (EQUIVALENT) 67.74/34.87 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.87 67.74/34.87 (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Zero))))) 67.74/34.87 67.74/34.87 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (223) 67.74/34.87 Obligation: 67.74/34.87 Q DP problem: 67.74/34.87 The TRS P consists of the following rules: 67.74/34.87 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.87 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) 67.74/34.87 67.74/34.87 The TRS R consists of the following rules: 67.74/34.87 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.87 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.87 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.87 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.87 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.87 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.87 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.87 new_error -> error([]) 67.74/34.87 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.87 new_primEqInt2 -> True 67.74/34.87 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.87 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS1 -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.87 new_primEqInt1 -> True 67.74/34.87 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primEqInt0(vuz3260) -> False 67.74/34.87 new_primEqInt(vuz3250) -> False 67.74/34.87 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 67.74/34.87 The set Q consists of the following terms: 67.74/34.87 67.74/34.87 new_rem(Neg(x0), Neg(Zero)) 67.74/34.87 new_primEqInt1 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.87 new_primMinusNatS1 67.74/34.87 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.87 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.87 new_primMinusNatS2(Zero, Zero) 67.74/34.87 new_error 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) 67.74/34.87 new_rem(Pos(x0), Pos(Zero)) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.87 new_primEqInt0(x0) 67.74/34.87 new_esEs(Pos(Zero)) 67.74/34.87 new_esEs(Pos(Succ(x0))) 67.74/34.87 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS02(x0, x1) 67.74/34.87 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.87 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.87 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS1(Zero, x0) 67.74/34.87 new_primEqInt(x0) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.87 new_rem(Pos(x0), Neg(Zero)) 67.74/34.87 new_rem(Neg(x0), Pos(Zero)) 67.74/34.87 new_primMinusNatS0(x0) 67.74/34.87 new_primEqInt2 67.74/34.87 new_esEs(Neg(Zero)) 67.74/34.87 new_esEs(Neg(Succ(x0))) 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.87 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.87 67.74/34.87 We have to consider all minimal (P,Q,R)-chains. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (224) TransformationProof (EQUIVALENT) 67.74/34.87 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.87 67.74/34.87 (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(Zero)), Pos(Succ(Succ(Zero))))) 67.74/34.87 67.74/34.87 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (225) 67.74/34.87 Obligation: 67.74/34.87 Q DP problem: 67.74/34.87 The TRS P consists of the following rules: 67.74/34.87 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.87 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(Zero)), Pos(Succ(Succ(Zero)))) 67.74/34.87 67.74/34.87 The TRS R consists of the following rules: 67.74/34.87 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.87 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.87 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.87 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.87 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.87 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.87 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.87 new_error -> error([]) 67.74/34.87 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.87 new_primEqInt2 -> True 67.74/34.87 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.87 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS1 -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.87 new_primEqInt1 -> True 67.74/34.87 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primEqInt0(vuz3260) -> False 67.74/34.87 new_primEqInt(vuz3250) -> False 67.74/34.87 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 67.74/34.87 The set Q consists of the following terms: 67.74/34.87 67.74/34.87 new_rem(Neg(x0), Neg(Zero)) 67.74/34.87 new_primEqInt1 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.87 new_primMinusNatS1 67.74/34.87 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.87 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.87 new_primMinusNatS2(Zero, Zero) 67.74/34.87 new_error 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) 67.74/34.87 new_rem(Pos(x0), Pos(Zero)) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.87 new_primEqInt0(x0) 67.74/34.87 new_esEs(Pos(Zero)) 67.74/34.87 new_esEs(Pos(Succ(x0))) 67.74/34.87 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS02(x0, x1) 67.74/34.87 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.87 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.87 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS1(Zero, x0) 67.74/34.87 new_primEqInt(x0) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.87 new_rem(Pos(x0), Neg(Zero)) 67.74/34.87 new_rem(Neg(x0), Pos(Zero)) 67.74/34.87 new_primMinusNatS0(x0) 67.74/34.87 new_primEqInt2 67.74/34.87 new_esEs(Neg(Zero)) 67.74/34.87 new_esEs(Neg(Succ(x0))) 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.87 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.87 67.74/34.87 We have to consider all minimal (P,Q,R)-chains. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (226) DependencyGraphProof (EQUIVALENT) 67.74/34.87 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (227) 67.74/34.87 Obligation: 67.74/34.87 Q DP problem: 67.74/34.87 The TRS P consists of the following rules: 67.74/34.87 67.74/34.87 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.87 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 67.74/34.87 The TRS R consists of the following rules: 67.74/34.87 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.87 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.87 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.87 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.87 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.87 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.87 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.87 new_error -> error([]) 67.74/34.87 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.87 new_primEqInt2 -> True 67.74/34.87 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.87 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS1 -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.87 new_primEqInt1 -> True 67.74/34.87 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primEqInt0(vuz3260) -> False 67.74/34.87 new_primEqInt(vuz3250) -> False 67.74/34.87 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 67.74/34.87 The set Q consists of the following terms: 67.74/34.87 67.74/34.87 new_rem(Neg(x0), Neg(Zero)) 67.74/34.87 new_primEqInt1 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.87 new_primMinusNatS1 67.74/34.87 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.87 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.87 new_primMinusNatS2(Zero, Zero) 67.74/34.87 new_error 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) 67.74/34.87 new_rem(Pos(x0), Pos(Zero)) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.87 new_primEqInt0(x0) 67.74/34.87 new_esEs(Pos(Zero)) 67.74/34.87 new_esEs(Pos(Succ(x0))) 67.74/34.87 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS02(x0, x1) 67.74/34.87 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.87 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.87 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS1(Zero, x0) 67.74/34.87 new_primEqInt(x0) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.87 new_rem(Pos(x0), Neg(Zero)) 67.74/34.87 new_rem(Neg(x0), Pos(Zero)) 67.74/34.87 new_primMinusNatS0(x0) 67.74/34.87 new_primEqInt2 67.74/34.87 new_esEs(Neg(Zero)) 67.74/34.87 new_esEs(Neg(Succ(x0))) 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.87 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.87 67.74/34.87 We have to consider all minimal (P,Q,R)-chains. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (228) TransformationProof (EQUIVALENT) 67.74/34.87 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, x1, x0, x1))), Pos(Succ(Succ(x1))), Neg(Succ(Succ(x0)))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.87 67.74/34.87 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2)))))) 67.74/34.87 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero))))) 67.74/34.87 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Zero, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Zero, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero))))) 67.74/34.87 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(x2), Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(x2), Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2)))))) 67.74/34.87 67.74/34.87 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (229) 67.74/34.87 Obligation: 67.74/34.87 Q DP problem: 67.74/34.87 The TRS P consists of the following rules: 67.74/34.87 67.74/34.87 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.87 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Zero, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(x2), Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 67.74/34.87 The TRS R consists of the following rules: 67.74/34.87 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.87 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.87 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.87 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.87 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.87 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.87 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.87 new_error -> error([]) 67.74/34.87 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.87 new_primEqInt2 -> True 67.74/34.87 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.87 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS1 -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.87 new_primEqInt1 -> True 67.74/34.87 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primEqInt0(vuz3260) -> False 67.74/34.87 new_primEqInt(vuz3250) -> False 67.74/34.87 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 67.74/34.87 The set Q consists of the following terms: 67.74/34.87 67.74/34.87 new_rem(Neg(x0), Neg(Zero)) 67.74/34.87 new_primEqInt1 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.87 new_primMinusNatS1 67.74/34.87 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.87 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.87 new_primMinusNatS2(Zero, Zero) 67.74/34.87 new_error 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) 67.74/34.87 new_rem(Pos(x0), Pos(Zero)) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.87 new_primEqInt0(x0) 67.74/34.87 new_esEs(Pos(Zero)) 67.74/34.87 new_esEs(Pos(Succ(x0))) 67.74/34.87 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS02(x0, x1) 67.74/34.87 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.87 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.87 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS1(Zero, x0) 67.74/34.87 new_primEqInt(x0) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.87 new_rem(Pos(x0), Neg(Zero)) 67.74/34.87 new_rem(Neg(x0), Pos(Zero)) 67.74/34.87 new_primMinusNatS0(x0) 67.74/34.87 new_primEqInt2 67.74/34.87 new_esEs(Neg(Zero)) 67.74/34.87 new_esEs(Neg(Succ(x0))) 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.87 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.87 67.74/34.87 We have to consider all minimal (P,Q,R)-chains. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (230) TransformationProof (EQUIVALENT) 67.74/34.87 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.87 67.74/34.87 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Zero)), Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Zero)), Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero))))) 67.74/34.87 67.74/34.87 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (231) 67.74/34.87 Obligation: 67.74/34.87 Q DP problem: 67.74/34.87 The TRS P consists of the following rules: 67.74/34.87 67.74/34.87 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.87 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Zero, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(x2), Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Zero)), Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 67.74/34.87 The TRS R consists of the following rules: 67.74/34.87 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.87 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.87 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.87 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.87 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.87 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.87 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.87 new_error -> error([]) 67.74/34.87 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.87 new_primEqInt2 -> True 67.74/34.87 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.87 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS1 -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.87 new_primEqInt1 -> True 67.74/34.87 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primEqInt0(vuz3260) -> False 67.74/34.87 new_primEqInt(vuz3250) -> False 67.74/34.87 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 67.74/34.87 The set Q consists of the following terms: 67.74/34.87 67.74/34.87 new_rem(Neg(x0), Neg(Zero)) 67.74/34.87 new_primEqInt1 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.87 new_primMinusNatS1 67.74/34.87 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.87 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.87 new_primMinusNatS2(Zero, Zero) 67.74/34.87 new_error 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) 67.74/34.87 new_rem(Pos(x0), Pos(Zero)) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.87 new_primEqInt0(x0) 67.74/34.87 new_esEs(Pos(Zero)) 67.74/34.87 new_esEs(Pos(Succ(x0))) 67.74/34.87 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS02(x0, x1) 67.74/34.87 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.87 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.87 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS1(Zero, x0) 67.74/34.87 new_primEqInt(x0) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.87 new_rem(Pos(x0), Neg(Zero)) 67.74/34.87 new_rem(Neg(x0), Pos(Zero)) 67.74/34.87 new_primMinusNatS0(x0) 67.74/34.87 new_primEqInt2 67.74/34.87 new_esEs(Neg(Zero)) 67.74/34.87 new_esEs(Neg(Succ(x0))) 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.87 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.87 67.74/34.87 We have to consider all minimal (P,Q,R)-chains. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (232) TransformationProof (EQUIVALENT) 67.74/34.87 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Zero, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.87 67.74/34.87 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero))))) 67.74/34.87 67.74/34.87 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (233) 67.74/34.87 Obligation: 67.74/34.87 Q DP problem: 67.74/34.87 The TRS P consists of the following rules: 67.74/34.87 67.74/34.87 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.87 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(x2), Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Zero)), Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.87 67.74/34.87 The TRS R consists of the following rules: 67.74/34.87 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.87 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.87 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.87 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.87 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.87 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.87 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.87 new_error -> error([]) 67.74/34.87 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.87 new_primEqInt2 -> True 67.74/34.87 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.87 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS1 -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.87 new_primEqInt1 -> True 67.74/34.87 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primEqInt0(vuz3260) -> False 67.74/34.87 new_primEqInt(vuz3250) -> False 67.74/34.87 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 67.74/34.87 The set Q consists of the following terms: 67.74/34.87 67.74/34.87 new_rem(Neg(x0), Neg(Zero)) 67.74/34.87 new_primEqInt1 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.87 new_primMinusNatS1 67.74/34.87 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.87 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.87 new_primMinusNatS2(Zero, Zero) 67.74/34.87 new_error 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) 67.74/34.87 new_rem(Pos(x0), Pos(Zero)) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.87 new_primEqInt0(x0) 67.74/34.87 new_esEs(Pos(Zero)) 67.74/34.87 new_esEs(Pos(Succ(x0))) 67.74/34.87 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS02(x0, x1) 67.74/34.87 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.87 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.87 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS1(Zero, x0) 67.74/34.87 new_primEqInt(x0) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.87 new_rem(Pos(x0), Neg(Zero)) 67.74/34.87 new_rem(Neg(x0), Pos(Zero)) 67.74/34.87 new_primMinusNatS0(x0) 67.74/34.87 new_primEqInt2 67.74/34.87 new_esEs(Neg(Zero)) 67.74/34.87 new_esEs(Neg(Succ(x0))) 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.87 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.87 67.74/34.87 We have to consider all minimal (P,Q,R)-chains. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (234) TransformationProof (EQUIVALENT) 67.74/34.87 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(x2), Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.87 67.74/34.87 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2)))))) 67.74/34.87 67.74/34.87 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (235) 67.74/34.87 Obligation: 67.74/34.87 Q DP problem: 67.74/34.87 The TRS P consists of the following rules: 67.74/34.87 67.74/34.87 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.87 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Zero)), Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 67.74/34.87 The TRS R consists of the following rules: 67.74/34.87 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.87 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.87 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.87 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.87 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.87 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.87 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.87 new_error -> error([]) 67.74/34.87 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.87 new_primEqInt2 -> True 67.74/34.87 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.87 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS1 -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.87 new_primEqInt1 -> True 67.74/34.87 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primEqInt0(vuz3260) -> False 67.74/34.87 new_primEqInt(vuz3250) -> False 67.74/34.87 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 67.74/34.87 The set Q consists of the following terms: 67.74/34.87 67.74/34.87 new_rem(Neg(x0), Neg(Zero)) 67.74/34.87 new_primEqInt1 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.87 new_primMinusNatS1 67.74/34.87 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.87 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.87 new_primMinusNatS2(Zero, Zero) 67.74/34.87 new_error 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) 67.74/34.87 new_rem(Pos(x0), Pos(Zero)) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.87 new_primEqInt0(x0) 67.74/34.87 new_esEs(Pos(Zero)) 67.74/34.87 new_esEs(Pos(Succ(x0))) 67.74/34.87 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS02(x0, x1) 67.74/34.87 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.87 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.87 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS1(Zero, x0) 67.74/34.87 new_primEqInt(x0) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.87 new_rem(Pos(x0), Neg(Zero)) 67.74/34.87 new_rem(Neg(x0), Pos(Zero)) 67.74/34.87 new_primMinusNatS0(x0) 67.74/34.87 new_primEqInt2 67.74/34.87 new_esEs(Neg(Zero)) 67.74/34.87 new_esEs(Neg(Succ(x0))) 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.87 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.87 67.74/34.87 We have to consider all minimal (P,Q,R)-chains. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (236) TransformationProof (EQUIVALENT) 67.74/34.87 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Zero)), Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.87 67.74/34.87 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero))))) 67.74/34.87 67.74/34.87 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (237) 67.74/34.87 Obligation: 67.74/34.87 Q DP problem: 67.74/34.87 The TRS P consists of the following rules: 67.74/34.87 67.74/34.87 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.87 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 67.74/34.87 The TRS R consists of the following rules: 67.74/34.87 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.87 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.87 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.87 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.87 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.87 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.87 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.87 new_error -> error([]) 67.74/34.87 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.87 new_primEqInt2 -> True 67.74/34.87 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.87 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS1 -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.87 new_primEqInt1 -> True 67.74/34.87 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primEqInt0(vuz3260) -> False 67.74/34.87 new_primEqInt(vuz3250) -> False 67.74/34.87 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 67.74/34.87 The set Q consists of the following terms: 67.74/34.87 67.74/34.87 new_rem(Neg(x0), Neg(Zero)) 67.74/34.87 new_primEqInt1 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.87 new_primMinusNatS1 67.74/34.87 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.87 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.87 new_primMinusNatS2(Zero, Zero) 67.74/34.87 new_error 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) 67.74/34.87 new_rem(Pos(x0), Pos(Zero)) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.87 new_primEqInt0(x0) 67.74/34.87 new_esEs(Pos(Zero)) 67.74/34.87 new_esEs(Pos(Succ(x0))) 67.74/34.87 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS02(x0, x1) 67.74/34.87 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.87 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.87 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS1(Zero, x0) 67.74/34.87 new_primEqInt(x0) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.87 new_rem(Pos(x0), Neg(Zero)) 67.74/34.87 new_rem(Neg(x0), Pos(Zero)) 67.74/34.87 new_primMinusNatS0(x0) 67.74/34.87 new_primEqInt2 67.74/34.87 new_esEs(Neg(Zero)) 67.74/34.87 new_esEs(Neg(Succ(x0))) 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.87 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.87 67.74/34.87 We have to consider all minimal (P,Q,R)-chains. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (238) TransformationProof (EQUIVALENT) 67.74/34.87 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.87 67.74/34.87 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero))))) 67.74/34.87 67.74/34.87 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (239) 67.74/34.87 Obligation: 67.74/34.87 Q DP problem: 67.74/34.87 The TRS P consists of the following rules: 67.74/34.87 67.74/34.87 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.87 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.87 67.74/34.87 The TRS R consists of the following rules: 67.74/34.87 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.87 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.87 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.87 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.87 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.87 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.87 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.87 new_error -> error([]) 67.74/34.87 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.87 new_primEqInt2 -> True 67.74/34.87 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.87 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS1 -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.87 new_primEqInt1 -> True 67.74/34.87 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primEqInt0(vuz3260) -> False 67.74/34.87 new_primEqInt(vuz3250) -> False 67.74/34.87 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 67.74/34.87 The set Q consists of the following terms: 67.74/34.87 67.74/34.87 new_rem(Neg(x0), Neg(Zero)) 67.74/34.87 new_primEqInt1 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.87 new_primMinusNatS1 67.74/34.87 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.87 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.87 new_primMinusNatS2(Zero, Zero) 67.74/34.87 new_error 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) 67.74/34.87 new_rem(Pos(x0), Pos(Zero)) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.87 new_primEqInt0(x0) 67.74/34.87 new_esEs(Pos(Zero)) 67.74/34.87 new_esEs(Pos(Succ(x0))) 67.74/34.87 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS02(x0, x1) 67.74/34.87 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.87 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.87 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS1(Zero, x0) 67.74/34.87 new_primEqInt(x0) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.87 new_rem(Pos(x0), Neg(Zero)) 67.74/34.87 new_rem(Neg(x0), Pos(Zero)) 67.74/34.87 new_primMinusNatS0(x0) 67.74/34.87 new_primEqInt2 67.74/34.87 new_esEs(Neg(Zero)) 67.74/34.87 new_esEs(Neg(Succ(x0))) 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.87 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.87 67.74/34.87 We have to consider all minimal (P,Q,R)-chains. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (240) TransformationProof (EQUIVALENT) 67.74/34.87 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.87 67.74/34.87 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2)))))) 67.74/34.87 67.74/34.87 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (241) 67.74/34.87 Obligation: 67.74/34.87 Q DP problem: 67.74/34.87 The TRS P consists of the following rules: 67.74/34.87 67.74/34.87 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.87 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 67.74/34.87 The TRS R consists of the following rules: 67.74/34.87 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.87 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.87 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.87 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.87 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.87 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.87 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.87 new_error -> error([]) 67.74/34.87 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.87 new_primEqInt2 -> True 67.74/34.87 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.87 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS1 -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.87 new_primEqInt1 -> True 67.74/34.87 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primEqInt0(vuz3260) -> False 67.74/34.87 new_primEqInt(vuz3250) -> False 67.74/34.87 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 67.74/34.87 The set Q consists of the following terms: 67.74/34.87 67.74/34.87 new_rem(Neg(x0), Neg(Zero)) 67.74/34.87 new_primEqInt1 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.87 new_primMinusNatS1 67.74/34.87 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.87 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.87 new_primMinusNatS2(Zero, Zero) 67.74/34.87 new_error 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) 67.74/34.87 new_rem(Pos(x0), Pos(Zero)) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.87 new_primEqInt0(x0) 67.74/34.87 new_esEs(Pos(Zero)) 67.74/34.87 new_esEs(Pos(Succ(x0))) 67.74/34.87 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS02(x0, x1) 67.74/34.87 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.87 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.87 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS1(Zero, x0) 67.74/34.87 new_primEqInt(x0) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.87 new_rem(Pos(x0), Neg(Zero)) 67.74/34.87 new_rem(Neg(x0), Pos(Zero)) 67.74/34.87 new_primMinusNatS0(x0) 67.74/34.87 new_primEqInt2 67.74/34.87 new_esEs(Neg(Zero)) 67.74/34.87 new_esEs(Neg(Succ(x0))) 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.87 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.87 67.74/34.87 We have to consider all minimal (P,Q,R)-chains. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (242) TransformationProof (EQUIVALENT) 67.74/34.87 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.87 67.74/34.87 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero))))) 67.74/34.87 67.74/34.87 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (243) 67.74/34.87 Obligation: 67.74/34.87 Q DP problem: 67.74/34.87 The TRS P consists of the following rules: 67.74/34.87 67.74/34.87 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.87 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.87 67.74/34.87 The TRS R consists of the following rules: 67.74/34.87 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.87 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.87 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.87 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.87 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.87 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.87 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.87 new_error -> error([]) 67.74/34.87 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.87 new_primEqInt2 -> True 67.74/34.87 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.87 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS1 -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.87 new_primEqInt1 -> True 67.74/34.87 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primEqInt0(vuz3260) -> False 67.74/34.87 new_primEqInt(vuz3250) -> False 67.74/34.87 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 67.74/34.87 The set Q consists of the following terms: 67.74/34.87 67.74/34.87 new_rem(Neg(x0), Neg(Zero)) 67.74/34.87 new_primEqInt1 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.87 new_primMinusNatS1 67.74/34.87 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.87 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.87 new_primMinusNatS2(Zero, Zero) 67.74/34.87 new_error 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) 67.74/34.87 new_rem(Pos(x0), Pos(Zero)) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.87 new_primEqInt0(x0) 67.74/34.87 new_esEs(Pos(Zero)) 67.74/34.87 new_esEs(Pos(Succ(x0))) 67.74/34.87 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS02(x0, x1) 67.74/34.87 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.87 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.87 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS1(Zero, x0) 67.74/34.87 new_primEqInt(x0) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.87 new_rem(Pos(x0), Neg(Zero)) 67.74/34.87 new_rem(Neg(x0), Pos(Zero)) 67.74/34.87 new_primMinusNatS0(x0) 67.74/34.87 new_primEqInt2 67.74/34.87 new_esEs(Neg(Zero)) 67.74/34.87 new_esEs(Neg(Succ(x0))) 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.87 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.87 67.74/34.87 We have to consider all minimal (P,Q,R)-chains. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (244) TransformationProof (EQUIVALENT) 67.74/34.87 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.87 67.74/34.87 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2)))))) 67.74/34.87 67.74/34.87 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (245) 67.74/34.87 Obligation: 67.74/34.87 Q DP problem: 67.74/34.87 The TRS P consists of the following rules: 67.74/34.87 67.74/34.87 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.87 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 67.74/34.87 The TRS R consists of the following rules: 67.74/34.87 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.87 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.87 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.87 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.87 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.87 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.87 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.87 new_error -> error([]) 67.74/34.87 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.87 new_primEqInt2 -> True 67.74/34.87 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.87 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS1 -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.87 new_primEqInt1 -> True 67.74/34.87 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primEqInt0(vuz3260) -> False 67.74/34.87 new_primEqInt(vuz3250) -> False 67.74/34.87 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 67.74/34.87 The set Q consists of the following terms: 67.74/34.87 67.74/34.87 new_rem(Neg(x0), Neg(Zero)) 67.74/34.87 new_primEqInt1 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.87 new_primMinusNatS1 67.74/34.87 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.87 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.87 new_primMinusNatS2(Zero, Zero) 67.74/34.87 new_error 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) 67.74/34.87 new_rem(Pos(x0), Pos(Zero)) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.87 new_primEqInt0(x0) 67.74/34.87 new_esEs(Pos(Zero)) 67.74/34.87 new_esEs(Pos(Succ(x0))) 67.74/34.87 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS02(x0, x1) 67.74/34.87 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.87 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.87 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS1(Zero, x0) 67.74/34.87 new_primEqInt(x0) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.87 new_rem(Pos(x0), Neg(Zero)) 67.74/34.87 new_rem(Neg(x0), Pos(Zero)) 67.74/34.87 new_primMinusNatS0(x0) 67.74/34.87 new_primEqInt2 67.74/34.87 new_esEs(Neg(Zero)) 67.74/34.87 new_esEs(Neg(Succ(x0))) 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.87 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.87 67.74/34.87 We have to consider all minimal (P,Q,R)-chains. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (246) TransformationProof (EQUIVALENT) 67.74/34.87 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.87 67.74/34.87 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero))))) 67.74/34.87 67.74/34.87 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (247) 67.74/34.87 Obligation: 67.74/34.87 Q DP problem: 67.74/34.87 The TRS P consists of the following rules: 67.74/34.87 67.74/34.87 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.87 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) 67.74/34.87 67.74/34.87 The TRS R consists of the following rules: 67.74/34.87 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.87 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.87 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.87 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.87 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.87 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.87 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.87 new_error -> error([]) 67.74/34.87 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.87 new_primEqInt2 -> True 67.74/34.87 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.87 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS1 -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.87 new_primEqInt1 -> True 67.74/34.87 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primEqInt0(vuz3260) -> False 67.74/34.87 new_primEqInt(vuz3250) -> False 67.74/34.87 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 67.74/34.87 The set Q consists of the following terms: 67.74/34.87 67.74/34.87 new_rem(Neg(x0), Neg(Zero)) 67.74/34.87 new_primEqInt1 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.87 new_primMinusNatS1 67.74/34.87 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.87 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.87 new_primMinusNatS2(Zero, Zero) 67.74/34.87 new_error 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) 67.74/34.87 new_rem(Pos(x0), Pos(Zero)) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.87 new_primEqInt0(x0) 67.74/34.87 new_esEs(Pos(Zero)) 67.74/34.87 new_esEs(Pos(Succ(x0))) 67.74/34.87 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS02(x0, x1) 67.74/34.87 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.87 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.87 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS1(Zero, x0) 67.74/34.87 new_primEqInt(x0) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.87 new_rem(Pos(x0), Neg(Zero)) 67.74/34.87 new_rem(Neg(x0), Pos(Zero)) 67.74/34.87 new_primMinusNatS0(x0) 67.74/34.87 new_primEqInt2 67.74/34.87 new_esEs(Neg(Zero)) 67.74/34.87 new_esEs(Neg(Succ(x0))) 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.87 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.87 67.74/34.87 We have to consider all minimal (P,Q,R)-chains. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (248) DependencyGraphProof (EQUIVALENT) 67.74/34.87 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (249) 67.74/34.87 Obligation: 67.74/34.87 Q DP problem: 67.74/34.87 The TRS P consists of the following rules: 67.74/34.87 67.74/34.87 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 67.74/34.87 The TRS R consists of the following rules: 67.74/34.87 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.87 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.87 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.87 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.87 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.87 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.87 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.87 new_error -> error([]) 67.74/34.87 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.87 new_primEqInt2 -> True 67.74/34.87 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.87 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS1 -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.87 new_primEqInt1 -> True 67.74/34.87 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primEqInt0(vuz3260) -> False 67.74/34.87 new_primEqInt(vuz3250) -> False 67.74/34.87 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 67.74/34.87 The set Q consists of the following terms: 67.74/34.87 67.74/34.87 new_rem(Neg(x0), Neg(Zero)) 67.74/34.87 new_primEqInt1 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.87 new_primMinusNatS1 67.74/34.87 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.87 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.87 new_primMinusNatS2(Zero, Zero) 67.74/34.87 new_error 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) 67.74/34.87 new_rem(Pos(x0), Pos(Zero)) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.87 new_primEqInt0(x0) 67.74/34.87 new_esEs(Pos(Zero)) 67.74/34.87 new_esEs(Pos(Succ(x0))) 67.74/34.87 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS02(x0, x1) 67.74/34.87 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.87 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.87 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS1(Zero, x0) 67.74/34.87 new_primEqInt(x0) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.87 new_rem(Pos(x0), Neg(Zero)) 67.74/34.87 new_rem(Neg(x0), Pos(Zero)) 67.74/34.87 new_primMinusNatS0(x0) 67.74/34.87 new_primEqInt2 67.74/34.87 new_esEs(Neg(Zero)) 67.74/34.87 new_esEs(Neg(Succ(x0))) 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.87 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.87 67.74/34.87 We have to consider all minimal (P,Q,R)-chains. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (250) TransformationProof (EQUIVALENT) 67.74/34.87 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.87 67.74/34.87 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0)))))) 67.74/34.87 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Zero))))) 67.74/34.87 67.74/34.87 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (251) 67.74/34.87 Obligation: 67.74/34.87 Q DP problem: 67.74/34.87 The TRS P consists of the following rules: 67.74/34.87 67.74/34.87 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) 67.74/34.87 67.74/34.87 The TRS R consists of the following rules: 67.74/34.87 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.87 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.87 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.87 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.87 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.87 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.87 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.87 new_error -> error([]) 67.74/34.87 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.87 new_primEqInt2 -> True 67.74/34.87 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.87 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS1 -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.87 new_primEqInt1 -> True 67.74/34.87 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primEqInt0(vuz3260) -> False 67.74/34.87 new_primEqInt(vuz3250) -> False 67.74/34.87 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 67.74/34.87 The set Q consists of the following terms: 67.74/34.87 67.74/34.87 new_rem(Neg(x0), Neg(Zero)) 67.74/34.87 new_primEqInt1 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.87 new_primMinusNatS1 67.74/34.87 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.87 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.87 new_primMinusNatS2(Zero, Zero) 67.74/34.87 new_error 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) 67.74/34.87 new_rem(Pos(x0), Pos(Zero)) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.87 new_primEqInt0(x0) 67.74/34.87 new_esEs(Pos(Zero)) 67.74/34.87 new_esEs(Pos(Succ(x0))) 67.74/34.87 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS02(x0, x1) 67.74/34.87 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.87 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.87 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS1(Zero, x0) 67.74/34.87 new_primEqInt(x0) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.87 new_rem(Pos(x0), Neg(Zero)) 67.74/34.87 new_rem(Neg(x0), Pos(Zero)) 67.74/34.87 new_primMinusNatS0(x0) 67.74/34.87 new_primEqInt2 67.74/34.87 new_esEs(Neg(Zero)) 67.74/34.87 new_esEs(Neg(Succ(x0))) 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.87 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.87 67.74/34.87 We have to consider all minimal (P,Q,R)-chains. 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (252) TransformationProof (EQUIVALENT) 67.74/34.87 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.87 67.74/34.87 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0)))))) 67.74/34.87 67.74/34.87 67.74/34.87 ---------------------------------------- 67.74/34.87 67.74/34.87 (253) 67.74/34.87 Obligation: 67.74/34.87 Q DP problem: 67.74/34.87 The TRS P consists of the following rules: 67.74/34.87 67.74/34.87 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) 67.74/34.87 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.87 67.74/34.87 The TRS R consists of the following rules: 67.74/34.87 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.87 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.87 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.87 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.87 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.87 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.87 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.87 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.87 new_error -> error([]) 67.74/34.87 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.87 new_primEqInt2 -> True 67.74/34.87 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.87 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.87 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.87 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.87 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primMinusNatS1 -> Zero 67.74/34.87 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.87 new_primEqInt1 -> True 67.74/34.87 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.87 new_primEqInt0(vuz3260) -> False 67.74/34.87 new_primEqInt(vuz3250) -> False 67.74/34.87 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.87 67.74/34.87 The set Q consists of the following terms: 67.74/34.87 67.74/34.87 new_rem(Neg(x0), Neg(Zero)) 67.74/34.87 new_primEqInt1 67.74/34.87 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.87 new_primMinusNatS1 67.74/34.87 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.87 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.87 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.87 new_primMinusNatS2(Zero, Zero) 67.74/34.87 new_error 67.74/34.87 new_primModNatS1(Succ(Zero), Zero) 67.74/34.87 new_rem(Pos(x0), Pos(Zero)) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.87 new_primEqInt0(x0) 67.74/34.87 new_esEs(Pos(Zero)) 67.74/34.87 new_esEs(Pos(Succ(x0))) 67.74/34.87 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS02(x0, x1) 67.74/34.87 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.87 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.87 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.87 new_primModNatS1(Zero, x0) 67.74/34.87 new_primEqInt(x0) 67.74/34.87 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.87 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.88 new_rem(Pos(x0), Neg(Zero)) 67.74/34.88 new_rem(Neg(x0), Pos(Zero)) 67.74/34.88 new_primMinusNatS0(x0) 67.74/34.88 new_primEqInt2 67.74/34.88 new_esEs(Neg(Zero)) 67.74/34.88 new_esEs(Neg(Succ(x0))) 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.88 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.88 67.74/34.88 We have to consider all minimal (P,Q,R)-chains. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (254) TransformationProof (EQUIVALENT) 67.74/34.88 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.88 67.74/34.88 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Zero))))) 67.74/34.88 67.74/34.88 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (255) 67.74/34.88 Obligation: 67.74/34.88 Q DP problem: 67.74/34.88 The TRS P consists of the following rules: 67.74/34.88 67.74/34.88 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) 67.74/34.88 67.74/34.88 The TRS R consists of the following rules: 67.74/34.88 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.88 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.88 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.88 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.88 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.88 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.88 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.88 new_error -> error([]) 67.74/34.88 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.88 new_primEqInt2 -> True 67.74/34.88 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.88 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS1 -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.88 new_primEqInt1 -> True 67.74/34.88 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primEqInt0(vuz3260) -> False 67.74/34.88 new_primEqInt(vuz3250) -> False 67.74/34.88 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 67.74/34.88 The set Q consists of the following terms: 67.74/34.88 67.74/34.88 new_rem(Neg(x0), Neg(Zero)) 67.74/34.88 new_primEqInt1 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.88 new_primMinusNatS1 67.74/34.88 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.88 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.88 new_primMinusNatS2(Zero, Zero) 67.74/34.88 new_error 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) 67.74/34.88 new_rem(Pos(x0), Pos(Zero)) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.88 new_primEqInt0(x0) 67.74/34.88 new_esEs(Pos(Zero)) 67.74/34.88 new_esEs(Pos(Succ(x0))) 67.74/34.88 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS02(x0, x1) 67.74/34.88 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.88 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.88 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS1(Zero, x0) 67.74/34.88 new_primEqInt(x0) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.88 new_rem(Pos(x0), Neg(Zero)) 67.74/34.88 new_rem(Neg(x0), Pos(Zero)) 67.74/34.88 new_primMinusNatS0(x0) 67.74/34.88 new_primEqInt2 67.74/34.88 new_esEs(Neg(Zero)) 67.74/34.88 new_esEs(Neg(Succ(x0))) 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.88 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.88 67.74/34.88 We have to consider all minimal (P,Q,R)-chains. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (256) TransformationProof (EQUIVALENT) 67.74/34.88 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.88 67.74/34.88 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(Zero)), Neg(Succ(Succ(Zero))))) 67.74/34.88 67.74/34.88 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (257) 67.74/34.88 Obligation: 67.74/34.88 Q DP problem: 67.74/34.88 The TRS P consists of the following rules: 67.74/34.88 67.74/34.88 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(Zero)), Neg(Succ(Succ(Zero)))) 67.74/34.88 67.74/34.88 The TRS R consists of the following rules: 67.74/34.88 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.88 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.88 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.88 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.88 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.88 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.88 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.88 new_error -> error([]) 67.74/34.88 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.88 new_primEqInt2 -> True 67.74/34.88 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.88 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS1 -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.88 new_primEqInt1 -> True 67.74/34.88 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primEqInt0(vuz3260) -> False 67.74/34.88 new_primEqInt(vuz3250) -> False 67.74/34.88 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 67.74/34.88 The set Q consists of the following terms: 67.74/34.88 67.74/34.88 new_rem(Neg(x0), Neg(Zero)) 67.74/34.88 new_primEqInt1 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.88 new_primMinusNatS1 67.74/34.88 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.88 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.88 new_primMinusNatS2(Zero, Zero) 67.74/34.88 new_error 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) 67.74/34.88 new_rem(Pos(x0), Pos(Zero)) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.88 new_primEqInt0(x0) 67.74/34.88 new_esEs(Pos(Zero)) 67.74/34.88 new_esEs(Pos(Succ(x0))) 67.74/34.88 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS02(x0, x1) 67.74/34.88 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.88 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.88 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS1(Zero, x0) 67.74/34.88 new_primEqInt(x0) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.88 new_rem(Pos(x0), Neg(Zero)) 67.74/34.88 new_rem(Neg(x0), Pos(Zero)) 67.74/34.88 new_primMinusNatS0(x0) 67.74/34.88 new_primEqInt2 67.74/34.88 new_esEs(Neg(Zero)) 67.74/34.88 new_esEs(Neg(Succ(x0))) 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.88 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.88 67.74/34.88 We have to consider all minimal (P,Q,R)-chains. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (258) DependencyGraphProof (EQUIVALENT) 67.74/34.88 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (259) 67.74/34.88 Obligation: 67.74/34.88 Q DP problem: 67.74/34.88 The TRS P consists of the following rules: 67.74/34.88 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.88 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 67.74/34.88 The TRS R consists of the following rules: 67.74/34.88 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.88 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.88 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.88 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.88 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.88 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.88 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.88 new_error -> error([]) 67.74/34.88 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.88 new_primEqInt2 -> True 67.74/34.88 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.88 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS1 -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.88 new_primEqInt1 -> True 67.74/34.88 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primEqInt0(vuz3260) -> False 67.74/34.88 new_primEqInt(vuz3250) -> False 67.74/34.88 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 67.74/34.88 The set Q consists of the following terms: 67.74/34.88 67.74/34.88 new_rem(Neg(x0), Neg(Zero)) 67.74/34.88 new_primEqInt1 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.88 new_primMinusNatS1 67.74/34.88 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.88 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.88 new_primMinusNatS2(Zero, Zero) 67.74/34.88 new_error 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) 67.74/34.88 new_rem(Pos(x0), Pos(Zero)) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.88 new_primEqInt0(x0) 67.74/34.88 new_esEs(Pos(Zero)) 67.74/34.88 new_esEs(Pos(Succ(x0))) 67.74/34.88 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS02(x0, x1) 67.74/34.88 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.88 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.88 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS1(Zero, x0) 67.74/34.88 new_primEqInt(x0) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.88 new_rem(Pos(x0), Neg(Zero)) 67.74/34.88 new_rem(Neg(x0), Pos(Zero)) 67.74/34.88 new_primMinusNatS0(x0) 67.74/34.88 new_primEqInt2 67.74/34.88 new_esEs(Neg(Zero)) 67.74/34.88 new_esEs(Neg(Succ(x0))) 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.88 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.88 67.74/34.88 We have to consider all minimal (P,Q,R)-chains. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (260) TransformationProof (EQUIVALENT) 67.74/34.88 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.88 67.74/34.88 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2))))))) 67.74/34.88 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero)))))) 67.74/34.88 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Zero), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Zero), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))))) 67.74/34.88 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2))))))) 67.74/34.88 67.74/34.88 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (261) 67.74/34.88 Obligation: 67.74/34.88 Q DP problem: 67.74/34.88 The TRS P consists of the following rules: 67.74/34.88 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.88 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Zero), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 67.74/34.88 The TRS R consists of the following rules: 67.74/34.88 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.88 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.88 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.88 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.88 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.88 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.88 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.88 new_error -> error([]) 67.74/34.88 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.88 new_primEqInt2 -> True 67.74/34.88 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.88 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS1 -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.88 new_primEqInt1 -> True 67.74/34.88 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primEqInt0(vuz3260) -> False 67.74/34.88 new_primEqInt(vuz3250) -> False 67.74/34.88 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 67.74/34.88 The set Q consists of the following terms: 67.74/34.88 67.74/34.88 new_rem(Neg(x0), Neg(Zero)) 67.74/34.88 new_primEqInt1 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.88 new_primMinusNatS1 67.74/34.88 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.88 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.88 new_primMinusNatS2(Zero, Zero) 67.74/34.88 new_error 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) 67.74/34.88 new_rem(Pos(x0), Pos(Zero)) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.88 new_primEqInt0(x0) 67.74/34.88 new_esEs(Pos(Zero)) 67.74/34.88 new_esEs(Pos(Succ(x0))) 67.74/34.88 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS02(x0, x1) 67.74/34.88 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.88 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.88 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS1(Zero, x0) 67.74/34.88 new_primEqInt(x0) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.88 new_rem(Pos(x0), Neg(Zero)) 67.74/34.88 new_rem(Neg(x0), Pos(Zero)) 67.74/34.88 new_primMinusNatS0(x0) 67.74/34.88 new_primEqInt2 67.74/34.88 new_esEs(Neg(Zero)) 67.74/34.88 new_esEs(Neg(Succ(x0))) 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.88 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.88 67.74/34.88 We have to consider all minimal (P,Q,R)-chains. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (262) TransformationProof (EQUIVALENT) 67.74/34.88 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.88 67.74/34.88 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero)))))) 67.74/34.88 67.74/34.88 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (263) 67.74/34.88 Obligation: 67.74/34.88 Q DP problem: 67.74/34.88 The TRS P consists of the following rules: 67.74/34.88 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.88 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Zero), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 67.74/34.88 The TRS R consists of the following rules: 67.74/34.88 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.88 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.88 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.88 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.88 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.88 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.88 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.88 new_error -> error([]) 67.74/34.88 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.88 new_primEqInt2 -> True 67.74/34.88 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.88 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS1 -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.88 new_primEqInt1 -> True 67.74/34.88 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primEqInt0(vuz3260) -> False 67.74/34.88 new_primEqInt(vuz3250) -> False 67.74/34.88 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 67.74/34.88 The set Q consists of the following terms: 67.74/34.88 67.74/34.88 new_rem(Neg(x0), Neg(Zero)) 67.74/34.88 new_primEqInt1 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.88 new_primMinusNatS1 67.74/34.88 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.88 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.88 new_primMinusNatS2(Zero, Zero) 67.74/34.88 new_error 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) 67.74/34.88 new_rem(Pos(x0), Pos(Zero)) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.88 new_primEqInt0(x0) 67.74/34.88 new_esEs(Pos(Zero)) 67.74/34.88 new_esEs(Pos(Succ(x0))) 67.74/34.88 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS02(x0, x1) 67.74/34.88 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.88 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.88 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS1(Zero, x0) 67.74/34.88 new_primEqInt(x0) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.88 new_rem(Pos(x0), Neg(Zero)) 67.74/34.88 new_rem(Neg(x0), Pos(Zero)) 67.74/34.88 new_primMinusNatS0(x0) 67.74/34.88 new_primEqInt2 67.74/34.88 new_esEs(Neg(Zero)) 67.74/34.88 new_esEs(Neg(Succ(x0))) 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.88 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.88 67.74/34.88 We have to consider all minimal (P,Q,R)-chains. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (264) TransformationProof (EQUIVALENT) 67.74/34.88 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Zero), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.88 67.74/34.88 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))))) 67.74/34.88 67.74/34.88 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (265) 67.74/34.88 Obligation: 67.74/34.88 Q DP problem: 67.74/34.88 The TRS P consists of the following rules: 67.74/34.88 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.88 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 67.74/34.88 The TRS R consists of the following rules: 67.74/34.88 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.88 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.88 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.88 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.88 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.88 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.88 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.88 new_error -> error([]) 67.74/34.88 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.88 new_primEqInt2 -> True 67.74/34.88 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.88 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS1 -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.88 new_primEqInt1 -> True 67.74/34.88 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primEqInt0(vuz3260) -> False 67.74/34.88 new_primEqInt(vuz3250) -> False 67.74/34.88 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 67.74/34.88 The set Q consists of the following terms: 67.74/34.88 67.74/34.88 new_rem(Neg(x0), Neg(Zero)) 67.74/34.88 new_primEqInt1 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.88 new_primMinusNatS1 67.74/34.88 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.88 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.88 new_primMinusNatS2(Zero, Zero) 67.74/34.88 new_error 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) 67.74/34.88 new_rem(Pos(x0), Pos(Zero)) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.88 new_primEqInt0(x0) 67.74/34.88 new_esEs(Pos(Zero)) 67.74/34.88 new_esEs(Pos(Succ(x0))) 67.74/34.88 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS02(x0, x1) 67.74/34.88 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.88 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.88 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS1(Zero, x0) 67.74/34.88 new_primEqInt(x0) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.88 new_rem(Pos(x0), Neg(Zero)) 67.74/34.88 new_rem(Neg(x0), Pos(Zero)) 67.74/34.88 new_primMinusNatS0(x0) 67.74/34.88 new_primEqInt2 67.74/34.88 new_esEs(Neg(Zero)) 67.74/34.88 new_esEs(Neg(Succ(x0))) 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.88 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.88 67.74/34.88 We have to consider all minimal (P,Q,R)-chains. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (266) TransformationProof (EQUIVALENT) 67.74/34.88 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.88 67.74/34.88 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2))))))) 67.74/34.88 67.74/34.88 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (267) 67.74/34.88 Obligation: 67.74/34.88 Q DP problem: 67.74/34.88 The TRS P consists of the following rules: 67.74/34.88 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.88 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 67.74/34.88 The TRS R consists of the following rules: 67.74/34.88 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.88 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.88 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.88 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.88 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.88 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.88 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.88 new_error -> error([]) 67.74/34.88 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.88 new_primEqInt2 -> True 67.74/34.88 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.88 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS1 -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.88 new_primEqInt1 -> True 67.74/34.88 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primEqInt0(vuz3260) -> False 67.74/34.88 new_primEqInt(vuz3250) -> False 67.74/34.88 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 67.74/34.88 The set Q consists of the following terms: 67.74/34.88 67.74/34.88 new_rem(Neg(x0), Neg(Zero)) 67.74/34.88 new_primEqInt1 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.88 new_primMinusNatS1 67.74/34.88 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.88 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.88 new_primMinusNatS2(Zero, Zero) 67.74/34.88 new_error 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) 67.74/34.88 new_rem(Pos(x0), Pos(Zero)) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.88 new_primEqInt0(x0) 67.74/34.88 new_esEs(Pos(Zero)) 67.74/34.88 new_esEs(Pos(Succ(x0))) 67.74/34.88 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS02(x0, x1) 67.74/34.88 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.88 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.88 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS1(Zero, x0) 67.74/34.88 new_primEqInt(x0) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.88 new_rem(Pos(x0), Neg(Zero)) 67.74/34.88 new_rem(Neg(x0), Pos(Zero)) 67.74/34.88 new_primMinusNatS0(x0) 67.74/34.88 new_primEqInt2 67.74/34.88 new_esEs(Neg(Zero)) 67.74/34.88 new_esEs(Neg(Succ(x0))) 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.88 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.88 67.74/34.88 We have to consider all minimal (P,Q,R)-chains. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (268) TransformationProof (EQUIVALENT) 67.74/34.88 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.88 67.74/34.88 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero)))))) 67.74/34.88 67.74/34.88 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (269) 67.74/34.88 Obligation: 67.74/34.88 Q DP problem: 67.74/34.88 The TRS P consists of the following rules: 67.74/34.88 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.88 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 67.74/34.88 The TRS R consists of the following rules: 67.74/34.88 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.88 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.88 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.88 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.88 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.88 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.88 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.88 new_error -> error([]) 67.74/34.88 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.88 new_primEqInt2 -> True 67.74/34.88 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.88 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS1 -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.88 new_primEqInt1 -> True 67.74/34.88 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primEqInt0(vuz3260) -> False 67.74/34.88 new_primEqInt(vuz3250) -> False 67.74/34.88 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 67.74/34.88 The set Q consists of the following terms: 67.74/34.88 67.74/34.88 new_rem(Neg(x0), Neg(Zero)) 67.74/34.88 new_primEqInt1 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.88 new_primMinusNatS1 67.74/34.88 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.88 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.88 new_primMinusNatS2(Zero, Zero) 67.74/34.88 new_error 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) 67.74/34.88 new_rem(Pos(x0), Pos(Zero)) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.88 new_primEqInt0(x0) 67.74/34.88 new_esEs(Pos(Zero)) 67.74/34.88 new_esEs(Pos(Succ(x0))) 67.74/34.88 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS02(x0, x1) 67.74/34.88 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.88 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.88 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS1(Zero, x0) 67.74/34.88 new_primEqInt(x0) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.88 new_rem(Pos(x0), Neg(Zero)) 67.74/34.88 new_rem(Neg(x0), Pos(Zero)) 67.74/34.88 new_primMinusNatS0(x0) 67.74/34.88 new_primEqInt2 67.74/34.88 new_esEs(Neg(Zero)) 67.74/34.88 new_esEs(Neg(Succ(x0))) 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.88 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.88 67.74/34.88 We have to consider all minimal (P,Q,R)-chains. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (270) TransformationProof (EQUIVALENT) 67.74/34.88 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.88 67.74/34.88 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))))) 67.74/34.88 67.74/34.88 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (271) 67.74/34.88 Obligation: 67.74/34.88 Q DP problem: 67.74/34.88 The TRS P consists of the following rules: 67.74/34.88 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.88 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 67.74/34.88 The TRS R consists of the following rules: 67.74/34.88 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.88 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.88 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.88 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.88 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.88 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.88 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.88 new_error -> error([]) 67.74/34.88 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.88 new_primEqInt2 -> True 67.74/34.88 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.88 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS1 -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.88 new_primEqInt1 -> True 67.74/34.88 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primEqInt0(vuz3260) -> False 67.74/34.88 new_primEqInt(vuz3250) -> False 67.74/34.88 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 67.74/34.88 The set Q consists of the following terms: 67.74/34.88 67.74/34.88 new_rem(Neg(x0), Neg(Zero)) 67.74/34.88 new_primEqInt1 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.88 new_primMinusNatS1 67.74/34.88 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.88 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.88 new_primMinusNatS2(Zero, Zero) 67.74/34.88 new_error 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) 67.74/34.88 new_rem(Pos(x0), Pos(Zero)) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.88 new_primEqInt0(x0) 67.74/34.88 new_esEs(Pos(Zero)) 67.74/34.88 new_esEs(Pos(Succ(x0))) 67.74/34.88 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS02(x0, x1) 67.74/34.88 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.88 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.88 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS1(Zero, x0) 67.74/34.88 new_primEqInt(x0) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.88 new_rem(Pos(x0), Neg(Zero)) 67.74/34.88 new_rem(Neg(x0), Pos(Zero)) 67.74/34.88 new_primMinusNatS0(x0) 67.74/34.88 new_primEqInt2 67.74/34.88 new_esEs(Neg(Zero)) 67.74/34.88 new_esEs(Neg(Succ(x0))) 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.88 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.88 67.74/34.88 We have to consider all minimal (P,Q,R)-chains. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (272) TransformationProof (EQUIVALENT) 67.74/34.88 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.88 67.74/34.88 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2))))))) 67.74/34.88 67.74/34.88 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (273) 67.74/34.88 Obligation: 67.74/34.88 Q DP problem: 67.74/34.88 The TRS P consists of the following rules: 67.74/34.88 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.88 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 67.74/34.88 The TRS R consists of the following rules: 67.74/34.88 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.88 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.88 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.88 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.88 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.88 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.88 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.88 new_error -> error([]) 67.74/34.88 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.88 new_primEqInt2 -> True 67.74/34.88 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.88 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS1 -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.88 new_primEqInt1 -> True 67.74/34.88 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primEqInt0(vuz3260) -> False 67.74/34.88 new_primEqInt(vuz3250) -> False 67.74/34.88 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 67.74/34.88 The set Q consists of the following terms: 67.74/34.88 67.74/34.88 new_rem(Neg(x0), Neg(Zero)) 67.74/34.88 new_primEqInt1 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.88 new_primMinusNatS1 67.74/34.88 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.88 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.88 new_primMinusNatS2(Zero, Zero) 67.74/34.88 new_error 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) 67.74/34.88 new_rem(Pos(x0), Pos(Zero)) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.88 new_primEqInt0(x0) 67.74/34.88 new_esEs(Pos(Zero)) 67.74/34.88 new_esEs(Pos(Succ(x0))) 67.74/34.88 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS02(x0, x1) 67.74/34.88 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.88 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.88 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS1(Zero, x0) 67.74/34.88 new_primEqInt(x0) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.88 new_rem(Pos(x0), Neg(Zero)) 67.74/34.88 new_rem(Neg(x0), Pos(Zero)) 67.74/34.88 new_primMinusNatS0(x0) 67.74/34.88 new_primEqInt2 67.74/34.88 new_esEs(Neg(Zero)) 67.74/34.88 new_esEs(Neg(Succ(x0))) 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.88 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.88 67.74/34.88 We have to consider all minimal (P,Q,R)-chains. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (274) TransformationProof (EQUIVALENT) 67.74/34.88 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.88 67.74/34.88 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))))) 67.74/34.88 67.74/34.88 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (275) 67.74/34.88 Obligation: 67.74/34.88 Q DP problem: 67.74/34.88 The TRS P consists of the following rules: 67.74/34.88 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.88 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 67.74/34.88 The TRS R consists of the following rules: 67.74/34.88 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.88 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.88 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.88 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.88 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.88 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.88 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.88 new_error -> error([]) 67.74/34.88 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.88 new_primEqInt2 -> True 67.74/34.88 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.88 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS1 -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.88 new_primEqInt1 -> True 67.74/34.88 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primEqInt0(vuz3260) -> False 67.74/34.88 new_primEqInt(vuz3250) -> False 67.74/34.88 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 67.74/34.88 The set Q consists of the following terms: 67.74/34.88 67.74/34.88 new_rem(Neg(x0), Neg(Zero)) 67.74/34.88 new_primEqInt1 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.88 new_primMinusNatS1 67.74/34.88 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.88 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.88 new_primMinusNatS2(Zero, Zero) 67.74/34.88 new_error 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) 67.74/34.88 new_rem(Pos(x0), Pos(Zero)) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.88 new_primEqInt0(x0) 67.74/34.88 new_esEs(Pos(Zero)) 67.74/34.88 new_esEs(Pos(Succ(x0))) 67.74/34.88 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS02(x0, x1) 67.74/34.88 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.88 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.88 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS1(Zero, x0) 67.74/34.88 new_primEqInt(x0) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.88 new_rem(Pos(x0), Neg(Zero)) 67.74/34.88 new_rem(Neg(x0), Pos(Zero)) 67.74/34.88 new_primMinusNatS0(x0) 67.74/34.88 new_primEqInt2 67.74/34.88 new_esEs(Neg(Zero)) 67.74/34.88 new_esEs(Neg(Succ(x0))) 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.88 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.88 67.74/34.88 We have to consider all minimal (P,Q,R)-chains. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (276) TransformationProof (EQUIVALENT) 67.74/34.88 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.88 67.74/34.88 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2))))))) 67.74/34.88 67.74/34.88 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (277) 67.74/34.88 Obligation: 67.74/34.88 Q DP problem: 67.74/34.88 The TRS P consists of the following rules: 67.74/34.88 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.88 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 67.74/34.88 The TRS R consists of the following rules: 67.74/34.88 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.88 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.88 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.88 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.88 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.88 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.88 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.88 new_error -> error([]) 67.74/34.88 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.88 new_primEqInt2 -> True 67.74/34.88 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.88 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS1 -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.88 new_primEqInt1 -> True 67.74/34.88 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primEqInt0(vuz3260) -> False 67.74/34.88 new_primEqInt(vuz3250) -> False 67.74/34.88 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 67.74/34.88 The set Q consists of the following terms: 67.74/34.88 67.74/34.88 new_rem(Neg(x0), Neg(Zero)) 67.74/34.88 new_primEqInt1 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.88 new_primMinusNatS1 67.74/34.88 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.88 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.88 new_primMinusNatS2(Zero, Zero) 67.74/34.88 new_error 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) 67.74/34.88 new_rem(Pos(x0), Pos(Zero)) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.88 new_primEqInt0(x0) 67.74/34.88 new_esEs(Pos(Zero)) 67.74/34.88 new_esEs(Pos(Succ(x0))) 67.74/34.88 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS02(x0, x1) 67.74/34.88 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.88 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.88 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS1(Zero, x0) 67.74/34.88 new_primEqInt(x0) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.88 new_rem(Pos(x0), Neg(Zero)) 67.74/34.88 new_rem(Neg(x0), Pos(Zero)) 67.74/34.88 new_primMinusNatS0(x0) 67.74/34.88 new_primEqInt2 67.74/34.88 new_esEs(Neg(Zero)) 67.74/34.88 new_esEs(Neg(Succ(x0))) 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.88 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.88 67.74/34.88 We have to consider all minimal (P,Q,R)-chains. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (278) TransformationProof (EQUIVALENT) 67.74/34.88 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.88 67.74/34.88 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))))) 67.74/34.88 67.74/34.88 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (279) 67.74/34.88 Obligation: 67.74/34.88 Q DP problem: 67.74/34.88 The TRS P consists of the following rules: 67.74/34.88 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.88 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 67.74/34.88 The TRS R consists of the following rules: 67.74/34.88 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.88 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.88 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.88 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.88 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.88 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.88 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.88 new_error -> error([]) 67.74/34.88 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.88 new_primEqInt2 -> True 67.74/34.88 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.88 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS1 -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.88 new_primEqInt1 -> True 67.74/34.88 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primEqInt0(vuz3260) -> False 67.74/34.88 new_primEqInt(vuz3250) -> False 67.74/34.88 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 67.74/34.88 The set Q consists of the following terms: 67.74/34.88 67.74/34.88 new_rem(Neg(x0), Neg(Zero)) 67.74/34.88 new_primEqInt1 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.88 new_primMinusNatS1 67.74/34.88 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.88 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.88 new_primMinusNatS2(Zero, Zero) 67.74/34.88 new_error 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) 67.74/34.88 new_rem(Pos(x0), Pos(Zero)) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.88 new_primEqInt0(x0) 67.74/34.88 new_esEs(Pos(Zero)) 67.74/34.88 new_esEs(Pos(Succ(x0))) 67.74/34.88 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS02(x0, x1) 67.74/34.88 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.88 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.88 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS1(Zero, x0) 67.74/34.88 new_primEqInt(x0) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.88 new_rem(Pos(x0), Neg(Zero)) 67.74/34.88 new_rem(Neg(x0), Pos(Zero)) 67.74/34.88 new_primMinusNatS0(x0) 67.74/34.88 new_primEqInt2 67.74/34.88 new_esEs(Neg(Zero)) 67.74/34.88 new_esEs(Neg(Succ(x0))) 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.88 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.88 67.74/34.88 We have to consider all minimal (P,Q,R)-chains. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (280) TransformationProof (EQUIVALENT) 67.74/34.88 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.88 67.74/34.88 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2))))))) 67.74/34.88 67.74/34.88 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (281) 67.74/34.88 Obligation: 67.74/34.88 Q DP problem: 67.74/34.88 The TRS P consists of the following rules: 67.74/34.88 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.88 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 67.74/34.88 The TRS R consists of the following rules: 67.74/34.88 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.88 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.88 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.88 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.88 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.88 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.88 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.88 new_error -> error([]) 67.74/34.88 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.88 new_primEqInt2 -> True 67.74/34.88 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.88 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS1 -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.88 new_primEqInt1 -> True 67.74/34.88 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primEqInt0(vuz3260) -> False 67.74/34.88 new_primEqInt(vuz3250) -> False 67.74/34.88 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 67.74/34.88 The set Q consists of the following terms: 67.74/34.88 67.74/34.88 new_rem(Neg(x0), Neg(Zero)) 67.74/34.88 new_primEqInt1 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.88 new_primMinusNatS1 67.74/34.88 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.88 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.88 new_primMinusNatS2(Zero, Zero) 67.74/34.88 new_error 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) 67.74/34.88 new_rem(Pos(x0), Pos(Zero)) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.88 new_primEqInt0(x0) 67.74/34.88 new_esEs(Pos(Zero)) 67.74/34.88 new_esEs(Pos(Succ(x0))) 67.74/34.88 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS02(x0, x1) 67.74/34.88 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.88 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.88 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS1(Zero, x0) 67.74/34.88 new_primEqInt(x0) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.88 new_rem(Pos(x0), Neg(Zero)) 67.74/34.88 new_rem(Neg(x0), Pos(Zero)) 67.74/34.88 new_primMinusNatS0(x0) 67.74/34.88 new_primEqInt2 67.74/34.88 new_esEs(Neg(Zero)) 67.74/34.88 new_esEs(Neg(Succ(x0))) 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.88 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.88 67.74/34.88 We have to consider all minimal (P,Q,R)-chains. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (282) TransformationProof (EQUIVALENT) 67.74/34.88 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.88 67.74/34.88 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))))) 67.74/34.88 67.74/34.88 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (283) 67.74/34.88 Obligation: 67.74/34.88 Q DP problem: 67.74/34.88 The TRS P consists of the following rules: 67.74/34.88 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.88 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 67.74/34.88 The TRS R consists of the following rules: 67.74/34.88 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.88 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.88 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.88 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.88 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.88 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.88 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.88 new_error -> error([]) 67.74/34.88 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.88 new_primEqInt2 -> True 67.74/34.88 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.88 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS1 -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.88 new_primEqInt1 -> True 67.74/34.88 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primEqInt0(vuz3260) -> False 67.74/34.88 new_primEqInt(vuz3250) -> False 67.74/34.88 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 67.74/34.88 The set Q consists of the following terms: 67.74/34.88 67.74/34.88 new_rem(Neg(x0), Neg(Zero)) 67.74/34.88 new_primEqInt1 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.88 new_primMinusNatS1 67.74/34.88 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.88 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.88 new_primMinusNatS2(Zero, Zero) 67.74/34.88 new_error 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) 67.74/34.88 new_rem(Pos(x0), Pos(Zero)) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.88 new_primEqInt0(x0) 67.74/34.88 new_esEs(Pos(Zero)) 67.74/34.88 new_esEs(Pos(Succ(x0))) 67.74/34.88 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS02(x0, x1) 67.74/34.88 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.88 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.88 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS1(Zero, x0) 67.74/34.88 new_primEqInt(x0) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.88 new_rem(Pos(x0), Neg(Zero)) 67.74/34.88 new_rem(Neg(x0), Pos(Zero)) 67.74/34.88 new_primMinusNatS0(x0) 67.74/34.88 new_primEqInt2 67.74/34.88 new_esEs(Neg(Zero)) 67.74/34.88 new_esEs(Neg(Succ(x0))) 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.88 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.88 67.74/34.88 We have to consider all minimal (P,Q,R)-chains. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (284) DependencyGraphProof (EQUIVALENT) 67.74/34.88 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (285) 67.74/34.88 Obligation: 67.74/34.88 Q DP problem: 67.74/34.88 The TRS P consists of the following rules: 67.74/34.88 67.74/34.88 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.88 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.88 67.74/34.88 The TRS R consists of the following rules: 67.74/34.88 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.88 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.88 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.88 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.88 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.88 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.88 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.88 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.88 new_error -> error([]) 67.74/34.88 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.88 new_primEqInt2 -> True 67.74/34.88 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.88 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.88 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.88 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.88 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primMinusNatS1 -> Zero 67.74/34.88 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.88 new_primEqInt1 -> True 67.74/34.88 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.88 new_primEqInt0(vuz3260) -> False 67.74/34.88 new_primEqInt(vuz3250) -> False 67.74/34.88 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.88 67.74/34.88 The set Q consists of the following terms: 67.74/34.88 67.74/34.88 new_rem(Neg(x0), Neg(Zero)) 67.74/34.88 new_primEqInt1 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.88 new_primMinusNatS1 67.74/34.88 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.88 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.88 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.88 new_primMinusNatS2(Zero, Zero) 67.74/34.88 new_error 67.74/34.88 new_primModNatS1(Succ(Zero), Zero) 67.74/34.88 new_rem(Pos(x0), Pos(Zero)) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.88 new_primEqInt0(x0) 67.74/34.88 new_esEs(Pos(Zero)) 67.74/34.88 new_esEs(Pos(Succ(x0))) 67.74/34.88 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS02(x0, x1) 67.74/34.88 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.88 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.88 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.88 new_primModNatS1(Zero, x0) 67.74/34.88 new_primEqInt(x0) 67.74/34.88 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.88 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.88 new_rem(Pos(x0), Neg(Zero)) 67.74/34.88 new_rem(Neg(x0), Pos(Zero)) 67.74/34.88 new_primMinusNatS0(x0) 67.74/34.88 new_primEqInt2 67.74/34.88 new_esEs(Neg(Zero)) 67.74/34.88 new_esEs(Neg(Succ(x0))) 67.74/34.88 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.88 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.88 67.74/34.88 We have to consider all minimal (P,Q,R)-chains. 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (286) TransformationProof (EQUIVALENT) 67.74/34.88 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.88 67.74/34.88 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))) 67.74/34.88 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0))))))) 67.74/34.88 67.74/34.88 67.74/34.88 ---------------------------------------- 67.74/34.88 67.74/34.88 (287) 67.74/34.88 Obligation: 67.74/34.88 Q DP problem: 67.74/34.88 The TRS P consists of the following rules: 67.74/34.88 67.74/34.88 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.88 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.88 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 67.74/34.89 The TRS R consists of the following rules: 67.74/34.89 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.89 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.89 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.89 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.89 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.89 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.89 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.89 new_error -> error([]) 67.74/34.89 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.89 new_primEqInt2 -> True 67.74/34.89 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.89 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS1 -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.89 new_primEqInt1 -> True 67.74/34.89 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primEqInt0(vuz3260) -> False 67.74/34.89 new_primEqInt(vuz3250) -> False 67.74/34.89 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 67.74/34.89 The set Q consists of the following terms: 67.74/34.89 67.74/34.89 new_rem(Neg(x0), Neg(Zero)) 67.74/34.89 new_primEqInt1 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.89 new_primMinusNatS1 67.74/34.89 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.89 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.89 new_primMinusNatS2(Zero, Zero) 67.74/34.89 new_error 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) 67.74/34.89 new_rem(Pos(x0), Pos(Zero)) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.89 new_primEqInt0(x0) 67.74/34.89 new_esEs(Pos(Zero)) 67.74/34.89 new_esEs(Pos(Succ(x0))) 67.74/34.89 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS02(x0, x1) 67.74/34.89 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.89 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.89 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS1(Zero, x0) 67.74/34.89 new_primEqInt(x0) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.89 new_rem(Pos(x0), Neg(Zero)) 67.74/34.89 new_rem(Neg(x0), Pos(Zero)) 67.74/34.89 new_primMinusNatS0(x0) 67.74/34.89 new_primEqInt2 67.74/34.89 new_esEs(Neg(Zero)) 67.74/34.89 new_esEs(Neg(Succ(x0))) 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.89 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.89 67.74/34.89 We have to consider all minimal (P,Q,R)-chains. 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (288) TransformationProof (EQUIVALENT) 67.74/34.89 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.89 67.74/34.89 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))) 67.74/34.89 67.74/34.89 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (289) 67.74/34.89 Obligation: 67.74/34.89 Q DP problem: 67.74/34.89 The TRS P consists of the following rules: 67.74/34.89 67.74/34.89 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.89 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 67.74/34.89 The TRS R consists of the following rules: 67.74/34.89 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.89 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.89 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.89 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.89 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.89 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.89 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.89 new_error -> error([]) 67.74/34.89 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.89 new_primEqInt2 -> True 67.74/34.89 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.89 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS1 -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.89 new_primEqInt1 -> True 67.74/34.89 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primEqInt0(vuz3260) -> False 67.74/34.89 new_primEqInt(vuz3250) -> False 67.74/34.89 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 67.74/34.89 The set Q consists of the following terms: 67.74/34.89 67.74/34.89 new_rem(Neg(x0), Neg(Zero)) 67.74/34.89 new_primEqInt1 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.89 new_primMinusNatS1 67.74/34.89 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.89 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.89 new_primMinusNatS2(Zero, Zero) 67.74/34.89 new_error 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) 67.74/34.89 new_rem(Pos(x0), Pos(Zero)) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.89 new_primEqInt0(x0) 67.74/34.89 new_esEs(Pos(Zero)) 67.74/34.89 new_esEs(Pos(Succ(x0))) 67.74/34.89 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS02(x0, x1) 67.74/34.89 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.89 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.89 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS1(Zero, x0) 67.74/34.89 new_primEqInt(x0) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.89 new_rem(Pos(x0), Neg(Zero)) 67.74/34.89 new_rem(Neg(x0), Pos(Zero)) 67.74/34.89 new_primMinusNatS0(x0) 67.74/34.89 new_primEqInt2 67.74/34.89 new_esEs(Neg(Zero)) 67.74/34.89 new_esEs(Neg(Succ(x0))) 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.89 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.89 67.74/34.89 We have to consider all minimal (P,Q,R)-chains. 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (290) TransformationProof (EQUIVALENT) 67.74/34.89 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.89 67.74/34.89 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))) 67.74/34.89 67.74/34.89 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (291) 67.74/34.89 Obligation: 67.74/34.89 Q DP problem: 67.74/34.89 The TRS P consists of the following rules: 67.74/34.89 67.74/34.89 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.89 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 67.74/34.89 The TRS R consists of the following rules: 67.74/34.89 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.89 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.89 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.89 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.89 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.89 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.89 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.89 new_error -> error([]) 67.74/34.89 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.89 new_primEqInt2 -> True 67.74/34.89 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.89 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS1 -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.89 new_primEqInt1 -> True 67.74/34.89 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primEqInt0(vuz3260) -> False 67.74/34.89 new_primEqInt(vuz3250) -> False 67.74/34.89 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 67.74/34.89 The set Q consists of the following terms: 67.74/34.89 67.74/34.89 new_rem(Neg(x0), Neg(Zero)) 67.74/34.89 new_primEqInt1 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.89 new_primMinusNatS1 67.74/34.89 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.89 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.89 new_primMinusNatS2(Zero, Zero) 67.74/34.89 new_error 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) 67.74/34.89 new_rem(Pos(x0), Pos(Zero)) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.89 new_primEqInt0(x0) 67.74/34.89 new_esEs(Pos(Zero)) 67.74/34.89 new_esEs(Pos(Succ(x0))) 67.74/34.89 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS02(x0, x1) 67.74/34.89 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.89 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.89 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS1(Zero, x0) 67.74/34.89 new_primEqInt(x0) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.89 new_rem(Pos(x0), Neg(Zero)) 67.74/34.89 new_rem(Neg(x0), Pos(Zero)) 67.74/34.89 new_primMinusNatS0(x0) 67.74/34.89 new_primEqInt2 67.74/34.89 new_esEs(Neg(Zero)) 67.74/34.89 new_esEs(Neg(Succ(x0))) 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.89 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.89 67.74/34.89 We have to consider all minimal (P,Q,R)-chains. 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (292) TransformationProof (EQUIVALENT) 67.74/34.89 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.89 67.74/34.89 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0))))))) 67.74/34.89 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero)))))) 67.74/34.89 67.74/34.89 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (293) 67.74/34.89 Obligation: 67.74/34.89 Q DP problem: 67.74/34.89 The TRS P consists of the following rules: 67.74/34.89 67.74/34.89 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.89 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 67.74/34.89 The TRS R consists of the following rules: 67.74/34.89 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.89 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.89 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.89 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.89 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.89 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.89 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.89 new_error -> error([]) 67.74/34.89 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.89 new_primEqInt2 -> True 67.74/34.89 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.89 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS1 -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.89 new_primEqInt1 -> True 67.74/34.89 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primEqInt0(vuz3260) -> False 67.74/34.89 new_primEqInt(vuz3250) -> False 67.74/34.89 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 67.74/34.89 The set Q consists of the following terms: 67.74/34.89 67.74/34.89 new_rem(Neg(x0), Neg(Zero)) 67.74/34.89 new_primEqInt1 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.89 new_primMinusNatS1 67.74/34.89 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.89 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.89 new_primMinusNatS2(Zero, Zero) 67.74/34.89 new_error 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) 67.74/34.89 new_rem(Pos(x0), Pos(Zero)) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.89 new_primEqInt0(x0) 67.74/34.89 new_esEs(Pos(Zero)) 67.74/34.89 new_esEs(Pos(Succ(x0))) 67.74/34.89 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS02(x0, x1) 67.74/34.89 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.89 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.89 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS1(Zero, x0) 67.74/34.89 new_primEqInt(x0) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.89 new_rem(Pos(x0), Neg(Zero)) 67.74/34.89 new_rem(Neg(x0), Pos(Zero)) 67.74/34.89 new_primMinusNatS0(x0) 67.74/34.89 new_primEqInt2 67.74/34.89 new_esEs(Neg(Zero)) 67.74/34.89 new_esEs(Neg(Succ(x0))) 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.89 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.89 67.74/34.89 We have to consider all minimal (P,Q,R)-chains. 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (294) TransformationProof (EQUIVALENT) 67.74/34.89 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.89 67.74/34.89 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0))))))) 67.74/34.89 67.74/34.89 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (295) 67.74/34.89 Obligation: 67.74/34.89 Q DP problem: 67.74/34.89 The TRS P consists of the following rules: 67.74/34.89 67.74/34.89 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.89 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 67.74/34.89 The TRS R consists of the following rules: 67.74/34.89 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.89 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.89 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.89 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.89 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.89 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.89 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.89 new_error -> error([]) 67.74/34.89 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.89 new_primEqInt2 -> True 67.74/34.89 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.89 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS1 -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.89 new_primEqInt1 -> True 67.74/34.89 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primEqInt0(vuz3260) -> False 67.74/34.89 new_primEqInt(vuz3250) -> False 67.74/34.89 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 67.74/34.89 The set Q consists of the following terms: 67.74/34.89 67.74/34.89 new_rem(Neg(x0), Neg(Zero)) 67.74/34.89 new_primEqInt1 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.89 new_primMinusNatS1 67.74/34.89 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.89 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.89 new_primMinusNatS2(Zero, Zero) 67.74/34.89 new_error 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) 67.74/34.89 new_rem(Pos(x0), Pos(Zero)) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.89 new_primEqInt0(x0) 67.74/34.89 new_esEs(Pos(Zero)) 67.74/34.89 new_esEs(Pos(Succ(x0))) 67.74/34.89 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS02(x0, x1) 67.74/34.89 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.89 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.89 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS1(Zero, x0) 67.74/34.89 new_primEqInt(x0) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.89 new_rem(Pos(x0), Neg(Zero)) 67.74/34.89 new_rem(Neg(x0), Pos(Zero)) 67.74/34.89 new_primMinusNatS0(x0) 67.74/34.89 new_primEqInt2 67.74/34.89 new_esEs(Neg(Zero)) 67.74/34.89 new_esEs(Neg(Succ(x0))) 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.89 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.89 67.74/34.89 We have to consider all minimal (P,Q,R)-chains. 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (296) TransformationProof (EQUIVALENT) 67.74/34.89 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.89 67.74/34.89 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero)))))) 67.74/34.89 67.74/34.89 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (297) 67.74/34.89 Obligation: 67.74/34.89 Q DP problem: 67.74/34.89 The TRS P consists of the following rules: 67.74/34.89 67.74/34.89 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.89 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 67.74/34.89 The TRS R consists of the following rules: 67.74/34.89 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.89 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.89 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.89 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.89 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.89 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.89 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.89 new_error -> error([]) 67.74/34.89 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.89 new_primEqInt2 -> True 67.74/34.89 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.89 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS1 -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.89 new_primEqInt1 -> True 67.74/34.89 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primEqInt0(vuz3260) -> False 67.74/34.89 new_primEqInt(vuz3250) -> False 67.74/34.89 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 67.74/34.89 The set Q consists of the following terms: 67.74/34.89 67.74/34.89 new_rem(Neg(x0), Neg(Zero)) 67.74/34.89 new_primEqInt1 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.89 new_primMinusNatS1 67.74/34.89 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.89 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.89 new_primMinusNatS2(Zero, Zero) 67.74/34.89 new_error 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) 67.74/34.89 new_rem(Pos(x0), Pos(Zero)) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.89 new_primEqInt0(x0) 67.74/34.89 new_esEs(Pos(Zero)) 67.74/34.89 new_esEs(Pos(Succ(x0))) 67.74/34.89 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS02(x0, x1) 67.74/34.89 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.89 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.89 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS1(Zero, x0) 67.74/34.89 new_primEqInt(x0) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.89 new_rem(Pos(x0), Neg(Zero)) 67.74/34.89 new_rem(Neg(x0), Pos(Zero)) 67.74/34.89 new_primMinusNatS0(x0) 67.74/34.89 new_primEqInt2 67.74/34.89 new_esEs(Neg(Zero)) 67.74/34.89 new_esEs(Neg(Succ(x0))) 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.89 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.89 67.74/34.89 We have to consider all minimal (P,Q,R)-chains. 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (298) TransformationProof (EQUIVALENT) 67.74/34.89 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.89 67.74/34.89 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero)))))) 67.74/34.89 67.74/34.89 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (299) 67.74/34.89 Obligation: 67.74/34.89 Q DP problem: 67.74/34.89 The TRS P consists of the following rules: 67.74/34.89 67.74/34.89 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.89 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 67.74/34.89 The TRS R consists of the following rules: 67.74/34.89 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.89 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.89 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.89 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.89 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.89 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.89 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.89 new_error -> error([]) 67.74/34.89 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.89 new_primEqInt2 -> True 67.74/34.89 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.89 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS1 -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.89 new_primEqInt1 -> True 67.74/34.89 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primEqInt0(vuz3260) -> False 67.74/34.89 new_primEqInt(vuz3250) -> False 67.74/34.89 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 67.74/34.89 The set Q consists of the following terms: 67.74/34.89 67.74/34.89 new_rem(Neg(x0), Neg(Zero)) 67.74/34.89 new_primEqInt1 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.89 new_primMinusNatS1 67.74/34.89 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.89 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.89 new_primMinusNatS2(Zero, Zero) 67.74/34.89 new_error 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) 67.74/34.89 new_rem(Pos(x0), Pos(Zero)) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.89 new_primEqInt0(x0) 67.74/34.89 new_esEs(Pos(Zero)) 67.74/34.89 new_esEs(Pos(Succ(x0))) 67.74/34.89 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS02(x0, x1) 67.74/34.89 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.89 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.89 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS1(Zero, x0) 67.74/34.89 new_primEqInt(x0) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.89 new_rem(Pos(x0), Neg(Zero)) 67.74/34.89 new_rem(Neg(x0), Pos(Zero)) 67.74/34.89 new_primMinusNatS0(x0) 67.74/34.89 new_primEqInt2 67.74/34.89 new_esEs(Neg(Zero)) 67.74/34.89 new_esEs(Neg(Succ(x0))) 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.89 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.89 67.74/34.89 We have to consider all minimal (P,Q,R)-chains. 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (300) DependencyGraphProof (EQUIVALENT) 67.74/34.89 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (301) 67.74/34.89 Obligation: 67.74/34.89 Q DP problem: 67.74/34.89 The TRS P consists of the following rules: 67.74/34.89 67.74/34.89 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 67.74/34.89 The TRS R consists of the following rules: 67.74/34.89 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.89 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.89 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.89 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.89 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.89 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.89 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.89 new_error -> error([]) 67.74/34.89 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.89 new_primEqInt2 -> True 67.74/34.89 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.89 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS1 -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.89 new_primEqInt1 -> True 67.74/34.89 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primEqInt0(vuz3260) -> False 67.74/34.89 new_primEqInt(vuz3250) -> False 67.74/34.89 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 67.74/34.89 The set Q consists of the following terms: 67.74/34.89 67.74/34.89 new_rem(Neg(x0), Neg(Zero)) 67.74/34.89 new_primEqInt1 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.89 new_primMinusNatS1 67.74/34.89 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.89 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.89 new_primMinusNatS2(Zero, Zero) 67.74/34.89 new_error 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) 67.74/34.89 new_rem(Pos(x0), Pos(Zero)) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.89 new_primEqInt0(x0) 67.74/34.89 new_esEs(Pos(Zero)) 67.74/34.89 new_esEs(Pos(Succ(x0))) 67.74/34.89 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS02(x0, x1) 67.74/34.89 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.89 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.89 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS1(Zero, x0) 67.74/34.89 new_primEqInt(x0) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.89 new_rem(Pos(x0), Neg(Zero)) 67.74/34.89 new_rem(Neg(x0), Pos(Zero)) 67.74/34.89 new_primMinusNatS0(x0) 67.74/34.89 new_primEqInt2 67.74/34.89 new_esEs(Neg(Zero)) 67.74/34.89 new_esEs(Neg(Succ(x0))) 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.89 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.89 67.74/34.89 We have to consider all minimal (P,Q,R)-chains. 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (302) TransformationProof (EQUIVALENT) 67.74/34.89 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.89 67.74/34.89 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2))))))) 67.74/34.89 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.89 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Zero), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Zero), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.89 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2))))))) 67.74/34.89 67.74/34.89 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (303) 67.74/34.89 Obligation: 67.74/34.89 Q DP problem: 67.74/34.89 The TRS P consists of the following rules: 67.74/34.89 67.74/34.89 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Zero), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 67.74/34.89 The TRS R consists of the following rules: 67.74/34.89 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.89 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.89 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.89 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.89 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.89 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.89 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.89 new_error -> error([]) 67.74/34.89 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.89 new_primEqInt2 -> True 67.74/34.89 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.89 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS1 -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.89 new_primEqInt1 -> True 67.74/34.89 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primEqInt0(vuz3260) -> False 67.74/34.89 new_primEqInt(vuz3250) -> False 67.74/34.89 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 67.74/34.89 The set Q consists of the following terms: 67.74/34.89 67.74/34.89 new_rem(Neg(x0), Neg(Zero)) 67.74/34.89 new_primEqInt1 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.89 new_primMinusNatS1 67.74/34.89 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.89 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.89 new_primMinusNatS2(Zero, Zero) 67.74/34.89 new_error 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) 67.74/34.89 new_rem(Pos(x0), Pos(Zero)) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.89 new_primEqInt0(x0) 67.74/34.89 new_esEs(Pos(Zero)) 67.74/34.89 new_esEs(Pos(Succ(x0))) 67.74/34.89 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS02(x0, x1) 67.74/34.89 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.89 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.89 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS1(Zero, x0) 67.74/34.89 new_primEqInt(x0) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.89 new_rem(Pos(x0), Neg(Zero)) 67.74/34.89 new_rem(Neg(x0), Pos(Zero)) 67.74/34.89 new_primMinusNatS0(x0) 67.74/34.89 new_primEqInt2 67.74/34.89 new_esEs(Neg(Zero)) 67.74/34.89 new_esEs(Neg(Succ(x0))) 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.89 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.89 67.74/34.89 We have to consider all minimal (P,Q,R)-chains. 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (304) TransformationProof (EQUIVALENT) 67.74/34.89 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.89 67.74/34.89 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.89 67.74/34.89 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (305) 67.74/34.89 Obligation: 67.74/34.89 Q DP problem: 67.74/34.89 The TRS P consists of the following rules: 67.74/34.89 67.74/34.89 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Zero), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.89 67.74/34.89 The TRS R consists of the following rules: 67.74/34.89 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.89 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.89 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.89 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.89 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.89 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.89 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.89 new_error -> error([]) 67.74/34.89 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.89 new_primEqInt2 -> True 67.74/34.89 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.89 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS1 -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.89 new_primEqInt1 -> True 67.74/34.89 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primEqInt0(vuz3260) -> False 67.74/34.89 new_primEqInt(vuz3250) -> False 67.74/34.89 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 67.74/34.89 The set Q consists of the following terms: 67.74/34.89 67.74/34.89 new_rem(Neg(x0), Neg(Zero)) 67.74/34.89 new_primEqInt1 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.89 new_primMinusNatS1 67.74/34.89 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.89 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.89 new_primMinusNatS2(Zero, Zero) 67.74/34.89 new_error 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) 67.74/34.89 new_rem(Pos(x0), Pos(Zero)) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.89 new_primEqInt0(x0) 67.74/34.89 new_esEs(Pos(Zero)) 67.74/34.89 new_esEs(Pos(Succ(x0))) 67.74/34.89 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS02(x0, x1) 67.74/34.89 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.89 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.89 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS1(Zero, x0) 67.74/34.89 new_primEqInt(x0) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.89 new_rem(Pos(x0), Neg(Zero)) 67.74/34.89 new_rem(Neg(x0), Pos(Zero)) 67.74/34.89 new_primMinusNatS0(x0) 67.74/34.89 new_primEqInt2 67.74/34.89 new_esEs(Neg(Zero)) 67.74/34.89 new_esEs(Neg(Succ(x0))) 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.89 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.89 67.74/34.89 We have to consider all minimal (P,Q,R)-chains. 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (306) TransformationProof (EQUIVALENT) 67.74/34.89 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Zero), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.89 67.74/34.89 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.89 67.74/34.89 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (307) 67.74/34.89 Obligation: 67.74/34.89 Q DP problem: 67.74/34.89 The TRS P consists of the following rules: 67.74/34.89 67.74/34.89 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.89 67.74/34.89 The TRS R consists of the following rules: 67.74/34.89 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.89 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.89 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.89 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.89 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.89 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.89 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.89 new_error -> error([]) 67.74/34.89 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.89 new_primEqInt2 -> True 67.74/34.89 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.89 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS1 -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.89 new_primEqInt1 -> True 67.74/34.89 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primEqInt0(vuz3260) -> False 67.74/34.89 new_primEqInt(vuz3250) -> False 67.74/34.89 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 67.74/34.89 The set Q consists of the following terms: 67.74/34.89 67.74/34.89 new_rem(Neg(x0), Neg(Zero)) 67.74/34.89 new_primEqInt1 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.89 new_primMinusNatS1 67.74/34.89 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.89 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.89 new_primMinusNatS2(Zero, Zero) 67.74/34.89 new_error 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) 67.74/34.89 new_rem(Pos(x0), Pos(Zero)) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.89 new_primEqInt0(x0) 67.74/34.89 new_esEs(Pos(Zero)) 67.74/34.89 new_esEs(Pos(Succ(x0))) 67.74/34.89 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS02(x0, x1) 67.74/34.89 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.89 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.89 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS1(Zero, x0) 67.74/34.89 new_primEqInt(x0) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.89 new_rem(Pos(x0), Neg(Zero)) 67.74/34.89 new_rem(Neg(x0), Pos(Zero)) 67.74/34.89 new_primMinusNatS0(x0) 67.74/34.89 new_primEqInt2 67.74/34.89 new_esEs(Neg(Zero)) 67.74/34.89 new_esEs(Neg(Succ(x0))) 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.89 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.89 67.74/34.89 We have to consider all minimal (P,Q,R)-chains. 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (308) TransformationProof (EQUIVALENT) 67.74/34.89 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.89 67.74/34.89 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2))))))) 67.74/34.89 67.74/34.89 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (309) 67.74/34.89 Obligation: 67.74/34.89 Q DP problem: 67.74/34.89 The TRS P consists of the following rules: 67.74/34.89 67.74/34.89 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 67.74/34.89 The TRS R consists of the following rules: 67.74/34.89 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.89 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.89 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.89 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.89 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.89 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.89 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.89 new_error -> error([]) 67.74/34.89 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.89 new_primEqInt2 -> True 67.74/34.89 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.89 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS1 -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.89 new_primEqInt1 -> True 67.74/34.89 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primEqInt0(vuz3260) -> False 67.74/34.89 new_primEqInt(vuz3250) -> False 67.74/34.89 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 67.74/34.89 The set Q consists of the following terms: 67.74/34.89 67.74/34.89 new_rem(Neg(x0), Neg(Zero)) 67.74/34.89 new_primEqInt1 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.89 new_primMinusNatS1 67.74/34.89 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.89 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.89 new_primMinusNatS2(Zero, Zero) 67.74/34.89 new_error 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) 67.74/34.89 new_rem(Pos(x0), Pos(Zero)) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.89 new_primEqInt0(x0) 67.74/34.89 new_esEs(Pos(Zero)) 67.74/34.89 new_esEs(Pos(Succ(x0))) 67.74/34.89 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS02(x0, x1) 67.74/34.89 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.89 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.89 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS1(Zero, x0) 67.74/34.89 new_primEqInt(x0) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.89 new_rem(Pos(x0), Neg(Zero)) 67.74/34.89 new_rem(Neg(x0), Pos(Zero)) 67.74/34.89 new_primMinusNatS0(x0) 67.74/34.89 new_primEqInt2 67.74/34.89 new_esEs(Neg(Zero)) 67.74/34.89 new_esEs(Neg(Succ(x0))) 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.89 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.89 67.74/34.89 We have to consider all minimal (P,Q,R)-chains. 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (310) TransformationProof (EQUIVALENT) 67.74/34.89 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.89 67.74/34.89 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.89 67.74/34.89 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (311) 67.74/34.89 Obligation: 67.74/34.89 Q DP problem: 67.74/34.89 The TRS P consists of the following rules: 67.74/34.89 67.74/34.89 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.89 67.74/34.89 The TRS R consists of the following rules: 67.74/34.89 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.89 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.89 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.89 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.89 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.89 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.89 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.89 new_error -> error([]) 67.74/34.89 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.89 new_primEqInt2 -> True 67.74/34.89 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.89 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS1 -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.89 new_primEqInt1 -> True 67.74/34.89 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primEqInt0(vuz3260) -> False 67.74/34.89 new_primEqInt(vuz3250) -> False 67.74/34.89 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 67.74/34.89 The set Q consists of the following terms: 67.74/34.89 67.74/34.89 new_rem(Neg(x0), Neg(Zero)) 67.74/34.89 new_primEqInt1 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.89 new_primMinusNatS1 67.74/34.89 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.89 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.89 new_primMinusNatS2(Zero, Zero) 67.74/34.89 new_error 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) 67.74/34.89 new_rem(Pos(x0), Pos(Zero)) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.89 new_primEqInt0(x0) 67.74/34.89 new_esEs(Pos(Zero)) 67.74/34.89 new_esEs(Pos(Succ(x0))) 67.74/34.89 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS02(x0, x1) 67.74/34.89 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.89 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.89 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS1(Zero, x0) 67.74/34.89 new_primEqInt(x0) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.89 new_rem(Pos(x0), Neg(Zero)) 67.74/34.89 new_rem(Neg(x0), Pos(Zero)) 67.74/34.89 new_primMinusNatS0(x0) 67.74/34.89 new_primEqInt2 67.74/34.89 new_esEs(Neg(Zero)) 67.74/34.89 new_esEs(Neg(Succ(x0))) 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.89 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.89 67.74/34.89 We have to consider all minimal (P,Q,R)-chains. 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (312) TransformationProof (EQUIVALENT) 67.74/34.89 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.89 67.74/34.89 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.89 67.74/34.89 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (313) 67.74/34.89 Obligation: 67.74/34.89 Q DP problem: 67.74/34.89 The TRS P consists of the following rules: 67.74/34.89 67.74/34.89 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.89 67.74/34.89 The TRS R consists of the following rules: 67.74/34.89 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.89 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.89 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.89 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.89 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.89 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.89 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.89 new_error -> error([]) 67.74/34.89 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.89 new_primEqInt2 -> True 67.74/34.89 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.89 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS1 -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.89 new_primEqInt1 -> True 67.74/34.89 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primEqInt0(vuz3260) -> False 67.74/34.89 new_primEqInt(vuz3250) -> False 67.74/34.89 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 67.74/34.89 The set Q consists of the following terms: 67.74/34.89 67.74/34.89 new_rem(Neg(x0), Neg(Zero)) 67.74/34.89 new_primEqInt1 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.89 new_primMinusNatS1 67.74/34.89 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.89 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.89 new_primMinusNatS2(Zero, Zero) 67.74/34.89 new_error 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) 67.74/34.89 new_rem(Pos(x0), Pos(Zero)) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.89 new_primEqInt0(x0) 67.74/34.89 new_esEs(Pos(Zero)) 67.74/34.89 new_esEs(Pos(Succ(x0))) 67.74/34.89 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS02(x0, x1) 67.74/34.89 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.89 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.89 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS1(Zero, x0) 67.74/34.89 new_primEqInt(x0) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.89 new_rem(Pos(x0), Neg(Zero)) 67.74/34.89 new_rem(Neg(x0), Pos(Zero)) 67.74/34.89 new_primMinusNatS0(x0) 67.74/34.89 new_primEqInt2 67.74/34.89 new_esEs(Neg(Zero)) 67.74/34.89 new_esEs(Neg(Succ(x0))) 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.89 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.89 67.74/34.89 We have to consider all minimal (P,Q,R)-chains. 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (314) TransformationProof (EQUIVALENT) 67.74/34.89 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.89 67.74/34.89 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2))))))) 67.74/34.89 67.74/34.89 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (315) 67.74/34.89 Obligation: 67.74/34.89 Q DP problem: 67.74/34.89 The TRS P consists of the following rules: 67.74/34.89 67.74/34.89 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 67.74/34.89 The TRS R consists of the following rules: 67.74/34.89 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.89 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.89 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.89 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.89 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.89 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.89 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.89 new_error -> error([]) 67.74/34.89 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.89 new_primEqInt2 -> True 67.74/34.89 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.89 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS1 -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.89 new_primEqInt1 -> True 67.74/34.89 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primEqInt0(vuz3260) -> False 67.74/34.89 new_primEqInt(vuz3250) -> False 67.74/34.89 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 67.74/34.89 The set Q consists of the following terms: 67.74/34.89 67.74/34.89 new_rem(Neg(x0), Neg(Zero)) 67.74/34.89 new_primEqInt1 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.89 new_primMinusNatS1 67.74/34.89 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.89 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.89 new_primMinusNatS2(Zero, Zero) 67.74/34.89 new_error 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) 67.74/34.89 new_rem(Pos(x0), Pos(Zero)) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.89 new_primEqInt0(x0) 67.74/34.89 new_esEs(Pos(Zero)) 67.74/34.89 new_esEs(Pos(Succ(x0))) 67.74/34.89 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS02(x0, x1) 67.74/34.89 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.89 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.89 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS1(Zero, x0) 67.74/34.89 new_primEqInt(x0) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.89 new_rem(Pos(x0), Neg(Zero)) 67.74/34.89 new_rem(Neg(x0), Pos(Zero)) 67.74/34.89 new_primMinusNatS0(x0) 67.74/34.89 new_primEqInt2 67.74/34.89 new_esEs(Neg(Zero)) 67.74/34.89 new_esEs(Neg(Succ(x0))) 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.89 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.89 67.74/34.89 We have to consider all minimal (P,Q,R)-chains. 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (316) TransformationProof (EQUIVALENT) 67.74/34.89 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.89 67.74/34.89 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.89 67.74/34.89 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (317) 67.74/34.89 Obligation: 67.74/34.89 Q DP problem: 67.74/34.89 The TRS P consists of the following rules: 67.74/34.89 67.74/34.89 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.89 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.89 67.74/34.89 The TRS R consists of the following rules: 67.74/34.89 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.89 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.89 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.89 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.89 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.89 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.89 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.89 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.89 new_error -> error([]) 67.74/34.89 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.89 new_primEqInt2 -> True 67.74/34.89 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.89 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.89 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.89 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.89 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primMinusNatS1 -> Zero 67.74/34.89 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.89 new_primEqInt1 -> True 67.74/34.89 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.89 new_primEqInt0(vuz3260) -> False 67.74/34.89 new_primEqInt(vuz3250) -> False 67.74/34.89 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.89 67.74/34.89 The set Q consists of the following terms: 67.74/34.89 67.74/34.89 new_rem(Neg(x0), Neg(Zero)) 67.74/34.89 new_primEqInt1 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.89 new_primMinusNatS1 67.74/34.89 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.89 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.89 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.89 new_primMinusNatS2(Zero, Zero) 67.74/34.89 new_error 67.74/34.89 new_primModNatS1(Succ(Zero), Zero) 67.74/34.89 new_rem(Pos(x0), Pos(Zero)) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.89 new_primEqInt0(x0) 67.74/34.89 new_esEs(Pos(Zero)) 67.74/34.89 new_esEs(Pos(Succ(x0))) 67.74/34.89 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS02(x0, x1) 67.74/34.89 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.89 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.89 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.89 new_primModNatS1(Zero, x0) 67.74/34.89 new_primEqInt(x0) 67.74/34.89 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.89 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.89 new_rem(Pos(x0), Neg(Zero)) 67.74/34.89 new_rem(Neg(x0), Pos(Zero)) 67.74/34.89 new_primMinusNatS0(x0) 67.74/34.89 new_primEqInt2 67.74/34.89 new_esEs(Neg(Zero)) 67.74/34.89 new_esEs(Neg(Succ(x0))) 67.74/34.89 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.89 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.89 67.74/34.89 We have to consider all minimal (P,Q,R)-chains. 67.74/34.89 ---------------------------------------- 67.74/34.89 67.74/34.89 (318) TransformationProof (EQUIVALENT) 67.74/34.89 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.89 67.74/34.89 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2))))))) 67.74/34.90 67.74/34.90 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (319) 67.74/34.90 Obligation: 67.74/34.90 Q DP problem: 67.74/34.90 The TRS P consists of the following rules: 67.74/34.90 67.74/34.90 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 67.74/34.90 The TRS R consists of the following rules: 67.74/34.90 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.90 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.90 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.90 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.90 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.90 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.90 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.90 new_error -> error([]) 67.74/34.90 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.90 new_primEqInt2 -> True 67.74/34.90 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.90 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS1 -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.90 new_primEqInt1 -> True 67.74/34.90 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primEqInt0(vuz3260) -> False 67.74/34.90 new_primEqInt(vuz3250) -> False 67.74/34.90 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 67.74/34.90 The set Q consists of the following terms: 67.74/34.90 67.74/34.90 new_rem(Neg(x0), Neg(Zero)) 67.74/34.90 new_primEqInt1 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.90 new_primMinusNatS1 67.74/34.90 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.90 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.90 new_primMinusNatS2(Zero, Zero) 67.74/34.90 new_error 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) 67.74/34.90 new_rem(Pos(x0), Pos(Zero)) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.90 new_primEqInt0(x0) 67.74/34.90 new_esEs(Pos(Zero)) 67.74/34.90 new_esEs(Pos(Succ(x0))) 67.74/34.90 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS02(x0, x1) 67.74/34.90 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.90 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.90 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS1(Zero, x0) 67.74/34.90 new_primEqInt(x0) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.90 new_rem(Pos(x0), Neg(Zero)) 67.74/34.90 new_rem(Neg(x0), Pos(Zero)) 67.74/34.90 new_primMinusNatS0(x0) 67.74/34.90 new_primEqInt2 67.74/34.90 new_esEs(Neg(Zero)) 67.74/34.90 new_esEs(Neg(Succ(x0))) 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.90 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.90 67.74/34.90 We have to consider all minimal (P,Q,R)-chains. 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (320) TransformationProof (EQUIVALENT) 67.74/34.90 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.90 67.74/34.90 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.90 67.74/34.90 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (321) 67.74/34.90 Obligation: 67.74/34.90 Q DP problem: 67.74/34.90 The TRS P consists of the following rules: 67.74/34.90 67.74/34.90 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 67.74/34.90 The TRS R consists of the following rules: 67.74/34.90 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.90 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.90 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.90 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.90 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.90 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.90 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.90 new_error -> error([]) 67.74/34.90 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.90 new_primEqInt2 -> True 67.74/34.90 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.90 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS1 -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.90 new_primEqInt1 -> True 67.74/34.90 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primEqInt0(vuz3260) -> False 67.74/34.90 new_primEqInt(vuz3250) -> False 67.74/34.90 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 67.74/34.90 The set Q consists of the following terms: 67.74/34.90 67.74/34.90 new_rem(Neg(x0), Neg(Zero)) 67.74/34.90 new_primEqInt1 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.90 new_primMinusNatS1 67.74/34.90 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.90 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.90 new_primMinusNatS2(Zero, Zero) 67.74/34.90 new_error 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) 67.74/34.90 new_rem(Pos(x0), Pos(Zero)) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.90 new_primEqInt0(x0) 67.74/34.90 new_esEs(Pos(Zero)) 67.74/34.90 new_esEs(Pos(Succ(x0))) 67.74/34.90 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS02(x0, x1) 67.74/34.90 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.90 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.90 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS1(Zero, x0) 67.74/34.90 new_primEqInt(x0) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.90 new_rem(Pos(x0), Neg(Zero)) 67.74/34.90 new_rem(Neg(x0), Pos(Zero)) 67.74/34.90 new_primMinusNatS0(x0) 67.74/34.90 new_primEqInt2 67.74/34.90 new_esEs(Neg(Zero)) 67.74/34.90 new_esEs(Neg(Succ(x0))) 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.90 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.90 67.74/34.90 We have to consider all minimal (P,Q,R)-chains. 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (322) TransformationProof (EQUIVALENT) 67.74/34.90 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.90 67.74/34.90 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2))))))) 67.74/34.90 67.74/34.90 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (323) 67.74/34.90 Obligation: 67.74/34.90 Q DP problem: 67.74/34.90 The TRS P consists of the following rules: 67.74/34.90 67.74/34.90 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 67.74/34.90 The TRS R consists of the following rules: 67.74/34.90 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.90 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.90 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.90 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.90 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.90 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.90 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.90 new_error -> error([]) 67.74/34.90 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.90 new_primEqInt2 -> True 67.74/34.90 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.90 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS1 -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.90 new_primEqInt1 -> True 67.74/34.90 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primEqInt0(vuz3260) -> False 67.74/34.90 new_primEqInt(vuz3250) -> False 67.74/34.90 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 67.74/34.90 The set Q consists of the following terms: 67.74/34.90 67.74/34.90 new_rem(Neg(x0), Neg(Zero)) 67.74/34.90 new_primEqInt1 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.90 new_primMinusNatS1 67.74/34.90 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.90 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.90 new_primMinusNatS2(Zero, Zero) 67.74/34.90 new_error 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) 67.74/34.90 new_rem(Pos(x0), Pos(Zero)) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.90 new_primEqInt0(x0) 67.74/34.90 new_esEs(Pos(Zero)) 67.74/34.90 new_esEs(Pos(Succ(x0))) 67.74/34.90 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS02(x0, x1) 67.74/34.90 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.90 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.90 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS1(Zero, x0) 67.74/34.90 new_primEqInt(x0) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.90 new_rem(Pos(x0), Neg(Zero)) 67.74/34.90 new_rem(Neg(x0), Pos(Zero)) 67.74/34.90 new_primMinusNatS0(x0) 67.74/34.90 new_primEqInt2 67.74/34.90 new_esEs(Neg(Zero)) 67.74/34.90 new_esEs(Neg(Succ(x0))) 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.90 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.90 67.74/34.90 We have to consider all minimal (P,Q,R)-chains. 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (324) TransformationProof (EQUIVALENT) 67.74/34.90 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.90 67.74/34.90 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.90 67.74/34.90 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (325) 67.74/34.90 Obligation: 67.74/34.90 Q DP problem: 67.74/34.90 The TRS P consists of the following rules: 67.74/34.90 67.74/34.90 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 67.74/34.90 The TRS R consists of the following rules: 67.74/34.90 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.90 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.90 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.90 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.90 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.90 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.90 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.90 new_error -> error([]) 67.74/34.90 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.90 new_primEqInt2 -> True 67.74/34.90 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.90 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS1 -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.90 new_primEqInt1 -> True 67.74/34.90 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primEqInt0(vuz3260) -> False 67.74/34.90 new_primEqInt(vuz3250) -> False 67.74/34.90 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 67.74/34.90 The set Q consists of the following terms: 67.74/34.90 67.74/34.90 new_rem(Neg(x0), Neg(Zero)) 67.74/34.90 new_primEqInt1 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.90 new_primMinusNatS1 67.74/34.90 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.90 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.90 new_primMinusNatS2(Zero, Zero) 67.74/34.90 new_error 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) 67.74/34.90 new_rem(Pos(x0), Pos(Zero)) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.90 new_primEqInt0(x0) 67.74/34.90 new_esEs(Pos(Zero)) 67.74/34.90 new_esEs(Pos(Succ(x0))) 67.74/34.90 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS02(x0, x1) 67.74/34.90 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.90 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.90 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS1(Zero, x0) 67.74/34.90 new_primEqInt(x0) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.90 new_rem(Pos(x0), Neg(Zero)) 67.74/34.90 new_rem(Neg(x0), Pos(Zero)) 67.74/34.90 new_primMinusNatS0(x0) 67.74/34.90 new_primEqInt2 67.74/34.90 new_esEs(Neg(Zero)) 67.74/34.90 new_esEs(Neg(Succ(x0))) 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.90 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.90 67.74/34.90 We have to consider all minimal (P,Q,R)-chains. 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (326) DependencyGraphProof (EQUIVALENT) 67.74/34.90 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (327) 67.74/34.90 Obligation: 67.74/34.90 Q DP problem: 67.74/34.90 The TRS P consists of the following rules: 67.74/34.90 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.90 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 67.74/34.90 The TRS R consists of the following rules: 67.74/34.90 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.90 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.90 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.90 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.90 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.90 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.90 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.90 new_error -> error([]) 67.74/34.90 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.90 new_primEqInt2 -> True 67.74/34.90 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.90 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS1 -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.90 new_primEqInt1 -> True 67.74/34.90 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primEqInt0(vuz3260) -> False 67.74/34.90 new_primEqInt(vuz3250) -> False 67.74/34.90 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 67.74/34.90 The set Q consists of the following terms: 67.74/34.90 67.74/34.90 new_rem(Neg(x0), Neg(Zero)) 67.74/34.90 new_primEqInt1 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.90 new_primMinusNatS1 67.74/34.90 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.90 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.90 new_primMinusNatS2(Zero, Zero) 67.74/34.90 new_error 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) 67.74/34.90 new_rem(Pos(x0), Pos(Zero)) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.90 new_primEqInt0(x0) 67.74/34.90 new_esEs(Pos(Zero)) 67.74/34.90 new_esEs(Pos(Succ(x0))) 67.74/34.90 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS02(x0, x1) 67.74/34.90 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.90 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.90 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS1(Zero, x0) 67.74/34.90 new_primEqInt(x0) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.90 new_rem(Pos(x0), Neg(Zero)) 67.74/34.90 new_rem(Neg(x0), Pos(Zero)) 67.74/34.90 new_primMinusNatS0(x0) 67.74/34.90 new_primEqInt2 67.74/34.90 new_esEs(Neg(Zero)) 67.74/34.90 new_esEs(Neg(Succ(x0))) 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.90 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.90 67.74/34.90 We have to consider all minimal (P,Q,R)-chains. 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (328) TransformationProof (EQUIVALENT) 67.74/34.90 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.90 67.74/34.90 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.90 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0))))))) 67.74/34.90 67.74/34.90 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (329) 67.74/34.90 Obligation: 67.74/34.90 Q DP problem: 67.74/34.90 The TRS P consists of the following rules: 67.74/34.90 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.90 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 67.74/34.90 The TRS R consists of the following rules: 67.74/34.90 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.90 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.90 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.90 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.90 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.90 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.90 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.90 new_error -> error([]) 67.74/34.90 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.90 new_primEqInt2 -> True 67.74/34.90 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.90 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS1 -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.90 new_primEqInt1 -> True 67.74/34.90 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primEqInt0(vuz3260) -> False 67.74/34.90 new_primEqInt(vuz3250) -> False 67.74/34.90 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 67.74/34.90 The set Q consists of the following terms: 67.74/34.90 67.74/34.90 new_rem(Neg(x0), Neg(Zero)) 67.74/34.90 new_primEqInt1 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.90 new_primMinusNatS1 67.74/34.90 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.90 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.90 new_primMinusNatS2(Zero, Zero) 67.74/34.90 new_error 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) 67.74/34.90 new_rem(Pos(x0), Pos(Zero)) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.90 new_primEqInt0(x0) 67.74/34.90 new_esEs(Pos(Zero)) 67.74/34.90 new_esEs(Pos(Succ(x0))) 67.74/34.90 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS02(x0, x1) 67.74/34.90 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.90 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.90 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS1(Zero, x0) 67.74/34.90 new_primEqInt(x0) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.90 new_rem(Pos(x0), Neg(Zero)) 67.74/34.90 new_rem(Neg(x0), Pos(Zero)) 67.74/34.90 new_primMinusNatS0(x0) 67.74/34.90 new_primEqInt2 67.74/34.90 new_esEs(Neg(Zero)) 67.74/34.90 new_esEs(Neg(Succ(x0))) 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.90 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.90 67.74/34.90 We have to consider all minimal (P,Q,R)-chains. 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (330) TransformationProof (EQUIVALENT) 67.74/34.90 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.90 67.74/34.90 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.90 67.74/34.90 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (331) 67.74/34.90 Obligation: 67.74/34.90 Q DP problem: 67.74/34.90 The TRS P consists of the following rules: 67.74/34.90 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.90 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 67.74/34.90 The TRS R consists of the following rules: 67.74/34.90 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.90 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.90 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.90 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.90 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.90 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.90 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.90 new_error -> error([]) 67.74/34.90 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.90 new_primEqInt2 -> True 67.74/34.90 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.90 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS1 -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.90 new_primEqInt1 -> True 67.74/34.90 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primEqInt0(vuz3260) -> False 67.74/34.90 new_primEqInt(vuz3250) -> False 67.74/34.90 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 67.74/34.90 The set Q consists of the following terms: 67.74/34.90 67.74/34.90 new_rem(Neg(x0), Neg(Zero)) 67.74/34.90 new_primEqInt1 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.90 new_primMinusNatS1 67.74/34.90 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.90 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.90 new_primMinusNatS2(Zero, Zero) 67.74/34.90 new_error 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) 67.74/34.90 new_rem(Pos(x0), Pos(Zero)) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.90 new_primEqInt0(x0) 67.74/34.90 new_esEs(Pos(Zero)) 67.74/34.90 new_esEs(Pos(Succ(x0))) 67.74/34.90 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS02(x0, x1) 67.74/34.90 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.90 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.90 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS1(Zero, x0) 67.74/34.90 new_primEqInt(x0) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.90 new_rem(Pos(x0), Neg(Zero)) 67.74/34.90 new_rem(Neg(x0), Pos(Zero)) 67.74/34.90 new_primMinusNatS0(x0) 67.74/34.90 new_primEqInt2 67.74/34.90 new_esEs(Neg(Zero)) 67.74/34.90 new_esEs(Neg(Succ(x0))) 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.90 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.90 67.74/34.90 We have to consider all minimal (P,Q,R)-chains. 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (332) TransformationProof (EQUIVALENT) 67.74/34.90 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.90 67.74/34.90 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.90 67.74/34.90 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (333) 67.74/34.90 Obligation: 67.74/34.90 Q DP problem: 67.74/34.90 The TRS P consists of the following rules: 67.74/34.90 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.90 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 67.74/34.90 The TRS R consists of the following rules: 67.74/34.90 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.90 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.90 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.90 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.90 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.90 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.90 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.90 new_error -> error([]) 67.74/34.90 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.90 new_primEqInt2 -> True 67.74/34.90 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.90 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS1 -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.90 new_primEqInt1 -> True 67.74/34.90 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primEqInt0(vuz3260) -> False 67.74/34.90 new_primEqInt(vuz3250) -> False 67.74/34.90 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 67.74/34.90 The set Q consists of the following terms: 67.74/34.90 67.74/34.90 new_rem(Neg(x0), Neg(Zero)) 67.74/34.90 new_primEqInt1 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.90 new_primMinusNatS1 67.74/34.90 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.90 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.90 new_primMinusNatS2(Zero, Zero) 67.74/34.90 new_error 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) 67.74/34.90 new_rem(Pos(x0), Pos(Zero)) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.90 new_primEqInt0(x0) 67.74/34.90 new_esEs(Pos(Zero)) 67.74/34.90 new_esEs(Pos(Succ(x0))) 67.74/34.90 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS02(x0, x1) 67.74/34.90 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.90 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.90 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS1(Zero, x0) 67.74/34.90 new_primEqInt(x0) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.90 new_rem(Pos(x0), Neg(Zero)) 67.74/34.90 new_rem(Neg(x0), Pos(Zero)) 67.74/34.90 new_primMinusNatS0(x0) 67.74/34.90 new_primEqInt2 67.74/34.90 new_esEs(Neg(Zero)) 67.74/34.90 new_esEs(Neg(Succ(x0))) 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.90 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.90 67.74/34.90 We have to consider all minimal (P,Q,R)-chains. 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (334) TransformationProof (EQUIVALENT) 67.74/34.90 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.90 67.74/34.90 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0))))))) 67.74/34.90 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.90 67.74/34.90 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (335) 67.74/34.90 Obligation: 67.74/34.90 Q DP problem: 67.74/34.90 The TRS P consists of the following rules: 67.74/34.90 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.90 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 67.74/34.90 The TRS R consists of the following rules: 67.74/34.90 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.90 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.90 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.90 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.90 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.90 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.90 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.90 new_error -> error([]) 67.74/34.90 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.90 new_primEqInt2 -> True 67.74/34.90 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.90 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS1 -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.90 new_primEqInt1 -> True 67.74/34.90 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primEqInt0(vuz3260) -> False 67.74/34.90 new_primEqInt(vuz3250) -> False 67.74/34.90 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 67.74/34.90 The set Q consists of the following terms: 67.74/34.90 67.74/34.90 new_rem(Neg(x0), Neg(Zero)) 67.74/34.90 new_primEqInt1 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.90 new_primMinusNatS1 67.74/34.90 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.90 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.90 new_primMinusNatS2(Zero, Zero) 67.74/34.90 new_error 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) 67.74/34.90 new_rem(Pos(x0), Pos(Zero)) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.90 new_primEqInt0(x0) 67.74/34.90 new_esEs(Pos(Zero)) 67.74/34.90 new_esEs(Pos(Succ(x0))) 67.74/34.90 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS02(x0, x1) 67.74/34.90 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.90 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.90 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS1(Zero, x0) 67.74/34.90 new_primEqInt(x0) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.90 new_rem(Pos(x0), Neg(Zero)) 67.74/34.90 new_rem(Neg(x0), Pos(Zero)) 67.74/34.90 new_primMinusNatS0(x0) 67.74/34.90 new_primEqInt2 67.74/34.90 new_esEs(Neg(Zero)) 67.74/34.90 new_esEs(Neg(Succ(x0))) 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.90 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.90 67.74/34.90 We have to consider all minimal (P,Q,R)-chains. 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (336) TransformationProof (EQUIVALENT) 67.74/34.90 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.90 67.74/34.90 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0))))))) 67.74/34.90 67.74/34.90 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (337) 67.74/34.90 Obligation: 67.74/34.90 Q DP problem: 67.74/34.90 The TRS P consists of the following rules: 67.74/34.90 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.90 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 67.74/34.90 The TRS R consists of the following rules: 67.74/34.90 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.90 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.90 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.90 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.90 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.90 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.90 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.90 new_error -> error([]) 67.74/34.90 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.90 new_primEqInt2 -> True 67.74/34.90 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.90 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS1 -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.90 new_primEqInt1 -> True 67.74/34.90 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primEqInt0(vuz3260) -> False 67.74/34.90 new_primEqInt(vuz3250) -> False 67.74/34.90 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 67.74/34.90 The set Q consists of the following terms: 67.74/34.90 67.74/34.90 new_rem(Neg(x0), Neg(Zero)) 67.74/34.90 new_primEqInt1 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.90 new_primMinusNatS1 67.74/34.90 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.90 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.90 new_primMinusNatS2(Zero, Zero) 67.74/34.90 new_error 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) 67.74/34.90 new_rem(Pos(x0), Pos(Zero)) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.90 new_primEqInt0(x0) 67.74/34.90 new_esEs(Pos(Zero)) 67.74/34.90 new_esEs(Pos(Succ(x0))) 67.74/34.90 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS02(x0, x1) 67.74/34.90 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.90 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.90 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS1(Zero, x0) 67.74/34.90 new_primEqInt(x0) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.90 new_rem(Pos(x0), Neg(Zero)) 67.74/34.90 new_rem(Neg(x0), Pos(Zero)) 67.74/34.90 new_primMinusNatS0(x0) 67.74/34.90 new_primEqInt2 67.74/34.90 new_esEs(Neg(Zero)) 67.74/34.90 new_esEs(Neg(Succ(x0))) 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.90 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.90 67.74/34.90 We have to consider all minimal (P,Q,R)-chains. 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (338) TransformationProof (EQUIVALENT) 67.74/34.90 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.90 67.74/34.90 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.90 67.74/34.90 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (339) 67.74/34.90 Obligation: 67.74/34.90 Q DP problem: 67.74/34.90 The TRS P consists of the following rules: 67.74/34.90 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.90 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 67.74/34.90 The TRS R consists of the following rules: 67.74/34.90 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.90 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.90 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.90 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.90 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.90 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.90 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.90 new_error -> error([]) 67.74/34.90 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.90 new_primEqInt2 -> True 67.74/34.90 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.90 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS1 -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.90 new_primEqInt1 -> True 67.74/34.90 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primEqInt0(vuz3260) -> False 67.74/34.90 new_primEqInt(vuz3250) -> False 67.74/34.90 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 67.74/34.90 The set Q consists of the following terms: 67.74/34.90 67.74/34.90 new_rem(Neg(x0), Neg(Zero)) 67.74/34.90 new_primEqInt1 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.90 new_primMinusNatS1 67.74/34.90 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.90 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.90 new_primMinusNatS2(Zero, Zero) 67.74/34.90 new_error 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) 67.74/34.90 new_rem(Pos(x0), Pos(Zero)) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.90 new_primEqInt0(x0) 67.74/34.90 new_esEs(Pos(Zero)) 67.74/34.90 new_esEs(Pos(Succ(x0))) 67.74/34.90 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS02(x0, x1) 67.74/34.90 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.90 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.90 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS1(Zero, x0) 67.74/34.90 new_primEqInt(x0) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.90 new_rem(Pos(x0), Neg(Zero)) 67.74/34.90 new_rem(Neg(x0), Pos(Zero)) 67.74/34.90 new_primMinusNatS0(x0) 67.74/34.90 new_primEqInt2 67.74/34.90 new_esEs(Neg(Zero)) 67.74/34.90 new_esEs(Neg(Succ(x0))) 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.90 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.90 67.74/34.90 We have to consider all minimal (P,Q,R)-chains. 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (340) TransformationProof (EQUIVALENT) 67.74/34.90 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.90 67.74/34.90 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.90 67.74/34.90 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (341) 67.74/34.90 Obligation: 67.74/34.90 Q DP problem: 67.74/34.90 The TRS P consists of the following rules: 67.74/34.90 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.90 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 67.74/34.90 The TRS R consists of the following rules: 67.74/34.90 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.90 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.90 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.90 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.90 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.90 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.90 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.90 new_error -> error([]) 67.74/34.90 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.90 new_primEqInt2 -> True 67.74/34.90 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.90 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS1 -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.90 new_primEqInt1 -> True 67.74/34.90 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primEqInt0(vuz3260) -> False 67.74/34.90 new_primEqInt(vuz3250) -> False 67.74/34.90 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 67.74/34.90 The set Q consists of the following terms: 67.74/34.90 67.74/34.90 new_rem(Neg(x0), Neg(Zero)) 67.74/34.90 new_primEqInt1 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.90 new_primMinusNatS1 67.74/34.90 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.90 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.90 new_primMinusNatS2(Zero, Zero) 67.74/34.90 new_error 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) 67.74/34.90 new_rem(Pos(x0), Pos(Zero)) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.90 new_primEqInt0(x0) 67.74/34.90 new_esEs(Pos(Zero)) 67.74/34.90 new_esEs(Pos(Succ(x0))) 67.74/34.90 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS02(x0, x1) 67.74/34.90 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.90 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.90 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS1(Zero, x0) 67.74/34.90 new_primEqInt(x0) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.90 new_rem(Pos(x0), Neg(Zero)) 67.74/34.90 new_rem(Neg(x0), Pos(Zero)) 67.74/34.90 new_primMinusNatS0(x0) 67.74/34.90 new_primEqInt2 67.74/34.90 new_esEs(Neg(Zero)) 67.74/34.90 new_esEs(Neg(Succ(x0))) 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.90 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.90 67.74/34.90 We have to consider all minimal (P,Q,R)-chains. 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (342) DependencyGraphProof (EQUIVALENT) 67.74/34.90 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (343) 67.74/34.90 Obligation: 67.74/34.90 Q DP problem: 67.74/34.90 The TRS P consists of the following rules: 67.74/34.90 67.74/34.90 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.90 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 67.74/34.90 The TRS R consists of the following rules: 67.74/34.90 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.90 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.90 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.90 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.90 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.90 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.90 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.90 new_error -> error([]) 67.74/34.90 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.90 new_primEqInt2 -> True 67.74/34.90 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.90 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS1 -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.90 new_primEqInt1 -> True 67.74/34.90 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primEqInt0(vuz3260) -> False 67.74/34.90 new_primEqInt(vuz3250) -> False 67.74/34.90 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 67.74/34.90 The set Q consists of the following terms: 67.74/34.90 67.74/34.90 new_rem(Neg(x0), Neg(Zero)) 67.74/34.90 new_primEqInt1 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.90 new_primMinusNatS1 67.74/34.90 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.90 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.90 new_primMinusNatS2(Zero, Zero) 67.74/34.90 new_error 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) 67.74/34.90 new_rem(Pos(x0), Pos(Zero)) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.90 new_primEqInt0(x0) 67.74/34.90 new_esEs(Pos(Zero)) 67.74/34.90 new_esEs(Pos(Succ(x0))) 67.74/34.90 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS02(x0, x1) 67.74/34.90 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.90 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.90 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS1(Zero, x0) 67.74/34.90 new_primEqInt(x0) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.90 new_rem(Pos(x0), Neg(Zero)) 67.74/34.90 new_rem(Neg(x0), Pos(Zero)) 67.74/34.90 new_primMinusNatS0(x0) 67.74/34.90 new_primEqInt2 67.74/34.90 new_esEs(Neg(Zero)) 67.74/34.90 new_esEs(Neg(Succ(x0))) 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.90 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.90 67.74/34.90 We have to consider all minimal (P,Q,R)-chains. 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (344) TransformationProof (EQUIVALENT) 67.74/34.90 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Neg(Succ(Succ(Succ(x3)))), Pos(Succ(Succ(Succ(x2))))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.90 67.74/34.90 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2))))))) 67.74/34.90 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.90 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Zero), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Zero), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.90 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2))))))) 67.74/34.90 67.74/34.90 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (345) 67.74/34.90 Obligation: 67.74/34.90 Q DP problem: 67.74/34.90 The TRS P consists of the following rules: 67.74/34.90 67.74/34.90 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.90 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Zero), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 67.74/34.90 The TRS R consists of the following rules: 67.74/34.90 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.90 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.90 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.90 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.90 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.90 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.90 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.90 new_error -> error([]) 67.74/34.90 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.90 new_primEqInt2 -> True 67.74/34.90 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.90 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS1 -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.90 new_primEqInt1 -> True 67.74/34.90 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primEqInt0(vuz3260) -> False 67.74/34.90 new_primEqInt(vuz3250) -> False 67.74/34.90 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 67.74/34.90 The set Q consists of the following terms: 67.74/34.90 67.74/34.90 new_rem(Neg(x0), Neg(Zero)) 67.74/34.90 new_primEqInt1 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.90 new_primMinusNatS1 67.74/34.90 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.90 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.90 new_primMinusNatS2(Zero, Zero) 67.74/34.90 new_error 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) 67.74/34.90 new_rem(Pos(x0), Pos(Zero)) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.90 new_primEqInt0(x0) 67.74/34.90 new_esEs(Pos(Zero)) 67.74/34.90 new_esEs(Pos(Succ(x0))) 67.74/34.90 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS02(x0, x1) 67.74/34.90 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.90 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.90 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS1(Zero, x0) 67.74/34.90 new_primEqInt(x0) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.90 new_rem(Pos(x0), Neg(Zero)) 67.74/34.90 new_rem(Neg(x0), Pos(Zero)) 67.74/34.90 new_primMinusNatS0(x0) 67.74/34.90 new_primEqInt2 67.74/34.90 new_esEs(Neg(Zero)) 67.74/34.90 new_esEs(Neg(Succ(x0))) 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.90 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.90 67.74/34.90 We have to consider all minimal (P,Q,R)-chains. 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (346) TransformationProof (EQUIVALENT) 67.74/34.90 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.90 67.74/34.90 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.90 67.74/34.90 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (347) 67.74/34.90 Obligation: 67.74/34.90 Q DP problem: 67.74/34.90 The TRS P consists of the following rules: 67.74/34.90 67.74/34.90 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.90 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Zero), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 67.74/34.90 The TRS R consists of the following rules: 67.74/34.90 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.90 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.90 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.90 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.90 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.90 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.90 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.90 new_error -> error([]) 67.74/34.90 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.90 new_primEqInt2 -> True 67.74/34.90 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.90 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS1 -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.90 new_primEqInt1 -> True 67.74/34.90 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primEqInt0(vuz3260) -> False 67.74/34.90 new_primEqInt(vuz3250) -> False 67.74/34.90 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 67.74/34.90 The set Q consists of the following terms: 67.74/34.90 67.74/34.90 new_rem(Neg(x0), Neg(Zero)) 67.74/34.90 new_primEqInt1 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.90 new_primMinusNatS1 67.74/34.90 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.90 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.90 new_primMinusNatS2(Zero, Zero) 67.74/34.90 new_error 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) 67.74/34.90 new_rem(Pos(x0), Pos(Zero)) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.90 new_primEqInt0(x0) 67.74/34.90 new_esEs(Pos(Zero)) 67.74/34.90 new_esEs(Pos(Succ(x0))) 67.74/34.90 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS02(x0, x1) 67.74/34.90 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.90 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.90 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.90 new_primModNatS1(Zero, x0) 67.74/34.90 new_primEqInt(x0) 67.74/34.90 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.90 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.90 new_rem(Pos(x0), Neg(Zero)) 67.74/34.90 new_rem(Neg(x0), Pos(Zero)) 67.74/34.90 new_primMinusNatS0(x0) 67.74/34.90 new_primEqInt2 67.74/34.90 new_esEs(Neg(Zero)) 67.74/34.90 new_esEs(Neg(Succ(x0))) 67.74/34.90 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.90 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.90 67.74/34.90 We have to consider all minimal (P,Q,R)-chains. 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (348) TransformationProof (EQUIVALENT) 67.74/34.90 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Zero), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.90 67.74/34.90 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.90 67.74/34.90 67.74/34.90 ---------------------------------------- 67.74/34.90 67.74/34.90 (349) 67.74/34.90 Obligation: 67.74/34.90 Q DP problem: 67.74/34.90 The TRS P consists of the following rules: 67.74/34.90 67.74/34.90 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.90 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.90 67.74/34.90 The TRS R consists of the following rules: 67.74/34.90 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.90 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.90 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.90 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.90 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.90 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.90 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.90 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.90 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.90 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.90 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.90 new_error -> error([]) 67.74/34.90 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.90 new_primEqInt2 -> True 67.74/34.90 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.90 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.90 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.90 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.90 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.90 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.91 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primMinusNatS1 -> Zero 67.74/34.91 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.91 new_primEqInt1 -> True 67.74/34.91 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primEqInt0(vuz3260) -> False 67.74/34.91 new_primEqInt(vuz3250) -> False 67.74/34.91 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.91 67.74/34.91 The set Q consists of the following terms: 67.74/34.91 67.74/34.91 new_rem(Neg(x0), Neg(Zero)) 67.74/34.91 new_primEqInt1 67.74/34.91 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.91 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.91 new_primMinusNatS1 67.74/34.91 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.91 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.91 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.91 new_primMinusNatS2(Zero, Zero) 67.74/34.91 new_error 67.74/34.91 new_primModNatS1(Succ(Zero), Zero) 67.74/34.91 new_rem(Pos(x0), Pos(Zero)) 67.74/34.91 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.91 new_primEqInt0(x0) 67.74/34.91 new_esEs(Pos(Zero)) 67.74/34.91 new_esEs(Pos(Succ(x0))) 67.74/34.91 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.91 new_primModNatS02(x0, x1) 67.74/34.91 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.91 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.91 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.91 new_primModNatS1(Zero, x0) 67.74/34.91 new_primEqInt(x0) 67.74/34.91 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.91 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.91 new_rem(Pos(x0), Neg(Zero)) 67.74/34.91 new_rem(Neg(x0), Pos(Zero)) 67.74/34.91 new_primMinusNatS0(x0) 67.74/34.91 new_primEqInt2 67.74/34.91 new_esEs(Neg(Zero)) 67.74/34.91 new_esEs(Neg(Succ(x0))) 67.74/34.91 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.91 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.91 67.74/34.91 We have to consider all minimal (P,Q,R)-chains. 67.74/34.91 ---------------------------------------- 67.74/34.91 67.74/34.91 (350) TransformationProof (EQUIVALENT) 67.74/34.91 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.91 67.74/34.91 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2))))))) 67.74/34.91 67.74/34.91 67.74/34.91 ---------------------------------------- 67.74/34.91 67.74/34.91 (351) 67.74/34.91 Obligation: 67.74/34.91 Q DP problem: 67.74/34.91 The TRS P consists of the following rules: 67.74/34.91 67.74/34.91 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.91 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 67.74/34.91 The TRS R consists of the following rules: 67.74/34.91 67.74/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.91 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.91 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.91 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.91 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.91 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.91 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.91 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.91 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.91 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.91 new_error -> error([]) 67.74/34.91 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.91 new_primEqInt2 -> True 67.74/34.91 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.91 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.91 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.91 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.91 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.91 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.91 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.91 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primMinusNatS1 -> Zero 67.74/34.91 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.91 new_primEqInt1 -> True 67.74/34.91 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primEqInt0(vuz3260) -> False 67.74/34.91 new_primEqInt(vuz3250) -> False 67.74/34.91 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.91 67.74/34.91 The set Q consists of the following terms: 67.74/34.91 67.74/34.91 new_rem(Neg(x0), Neg(Zero)) 67.74/34.91 new_primEqInt1 67.74/34.91 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.91 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.91 new_primMinusNatS1 67.74/34.91 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.91 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.91 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.91 new_primMinusNatS2(Zero, Zero) 67.74/34.91 new_error 67.74/34.91 new_primModNatS1(Succ(Zero), Zero) 67.74/34.91 new_rem(Pos(x0), Pos(Zero)) 67.74/34.91 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.91 new_primEqInt0(x0) 67.74/34.91 new_esEs(Pos(Zero)) 67.74/34.91 new_esEs(Pos(Succ(x0))) 67.74/34.91 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.91 new_primModNatS02(x0, x1) 67.74/34.91 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.91 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.91 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.91 new_primModNatS1(Zero, x0) 67.74/34.91 new_primEqInt(x0) 67.74/34.91 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.91 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.91 new_rem(Pos(x0), Neg(Zero)) 67.74/34.91 new_rem(Neg(x0), Pos(Zero)) 67.74/34.91 new_primMinusNatS0(x0) 67.74/34.91 new_primEqInt2 67.74/34.91 new_esEs(Neg(Zero)) 67.74/34.91 new_esEs(Neg(Succ(x0))) 67.74/34.91 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.91 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.91 67.74/34.91 We have to consider all minimal (P,Q,R)-chains. 67.74/34.91 ---------------------------------------- 67.74/34.91 67.74/34.91 (352) TransformationProof (EQUIVALENT) 67.74/34.91 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) at position [0] we obtained the following new rules [LPAR04]: 67.74/34.91 67.74/34.91 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.91 67.74/34.91 67.74/34.91 ---------------------------------------- 67.74/34.91 67.74/34.91 (353) 67.74/34.91 Obligation: 67.74/34.91 Q DP problem: 67.74/34.91 The TRS P consists of the following rules: 67.74/34.91 67.74/34.91 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.91 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.91 67.74/34.91 The TRS R consists of the following rules: 67.74/34.91 67.74/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.91 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.91 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.91 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.91 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.91 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.91 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.91 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.91 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.91 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.91 new_error -> error([]) 67.74/34.91 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.91 new_primEqInt2 -> True 67.74/34.91 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.91 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.91 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.91 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.91 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.91 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.91 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.91 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primMinusNatS1 -> Zero 67.74/34.91 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.91 new_primEqInt1 -> True 67.74/34.91 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primEqInt0(vuz3260) -> False 67.74/34.91 new_primEqInt(vuz3250) -> False 67.74/34.91 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.91 67.74/34.91 The set Q consists of the following terms: 67.74/34.91 67.74/34.91 new_rem(Neg(x0), Neg(Zero)) 67.74/34.91 new_primEqInt1 67.74/34.91 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.91 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.91 new_primMinusNatS1 67.74/34.91 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.91 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.91 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.91 new_primMinusNatS2(Zero, Zero) 67.74/34.91 new_error 67.74/34.91 new_primModNatS1(Succ(Zero), Zero) 67.74/34.91 new_rem(Pos(x0), Pos(Zero)) 67.74/34.91 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.91 new_primEqInt0(x0) 67.74/34.91 new_esEs(Pos(Zero)) 67.74/34.91 new_esEs(Pos(Succ(x0))) 67.74/34.91 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.91 new_primModNatS02(x0, x1) 67.74/34.91 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.91 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.91 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.91 new_primModNatS1(Zero, x0) 67.74/34.91 new_primEqInt(x0) 67.74/34.91 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.91 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.91 new_rem(Pos(x0), Neg(Zero)) 67.74/34.91 new_rem(Neg(x0), Pos(Zero)) 67.74/34.91 new_primMinusNatS0(x0) 67.74/34.91 new_primEqInt2 67.74/34.91 new_esEs(Neg(Zero)) 67.74/34.91 new_esEs(Neg(Succ(x0))) 67.74/34.91 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.91 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.91 67.74/34.91 We have to consider all minimal (P,Q,R)-chains. 67.74/34.91 ---------------------------------------- 67.74/34.91 67.74/34.91 (354) TransformationProof (EQUIVALENT) 67.74/34.91 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.91 67.74/34.91 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))))) 67.74/34.91 67.74/34.91 67.74/34.91 ---------------------------------------- 67.74/34.91 67.74/34.91 (355) 67.74/34.91 Obligation: 67.74/34.91 Q DP problem: 67.74/34.91 The TRS P consists of the following rules: 67.74/34.91 67.74/34.91 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.91 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.91 67.74/34.91 The TRS R consists of the following rules: 67.74/34.91 67.74/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.91 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.91 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.91 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.91 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.91 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.91 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.91 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.91 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.91 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.91 new_error -> error([]) 67.74/34.91 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.91 new_primEqInt2 -> True 67.74/34.91 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.91 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.91 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.91 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.91 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.91 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.91 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.91 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primMinusNatS1 -> Zero 67.74/34.91 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.91 new_primEqInt1 -> True 67.74/34.91 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primEqInt0(vuz3260) -> False 67.74/34.91 new_primEqInt(vuz3250) -> False 67.74/34.91 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.91 67.74/34.91 The set Q consists of the following terms: 67.74/34.91 67.74/34.91 new_rem(Neg(x0), Neg(Zero)) 67.74/34.91 new_primEqInt1 67.74/34.91 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.91 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.91 new_primMinusNatS1 67.74/34.91 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.91 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.91 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.91 new_primMinusNatS2(Zero, Zero) 67.74/34.91 new_error 67.74/34.91 new_primModNatS1(Succ(Zero), Zero) 67.74/34.91 new_rem(Pos(x0), Pos(Zero)) 67.74/34.91 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.91 new_primEqInt0(x0) 67.74/34.91 new_esEs(Pos(Zero)) 67.74/34.91 new_esEs(Pos(Succ(x0))) 67.74/34.91 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.91 new_primModNatS02(x0, x1) 67.74/34.91 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.91 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.91 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.91 new_primModNatS1(Zero, x0) 67.74/34.91 new_primEqInt(x0) 67.74/34.91 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.91 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.91 new_rem(Pos(x0), Neg(Zero)) 67.74/34.91 new_rem(Neg(x0), Pos(Zero)) 67.74/34.91 new_primMinusNatS0(x0) 67.74/34.91 new_primEqInt2 67.74/34.91 new_esEs(Neg(Zero)) 67.74/34.91 new_esEs(Neg(Succ(x0))) 67.74/34.91 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.91 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.91 67.74/34.91 We have to consider all minimal (P,Q,R)-chains. 67.74/34.91 ---------------------------------------- 67.74/34.91 67.74/34.91 (356) TransformationProof (EQUIVALENT) 67.74/34.91 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.91 67.74/34.91 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2))))))) 67.74/34.91 67.74/34.91 67.74/34.91 ---------------------------------------- 67.74/34.91 67.74/34.91 (357) 67.74/34.91 Obligation: 67.74/34.91 Q DP problem: 67.74/34.91 The TRS P consists of the following rules: 67.74/34.91 67.74/34.91 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.74/34.91 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.74/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.74/34.91 67.74/34.91 The TRS R consists of the following rules: 67.74/34.91 67.74/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.74/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.74/34.91 new_esEs(Neg(Zero)) -> new_primEqInt2 67.74/34.91 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.74/34.91 new_primMinusNatS2(Zero, Zero) -> Zero 67.74/34.91 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.74/34.91 new_esEs(Pos(Zero)) -> new_primEqInt1 67.74/34.91 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.74/34.91 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.74/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.74/34.91 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primModNatS1(Zero, vuz54200) -> Zero 67.74/34.91 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.74/34.91 new_error -> error([]) 67.74/34.91 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.74/34.91 new_primEqInt2 -> True 67.74/34.91 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.74/34.91 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.91 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.74/34.91 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.74/34.91 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.74/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.74/34.91 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.74/34.91 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.74/34.91 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primMinusNatS1 -> Zero 67.74/34.91 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.74/34.91 new_primEqInt1 -> True 67.74/34.91 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.74/34.91 new_primEqInt0(vuz3260) -> False 67.74/34.91 new_primEqInt(vuz3250) -> False 67.74/34.91 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.74/34.91 67.74/34.91 The set Q consists of the following terms: 67.74/34.91 67.74/34.91 new_rem(Neg(x0), Neg(Zero)) 67.74/34.91 new_primEqInt1 67.74/34.91 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.74/34.91 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.74/34.91 new_primMinusNatS1 67.74/34.91 new_rem(Neg(x0), Neg(Succ(x1))) 67.74/34.91 new_primMinusNatS2(Succ(x0), Zero) 67.74/34.91 new_primModNatS1(Succ(Zero), Succ(x0)) 67.74/34.91 new_primMinusNatS2(Zero, Zero) 67.74/34.91 new_error 67.74/34.91 new_primModNatS1(Succ(Zero), Zero) 67.74/34.91 new_rem(Pos(x0), Pos(Zero)) 67.74/34.91 new_primModNatS01(x0, x1, Zero, Zero) 67.74/34.91 new_primEqInt0(x0) 67.74/34.91 new_esEs(Pos(Zero)) 67.74/34.91 new_esEs(Pos(Succ(x0))) 67.74/34.91 new_rem(Pos(x0), Pos(Succ(x1))) 67.74/34.91 new_primModNatS02(x0, x1) 67.74/34.91 new_primMinusNatS2(Zero, Succ(x0)) 67.74/34.91 new_rem(Pos(x0), Neg(Succ(x1))) 67.74/34.91 new_rem(Neg(x0), Pos(Succ(x1))) 67.74/34.91 new_primModNatS1(Zero, x0) 67.74/34.91 new_primEqInt(x0) 67.74/34.91 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.74/34.91 new_primModNatS1(Succ(Succ(x0)), Zero) 67.74/34.91 new_rem(Pos(x0), Neg(Zero)) 67.74/34.91 new_rem(Neg(x0), Pos(Zero)) 67.74/34.91 new_primMinusNatS0(x0) 67.74/34.91 new_primEqInt2 67.74/34.91 new_esEs(Neg(Zero)) 67.74/34.91 new_esEs(Neg(Succ(x0))) 67.74/34.91 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.74/34.91 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.74/34.91 67.74/34.91 We have to consider all minimal (P,Q,R)-chains. 67.74/34.91 ---------------------------------------- 67.74/34.91 67.74/34.91 (358) TransformationProof (EQUIVALENT) 67.74/34.91 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.74/34.91 67.74/34.91 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.91 67.83/34.91 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (359) 67.83/34.91 Obligation: 67.83/34.91 Q DP problem: 67.83/34.91 The TRS P consists of the following rules: 67.83/34.91 67.83/34.91 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.91 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 67.83/34.91 The TRS R consists of the following rules: 67.83/34.91 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.91 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.91 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.91 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.91 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.91 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.91 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.91 new_error -> error([]) 67.83/34.91 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.91 new_primEqInt2 -> True 67.83/34.91 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.91 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS1 -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.91 new_primEqInt1 -> True 67.83/34.91 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primEqInt0(vuz3260) -> False 67.83/34.91 new_primEqInt(vuz3250) -> False 67.83/34.91 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 67.83/34.91 The set Q consists of the following terms: 67.83/34.91 67.83/34.91 new_rem(Neg(x0), Neg(Zero)) 67.83/34.91 new_primEqInt1 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.91 new_primMinusNatS1 67.83/34.91 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.91 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.91 new_primMinusNatS2(Zero, Zero) 67.83/34.91 new_error 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) 67.83/34.91 new_rem(Pos(x0), Pos(Zero)) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.91 new_primEqInt0(x0) 67.83/34.91 new_esEs(Pos(Zero)) 67.83/34.91 new_esEs(Pos(Succ(x0))) 67.83/34.91 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS02(x0, x1) 67.83/34.91 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.91 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.91 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS1(Zero, x0) 67.83/34.91 new_primEqInt(x0) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.91 new_rem(Pos(x0), Neg(Zero)) 67.83/34.91 new_rem(Neg(x0), Pos(Zero)) 67.83/34.91 new_primMinusNatS0(x0) 67.83/34.91 new_primEqInt2 67.83/34.91 new_esEs(Neg(Zero)) 67.83/34.91 new_esEs(Neg(Succ(x0))) 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.91 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.91 67.83/34.91 We have to consider all minimal (P,Q,R)-chains. 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (360) TransformationProof (EQUIVALENT) 67.83/34.91 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.91 67.83/34.91 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2))))))) 67.83/34.91 67.83/34.91 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (361) 67.83/34.91 Obligation: 67.83/34.91 Q DP problem: 67.83/34.91 The TRS P consists of the following rules: 67.83/34.91 67.83/34.91 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.91 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 67.83/34.91 The TRS R consists of the following rules: 67.83/34.91 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.91 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.91 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.91 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.91 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.91 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.91 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.91 new_error -> error([]) 67.83/34.91 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.91 new_primEqInt2 -> True 67.83/34.91 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.91 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS1 -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.91 new_primEqInt1 -> True 67.83/34.91 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primEqInt0(vuz3260) -> False 67.83/34.91 new_primEqInt(vuz3250) -> False 67.83/34.91 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 67.83/34.91 The set Q consists of the following terms: 67.83/34.91 67.83/34.91 new_rem(Neg(x0), Neg(Zero)) 67.83/34.91 new_primEqInt1 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.91 new_primMinusNatS1 67.83/34.91 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.91 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.91 new_primMinusNatS2(Zero, Zero) 67.83/34.91 new_error 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) 67.83/34.91 new_rem(Pos(x0), Pos(Zero)) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.91 new_primEqInt0(x0) 67.83/34.91 new_esEs(Pos(Zero)) 67.83/34.91 new_esEs(Pos(Succ(x0))) 67.83/34.91 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS02(x0, x1) 67.83/34.91 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.91 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.91 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS1(Zero, x0) 67.83/34.91 new_primEqInt(x0) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.91 new_rem(Pos(x0), Neg(Zero)) 67.83/34.91 new_rem(Neg(x0), Pos(Zero)) 67.83/34.91 new_primMinusNatS0(x0) 67.83/34.91 new_primEqInt2 67.83/34.91 new_esEs(Neg(Zero)) 67.83/34.91 new_esEs(Neg(Succ(x0))) 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.91 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.91 67.83/34.91 We have to consider all minimal (P,Q,R)-chains. 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (362) TransformationProof (EQUIVALENT) 67.83/34.91 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.91 67.83/34.91 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.91 67.83/34.91 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (363) 67.83/34.91 Obligation: 67.83/34.91 Q DP problem: 67.83/34.91 The TRS P consists of the following rules: 67.83/34.91 67.83/34.91 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.91 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 67.83/34.91 The TRS R consists of the following rules: 67.83/34.91 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.91 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.91 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.91 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.91 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.91 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.91 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.91 new_error -> error([]) 67.83/34.91 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.91 new_primEqInt2 -> True 67.83/34.91 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.91 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS1 -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.91 new_primEqInt1 -> True 67.83/34.91 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primEqInt0(vuz3260) -> False 67.83/34.91 new_primEqInt(vuz3250) -> False 67.83/34.91 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 67.83/34.91 The set Q consists of the following terms: 67.83/34.91 67.83/34.91 new_rem(Neg(x0), Neg(Zero)) 67.83/34.91 new_primEqInt1 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.91 new_primMinusNatS1 67.83/34.91 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.91 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.91 new_primMinusNatS2(Zero, Zero) 67.83/34.91 new_error 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) 67.83/34.91 new_rem(Pos(x0), Pos(Zero)) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.91 new_primEqInt0(x0) 67.83/34.91 new_esEs(Pos(Zero)) 67.83/34.91 new_esEs(Pos(Succ(x0))) 67.83/34.91 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS02(x0, x1) 67.83/34.91 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.91 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.91 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS1(Zero, x0) 67.83/34.91 new_primEqInt(x0) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.91 new_rem(Pos(x0), Neg(Zero)) 67.83/34.91 new_rem(Neg(x0), Pos(Zero)) 67.83/34.91 new_primMinusNatS0(x0) 67.83/34.91 new_primEqInt2 67.83/34.91 new_esEs(Neg(Zero)) 67.83/34.91 new_esEs(Neg(Succ(x0))) 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.91 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.91 67.83/34.91 We have to consider all minimal (P,Q,R)-chains. 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (364) TransformationProof (EQUIVALENT) 67.83/34.91 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.91 67.83/34.91 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2))))))) 67.83/34.91 67.83/34.91 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (365) 67.83/34.91 Obligation: 67.83/34.91 Q DP problem: 67.83/34.91 The TRS P consists of the following rules: 67.83/34.91 67.83/34.91 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.91 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 67.83/34.91 The TRS R consists of the following rules: 67.83/34.91 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.91 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.91 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.91 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.91 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.91 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.91 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.91 new_error -> error([]) 67.83/34.91 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.91 new_primEqInt2 -> True 67.83/34.91 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.91 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS1 -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.91 new_primEqInt1 -> True 67.83/34.91 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primEqInt0(vuz3260) -> False 67.83/34.91 new_primEqInt(vuz3250) -> False 67.83/34.91 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 67.83/34.91 The set Q consists of the following terms: 67.83/34.91 67.83/34.91 new_rem(Neg(x0), Neg(Zero)) 67.83/34.91 new_primEqInt1 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.91 new_primMinusNatS1 67.83/34.91 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.91 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.91 new_primMinusNatS2(Zero, Zero) 67.83/34.91 new_error 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) 67.83/34.91 new_rem(Pos(x0), Pos(Zero)) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.91 new_primEqInt0(x0) 67.83/34.91 new_esEs(Pos(Zero)) 67.83/34.91 new_esEs(Pos(Succ(x0))) 67.83/34.91 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS02(x0, x1) 67.83/34.91 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.91 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.91 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS1(Zero, x0) 67.83/34.91 new_primEqInt(x0) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.91 new_rem(Pos(x0), Neg(Zero)) 67.83/34.91 new_rem(Neg(x0), Pos(Zero)) 67.83/34.91 new_primMinusNatS0(x0) 67.83/34.91 new_primEqInt2 67.83/34.91 new_esEs(Neg(Zero)) 67.83/34.91 new_esEs(Neg(Succ(x0))) 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.91 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.91 67.83/34.91 We have to consider all minimal (P,Q,R)-chains. 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (366) TransformationProof (EQUIVALENT) 67.83/34.91 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.91 67.83/34.91 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.91 67.83/34.91 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (367) 67.83/34.91 Obligation: 67.83/34.91 Q DP problem: 67.83/34.91 The TRS P consists of the following rules: 67.83/34.91 67.83/34.91 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.91 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 67.83/34.91 The TRS R consists of the following rules: 67.83/34.91 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.91 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.91 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.91 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.91 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.91 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.91 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.91 new_error -> error([]) 67.83/34.91 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.91 new_primEqInt2 -> True 67.83/34.91 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.91 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS1 -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.91 new_primEqInt1 -> True 67.83/34.91 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primEqInt0(vuz3260) -> False 67.83/34.91 new_primEqInt(vuz3250) -> False 67.83/34.91 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 67.83/34.91 The set Q consists of the following terms: 67.83/34.91 67.83/34.91 new_rem(Neg(x0), Neg(Zero)) 67.83/34.91 new_primEqInt1 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.91 new_primMinusNatS1 67.83/34.91 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.91 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.91 new_primMinusNatS2(Zero, Zero) 67.83/34.91 new_error 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) 67.83/34.91 new_rem(Pos(x0), Pos(Zero)) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.91 new_primEqInt0(x0) 67.83/34.91 new_esEs(Pos(Zero)) 67.83/34.91 new_esEs(Pos(Succ(x0))) 67.83/34.91 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS02(x0, x1) 67.83/34.91 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.91 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.91 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS1(Zero, x0) 67.83/34.91 new_primEqInt(x0) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.91 new_rem(Pos(x0), Neg(Zero)) 67.83/34.91 new_rem(Neg(x0), Pos(Zero)) 67.83/34.91 new_primMinusNatS0(x0) 67.83/34.91 new_primEqInt2 67.83/34.91 new_esEs(Neg(Zero)) 67.83/34.91 new_esEs(Neg(Succ(x0))) 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.91 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.91 67.83/34.91 We have to consider all minimal (P,Q,R)-chains. 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (368) DependencyGraphProof (EQUIVALENT) 67.83/34.91 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (369) 67.83/34.91 Obligation: 67.83/34.91 Q DP problem: 67.83/34.91 The TRS P consists of the following rules: 67.83/34.91 67.83/34.91 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 67.83/34.91 The TRS R consists of the following rules: 67.83/34.91 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.91 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.91 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.91 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.91 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.91 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.91 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.91 new_error -> error([]) 67.83/34.91 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.91 new_primEqInt2 -> True 67.83/34.91 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.91 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS1 -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.91 new_primEqInt1 -> True 67.83/34.91 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primEqInt0(vuz3260) -> False 67.83/34.91 new_primEqInt(vuz3250) -> False 67.83/34.91 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 67.83/34.91 The set Q consists of the following terms: 67.83/34.91 67.83/34.91 new_rem(Neg(x0), Neg(Zero)) 67.83/34.91 new_primEqInt1 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.91 new_primMinusNatS1 67.83/34.91 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.91 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.91 new_primMinusNatS2(Zero, Zero) 67.83/34.91 new_error 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) 67.83/34.91 new_rem(Pos(x0), Pos(Zero)) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.91 new_primEqInt0(x0) 67.83/34.91 new_esEs(Pos(Zero)) 67.83/34.91 new_esEs(Pos(Succ(x0))) 67.83/34.91 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS02(x0, x1) 67.83/34.91 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.91 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.91 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS1(Zero, x0) 67.83/34.91 new_primEqInt(x0) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.91 new_rem(Pos(x0), Neg(Zero)) 67.83/34.91 new_rem(Neg(x0), Pos(Zero)) 67.83/34.91 new_primMinusNatS0(x0) 67.83/34.91 new_primEqInt2 67.83/34.91 new_esEs(Neg(Zero)) 67.83/34.91 new_esEs(Neg(Succ(x0))) 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.91 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.91 67.83/34.91 We have to consider all minimal (P,Q,R)-chains. 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (370) TransformationProof (EQUIVALENT) 67.83/34.91 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Zero)))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) at position [0] we obtained the following new rules [LPAR04]: 67.83/34.91 67.83/34.91 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.91 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0))))))) 67.83/34.91 67.83/34.91 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (371) 67.83/34.91 Obligation: 67.83/34.91 Q DP problem: 67.83/34.91 The TRS P consists of the following rules: 67.83/34.91 67.83/34.91 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 67.83/34.91 The TRS R consists of the following rules: 67.83/34.91 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.91 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.91 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.91 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.91 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.91 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.91 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.91 new_error -> error([]) 67.83/34.91 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.91 new_primEqInt2 -> True 67.83/34.91 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.91 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS1 -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.91 new_primEqInt1 -> True 67.83/34.91 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primEqInt0(vuz3260) -> False 67.83/34.91 new_primEqInt(vuz3250) -> False 67.83/34.91 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 67.83/34.91 The set Q consists of the following terms: 67.83/34.91 67.83/34.91 new_rem(Neg(x0), Neg(Zero)) 67.83/34.91 new_primEqInt1 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.91 new_primMinusNatS1 67.83/34.91 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.91 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.91 new_primMinusNatS2(Zero, Zero) 67.83/34.91 new_error 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) 67.83/34.91 new_rem(Pos(x0), Pos(Zero)) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.91 new_primEqInt0(x0) 67.83/34.91 new_esEs(Pos(Zero)) 67.83/34.91 new_esEs(Pos(Succ(x0))) 67.83/34.91 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS02(x0, x1) 67.83/34.91 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.91 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.91 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS1(Zero, x0) 67.83/34.91 new_primEqInt(x0) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.91 new_rem(Pos(x0), Neg(Zero)) 67.83/34.91 new_rem(Neg(x0), Pos(Zero)) 67.83/34.91 new_primMinusNatS0(x0) 67.83/34.91 new_primEqInt2 67.83/34.91 new_esEs(Neg(Zero)) 67.83/34.91 new_esEs(Neg(Succ(x0))) 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.91 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.91 67.83/34.91 We have to consider all minimal (P,Q,R)-chains. 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (372) TransformationProof (EQUIVALENT) 67.83/34.91 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Succ(Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) at position [0] we obtained the following new rules [LPAR04]: 67.83/34.91 67.83/34.91 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.91 67.83/34.91 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (373) 67.83/34.91 Obligation: 67.83/34.91 Q DP problem: 67.83/34.91 The TRS P consists of the following rules: 67.83/34.91 67.83/34.91 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 67.83/34.91 The TRS R consists of the following rules: 67.83/34.91 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.91 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.91 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.91 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.91 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.91 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.91 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.91 new_error -> error([]) 67.83/34.91 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.91 new_primEqInt2 -> True 67.83/34.91 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.91 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS1 -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.91 new_primEqInt1 -> True 67.83/34.91 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primEqInt0(vuz3260) -> False 67.83/34.91 new_primEqInt(vuz3250) -> False 67.83/34.91 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 67.83/34.91 The set Q consists of the following terms: 67.83/34.91 67.83/34.91 new_rem(Neg(x0), Neg(Zero)) 67.83/34.91 new_primEqInt1 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.91 new_primMinusNatS1 67.83/34.91 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.91 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.91 new_primMinusNatS2(Zero, Zero) 67.83/34.91 new_error 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) 67.83/34.91 new_rem(Pos(x0), Pos(Zero)) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.91 new_primEqInt0(x0) 67.83/34.91 new_esEs(Pos(Zero)) 67.83/34.91 new_esEs(Pos(Succ(x0))) 67.83/34.91 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS02(x0, x1) 67.83/34.91 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.91 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.91 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS1(Zero, x0) 67.83/34.91 new_primEqInt(x0) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.91 new_rem(Pos(x0), Neg(Zero)) 67.83/34.91 new_rem(Neg(x0), Pos(Zero)) 67.83/34.91 new_primMinusNatS0(x0) 67.83/34.91 new_primEqInt2 67.83/34.91 new_esEs(Neg(Zero)) 67.83/34.91 new_esEs(Neg(Succ(x0))) 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.91 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.91 67.83/34.91 We have to consider all minimal (P,Q,R)-chains. 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (374) TransformationProof (EQUIVALENT) 67.83/34.91 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt(Zero), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) at position [0] we obtained the following new rules [LPAR04]: 67.83/34.91 67.83/34.91 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.91 67.83/34.91 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (375) 67.83/34.91 Obligation: 67.83/34.91 Q DP problem: 67.83/34.91 The TRS P consists of the following rules: 67.83/34.91 67.83/34.91 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 67.83/34.91 The TRS R consists of the following rules: 67.83/34.91 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.91 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.91 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.91 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.91 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.91 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.91 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.91 new_error -> error([]) 67.83/34.91 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.91 new_primEqInt2 -> True 67.83/34.91 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.91 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS1 -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.91 new_primEqInt1 -> True 67.83/34.91 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primEqInt0(vuz3260) -> False 67.83/34.91 new_primEqInt(vuz3250) -> False 67.83/34.91 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 67.83/34.91 The set Q consists of the following terms: 67.83/34.91 67.83/34.91 new_rem(Neg(x0), Neg(Zero)) 67.83/34.91 new_primEqInt1 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.91 new_primMinusNatS1 67.83/34.91 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.91 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.91 new_primMinusNatS2(Zero, Zero) 67.83/34.91 new_error 67.83/34.91 new_primModNatS1(Succ(Zero), Zero) 67.83/34.91 new_rem(Pos(x0), Pos(Zero)) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.91 new_primEqInt0(x0) 67.83/34.91 new_esEs(Pos(Zero)) 67.83/34.91 new_esEs(Pos(Succ(x0))) 67.83/34.91 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS02(x0, x1) 67.83/34.91 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.91 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.91 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.91 new_primModNatS1(Zero, x0) 67.83/34.91 new_primEqInt(x0) 67.83/34.91 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.91 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.91 new_rem(Pos(x0), Neg(Zero)) 67.83/34.91 new_rem(Neg(x0), Pos(Zero)) 67.83/34.91 new_primMinusNatS0(x0) 67.83/34.91 new_primEqInt2 67.83/34.91 new_esEs(Neg(Zero)) 67.83/34.91 new_esEs(Neg(Succ(x0))) 67.83/34.91 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.91 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.91 67.83/34.91 We have to consider all minimal (P,Q,R)-chains. 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (376) TransformationProof (EQUIVALENT) 67.83/34.91 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(x0))))) at position [0] we obtained the following new rules [LPAR04]: 67.83/34.91 67.83/34.91 (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))),new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0))))))) 67.83/34.91 (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.91 67.83/34.91 67.83/34.91 ---------------------------------------- 67.83/34.91 67.83/34.91 (377) 67.83/34.91 Obligation: 67.83/34.91 Q DP problem: 67.83/34.91 The TRS P consists of the following rules: 67.83/34.91 67.83/34.91 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.91 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.91 67.83/34.91 The TRS R consists of the following rules: 67.83/34.91 67.83/34.91 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.91 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.91 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.91 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.91 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.91 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.91 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.91 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.91 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.91 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.91 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.91 new_error -> error([]) 67.83/34.91 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.91 new_primEqInt2 -> True 67.83/34.91 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.91 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.91 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.91 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.92 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS1 -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.92 new_primEqInt1 -> True 67.83/34.92 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primEqInt0(vuz3260) -> False 67.83/34.92 new_primEqInt(vuz3250) -> False 67.83/34.92 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 67.83/34.92 The set Q consists of the following terms: 67.83/34.92 67.83/34.92 new_rem(Neg(x0), Neg(Zero)) 67.83/34.92 new_primEqInt1 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.92 new_primMinusNatS1 67.83/34.92 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.92 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.92 new_primMinusNatS2(Zero, Zero) 67.83/34.92 new_error 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) 67.83/34.92 new_rem(Pos(x0), Pos(Zero)) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.92 new_primEqInt0(x0) 67.83/34.92 new_esEs(Pos(Zero)) 67.83/34.92 new_esEs(Pos(Succ(x0))) 67.83/34.92 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS02(x0, x1) 67.83/34.92 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.92 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.92 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS1(Zero, x0) 67.83/34.92 new_primEqInt(x0) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.92 new_rem(Pos(x0), Neg(Zero)) 67.83/34.92 new_rem(Neg(x0), Pos(Zero)) 67.83/34.92 new_primMinusNatS0(x0) 67.83/34.92 new_primEqInt2 67.83/34.92 new_esEs(Neg(Zero)) 67.83/34.92 new_esEs(Neg(Succ(x0))) 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.92 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.92 67.83/34.92 We have to consider all minimal (P,Q,R)-chains. 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (378) TransformationProof (EQUIVALENT) 67.83/34.92 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.92 67.83/34.92 (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))),new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0))))))) 67.83/34.92 67.83/34.92 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (379) 67.83/34.92 Obligation: 67.83/34.92 Q DP problem: 67.83/34.92 The TRS P consists of the following rules: 67.83/34.92 67.83/34.92 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 67.83/34.92 The TRS R consists of the following rules: 67.83/34.92 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.92 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.92 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.92 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.92 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.92 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.92 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.92 new_error -> error([]) 67.83/34.92 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.92 new_primEqInt2 -> True 67.83/34.92 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.92 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS1 -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.92 new_primEqInt1 -> True 67.83/34.92 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primEqInt0(vuz3260) -> False 67.83/34.92 new_primEqInt(vuz3250) -> False 67.83/34.92 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 67.83/34.92 The set Q consists of the following terms: 67.83/34.92 67.83/34.92 new_rem(Neg(x0), Neg(Zero)) 67.83/34.92 new_primEqInt1 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.92 new_primMinusNatS1 67.83/34.92 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.92 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.92 new_primMinusNatS2(Zero, Zero) 67.83/34.92 new_error 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) 67.83/34.92 new_rem(Pos(x0), Pos(Zero)) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.92 new_primEqInt0(x0) 67.83/34.92 new_esEs(Pos(Zero)) 67.83/34.92 new_esEs(Pos(Succ(x0))) 67.83/34.92 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS02(x0, x1) 67.83/34.92 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.92 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.92 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS1(Zero, x0) 67.83/34.92 new_primEqInt(x0) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.92 new_rem(Pos(x0), Neg(Zero)) 67.83/34.92 new_rem(Neg(x0), Pos(Zero)) 67.83/34.92 new_primMinusNatS0(x0) 67.83/34.92 new_primEqInt2 67.83/34.92 new_esEs(Neg(Zero)) 67.83/34.92 new_esEs(Neg(Succ(x0))) 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.92 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.92 67.83/34.92 We have to consider all minimal (P,Q,R)-chains. 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (380) TransformationProof (EQUIVALENT) 67.83/34.92 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(new_primMinusNatS1, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.92 67.83/34.92 (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.92 67.83/34.92 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (381) 67.83/34.92 Obligation: 67.83/34.92 Q DP problem: 67.83/34.92 The TRS P consists of the following rules: 67.83/34.92 67.83/34.92 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 67.83/34.92 The TRS R consists of the following rules: 67.83/34.92 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.92 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.92 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.92 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.92 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.92 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.92 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.92 new_error -> error([]) 67.83/34.92 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.92 new_primEqInt2 -> True 67.83/34.92 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.92 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS1 -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.92 new_primEqInt1 -> True 67.83/34.92 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primEqInt0(vuz3260) -> False 67.83/34.92 new_primEqInt(vuz3250) -> False 67.83/34.92 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 67.83/34.92 The set Q consists of the following terms: 67.83/34.92 67.83/34.92 new_rem(Neg(x0), Neg(Zero)) 67.83/34.92 new_primEqInt1 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.92 new_primMinusNatS1 67.83/34.92 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.92 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.92 new_primMinusNatS2(Zero, Zero) 67.83/34.92 new_error 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) 67.83/34.92 new_rem(Pos(x0), Pos(Zero)) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.92 new_primEqInt0(x0) 67.83/34.92 new_esEs(Pos(Zero)) 67.83/34.92 new_esEs(Pos(Succ(x0))) 67.83/34.92 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS02(x0, x1) 67.83/34.92 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.92 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.92 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS1(Zero, x0) 67.83/34.92 new_primEqInt(x0) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.92 new_rem(Pos(x0), Neg(Zero)) 67.83/34.92 new_rem(Neg(x0), Pos(Zero)) 67.83/34.92 new_primMinusNatS0(x0) 67.83/34.92 new_primEqInt2 67.83/34.92 new_esEs(Neg(Zero)) 67.83/34.92 new_esEs(Neg(Succ(x0))) 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.92 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.92 67.83/34.92 We have to consider all minimal (P,Q,R)-chains. 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (382) TransformationProof (EQUIVALENT) 67.83/34.92 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Zero, Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.92 67.83/34.92 (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.92 67.83/34.92 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (383) 67.83/34.92 Obligation: 67.83/34.92 Q DP problem: 67.83/34.92 The TRS P consists of the following rules: 67.83/34.92 67.83/34.92 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Pos(Zero)), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 67.83/34.92 The TRS R consists of the following rules: 67.83/34.92 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.92 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.92 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.92 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.92 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.92 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.92 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.92 new_error -> error([]) 67.83/34.92 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.92 new_primEqInt2 -> True 67.83/34.92 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.92 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS1 -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.92 new_primEqInt1 -> True 67.83/34.92 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primEqInt0(vuz3260) -> False 67.83/34.92 new_primEqInt(vuz3250) -> False 67.83/34.92 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 67.83/34.92 The set Q consists of the following terms: 67.83/34.92 67.83/34.92 new_rem(Neg(x0), Neg(Zero)) 67.83/34.92 new_primEqInt1 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.92 new_primMinusNatS1 67.83/34.92 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.92 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.92 new_primMinusNatS2(Zero, Zero) 67.83/34.92 new_error 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) 67.83/34.92 new_rem(Pos(x0), Pos(Zero)) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.92 new_primEqInt0(x0) 67.83/34.92 new_esEs(Pos(Zero)) 67.83/34.92 new_esEs(Pos(Succ(x0))) 67.83/34.92 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS02(x0, x1) 67.83/34.92 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.92 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.92 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS1(Zero, x0) 67.83/34.92 new_primEqInt(x0) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.92 new_rem(Pos(x0), Neg(Zero)) 67.83/34.92 new_rem(Neg(x0), Pos(Zero)) 67.83/34.92 new_primMinusNatS0(x0) 67.83/34.92 new_primEqInt2 67.83/34.92 new_esEs(Neg(Zero)) 67.83/34.92 new_esEs(Neg(Succ(x0))) 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.92 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.92 67.83/34.92 We have to consider all minimal (P,Q,R)-chains. 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (384) DependencyGraphProof (EQUIVALENT) 67.83/34.92 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (385) 67.83/34.92 Obligation: 67.83/34.92 Q DP problem: 67.83/34.92 The TRS P consists of the following rules: 67.83/34.92 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.92 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 67.83/34.92 The TRS R consists of the following rules: 67.83/34.92 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.92 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.92 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.92 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.92 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.92 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.92 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.92 new_error -> error([]) 67.83/34.92 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.92 new_primEqInt2 -> True 67.83/34.92 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.92 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS1 -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.92 new_primEqInt1 -> True 67.83/34.92 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primEqInt0(vuz3260) -> False 67.83/34.92 new_primEqInt(vuz3250) -> False 67.83/34.92 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 67.83/34.92 The set Q consists of the following terms: 67.83/34.92 67.83/34.92 new_rem(Neg(x0), Neg(Zero)) 67.83/34.92 new_primEqInt1 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.92 new_primMinusNatS1 67.83/34.92 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.92 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.92 new_primMinusNatS2(Zero, Zero) 67.83/34.92 new_error 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) 67.83/34.92 new_rem(Pos(x0), Pos(Zero)) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.92 new_primEqInt0(x0) 67.83/34.92 new_esEs(Pos(Zero)) 67.83/34.92 new_esEs(Pos(Succ(x0))) 67.83/34.92 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS02(x0, x1) 67.83/34.92 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.92 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.92 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS1(Zero, x0) 67.83/34.92 new_primEqInt(x0) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.92 new_rem(Pos(x0), Neg(Zero)) 67.83/34.92 new_rem(Neg(x0), Pos(Zero)) 67.83/34.92 new_primMinusNatS0(x0) 67.83/34.92 new_primEqInt2 67.83/34.92 new_esEs(Neg(Zero)) 67.83/34.92 new_esEs(Neg(Succ(x0))) 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.92 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.92 67.83/34.92 We have to consider all minimal (P,Q,R)-chains. 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (386) TransformationProof (EQUIVALENT) 67.83/34.92 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))), Pos(Succ(Succ(Succ(x3)))), Neg(Succ(Succ(Succ(x2))))) at position [0] we obtained the following new rules [LPAR04]: 67.83/34.92 67.83/34.92 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2))))))) 67.83/34.92 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.92 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Zero), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Zero), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.92 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2))))))) 67.83/34.92 67.83/34.92 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (387) 67.83/34.92 Obligation: 67.83/34.92 Q DP problem: 67.83/34.92 The TRS P consists of the following rules: 67.83/34.92 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.92 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Zero), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 67.83/34.92 The TRS R consists of the following rules: 67.83/34.92 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.92 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.92 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.92 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.92 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.92 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.92 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.92 new_error -> error([]) 67.83/34.92 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.92 new_primEqInt2 -> True 67.83/34.92 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.92 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS1 -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.92 new_primEqInt1 -> True 67.83/34.92 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primEqInt0(vuz3260) -> False 67.83/34.92 new_primEqInt(vuz3250) -> False 67.83/34.92 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 67.83/34.92 The set Q consists of the following terms: 67.83/34.92 67.83/34.92 new_rem(Neg(x0), Neg(Zero)) 67.83/34.92 new_primEqInt1 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.92 new_primMinusNatS1 67.83/34.92 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.92 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.92 new_primMinusNatS2(Zero, Zero) 67.83/34.92 new_error 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) 67.83/34.92 new_rem(Pos(x0), Pos(Zero)) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.92 new_primEqInt0(x0) 67.83/34.92 new_esEs(Pos(Zero)) 67.83/34.92 new_esEs(Pos(Succ(x0))) 67.83/34.92 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS02(x0, x1) 67.83/34.92 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.92 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.92 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS1(Zero, x0) 67.83/34.92 new_primEqInt(x0) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.92 new_rem(Pos(x0), Neg(Zero)) 67.83/34.92 new_rem(Neg(x0), Pos(Zero)) 67.83/34.92 new_primMinusNatS0(x0) 67.83/34.92 new_primEqInt2 67.83/34.92 new_esEs(Neg(Zero)) 67.83/34.92 new_esEs(Neg(Succ(x0))) 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.92 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.92 67.83/34.92 We have to consider all minimal (P,Q,R)-chains. 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (388) TransformationProof (EQUIVALENT) 67.83/34.92 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) at position [0] we obtained the following new rules [LPAR04]: 67.83/34.92 67.83/34.92 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.92 67.83/34.92 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (389) 67.83/34.92 Obligation: 67.83/34.92 Q DP problem: 67.83/34.92 The TRS P consists of the following rules: 67.83/34.92 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.92 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Zero), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 67.83/34.92 The TRS R consists of the following rules: 67.83/34.92 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.92 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.92 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.92 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.92 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.92 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.92 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.92 new_error -> error([]) 67.83/34.92 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.92 new_primEqInt2 -> True 67.83/34.92 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.92 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS1 -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.92 new_primEqInt1 -> True 67.83/34.92 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primEqInt0(vuz3260) -> False 67.83/34.92 new_primEqInt(vuz3250) -> False 67.83/34.92 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 67.83/34.92 The set Q consists of the following terms: 67.83/34.92 67.83/34.92 new_rem(Neg(x0), Neg(Zero)) 67.83/34.92 new_primEqInt1 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.92 new_primMinusNatS1 67.83/34.92 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.92 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.92 new_primMinusNatS2(Zero, Zero) 67.83/34.92 new_error 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) 67.83/34.92 new_rem(Pos(x0), Pos(Zero)) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.92 new_primEqInt0(x0) 67.83/34.92 new_esEs(Pos(Zero)) 67.83/34.92 new_esEs(Pos(Succ(x0))) 67.83/34.92 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS02(x0, x1) 67.83/34.92 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.92 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.92 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS1(Zero, x0) 67.83/34.92 new_primEqInt(x0) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.92 new_rem(Pos(x0), Neg(Zero)) 67.83/34.92 new_rem(Neg(x0), Pos(Zero)) 67.83/34.92 new_primMinusNatS0(x0) 67.83/34.92 new_primEqInt2 67.83/34.92 new_esEs(Neg(Zero)) 67.83/34.92 new_esEs(Neg(Succ(x0))) 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.92 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.92 67.83/34.92 We have to consider all minimal (P,Q,R)-chains. 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (390) TransformationProof (EQUIVALENT) 67.83/34.92 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Zero), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.92 67.83/34.92 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.92 67.83/34.92 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (391) 67.83/34.92 Obligation: 67.83/34.92 Q DP problem: 67.83/34.92 The TRS P consists of the following rules: 67.83/34.92 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.92 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 67.83/34.92 The TRS R consists of the following rules: 67.83/34.92 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.92 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.92 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.92 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.92 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.92 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.92 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.92 new_error -> error([]) 67.83/34.92 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.92 new_primEqInt2 -> True 67.83/34.92 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.92 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS1 -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.92 new_primEqInt1 -> True 67.83/34.92 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primEqInt0(vuz3260) -> False 67.83/34.92 new_primEqInt(vuz3250) -> False 67.83/34.92 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 67.83/34.92 The set Q consists of the following terms: 67.83/34.92 67.83/34.92 new_rem(Neg(x0), Neg(Zero)) 67.83/34.92 new_primEqInt1 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.92 new_primMinusNatS1 67.83/34.92 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.92 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.92 new_primMinusNatS2(Zero, Zero) 67.83/34.92 new_error 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) 67.83/34.92 new_rem(Pos(x0), Pos(Zero)) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.92 new_primEqInt0(x0) 67.83/34.92 new_esEs(Pos(Zero)) 67.83/34.92 new_esEs(Pos(Succ(x0))) 67.83/34.92 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS02(x0, x1) 67.83/34.92 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.92 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.92 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS1(Zero, x0) 67.83/34.92 new_primEqInt(x0) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.92 new_rem(Pos(x0), Neg(Zero)) 67.83/34.92 new_rem(Neg(x0), Pos(Zero)) 67.83/34.92 new_primMinusNatS0(x0) 67.83/34.92 new_primEqInt2 67.83/34.92 new_esEs(Neg(Zero)) 67.83/34.92 new_esEs(Neg(Succ(x0))) 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.92 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.92 67.83/34.92 We have to consider all minimal (P,Q,R)-chains. 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (392) TransformationProof (EQUIVALENT) 67.83/34.92 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.92 67.83/34.92 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2))))))) 67.83/34.92 67.83/34.92 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (393) 67.83/34.92 Obligation: 67.83/34.92 Q DP problem: 67.83/34.92 The TRS P consists of the following rules: 67.83/34.92 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.92 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 67.83/34.92 The TRS R consists of the following rules: 67.83/34.92 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.92 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.92 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.92 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.92 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.92 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.92 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.92 new_error -> error([]) 67.83/34.92 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.92 new_primEqInt2 -> True 67.83/34.92 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.92 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS1 -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.92 new_primEqInt1 -> True 67.83/34.92 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primEqInt0(vuz3260) -> False 67.83/34.92 new_primEqInt(vuz3250) -> False 67.83/34.92 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 67.83/34.92 The set Q consists of the following terms: 67.83/34.92 67.83/34.92 new_rem(Neg(x0), Neg(Zero)) 67.83/34.92 new_primEqInt1 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.92 new_primMinusNatS1 67.83/34.92 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.92 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.92 new_primMinusNatS2(Zero, Zero) 67.83/34.92 new_error 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) 67.83/34.92 new_rem(Pos(x0), Pos(Zero)) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.92 new_primEqInt0(x0) 67.83/34.92 new_esEs(Pos(Zero)) 67.83/34.92 new_esEs(Pos(Succ(x0))) 67.83/34.92 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS02(x0, x1) 67.83/34.92 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.92 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.92 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS1(Zero, x0) 67.83/34.92 new_primEqInt(x0) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.92 new_rem(Pos(x0), Neg(Zero)) 67.83/34.92 new_rem(Neg(x0), Pos(Zero)) 67.83/34.92 new_primMinusNatS0(x0) 67.83/34.92 new_primEqInt2 67.83/34.92 new_esEs(Neg(Zero)) 67.83/34.92 new_esEs(Neg(Succ(x0))) 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.92 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.92 67.83/34.92 We have to consider all minimal (P,Q,R)-chains. 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (394) TransformationProof (EQUIVALENT) 67.83/34.92 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) at position [0] we obtained the following new rules [LPAR04]: 67.83/34.92 67.83/34.92 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.92 67.83/34.92 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (395) 67.83/34.92 Obligation: 67.83/34.92 Q DP problem: 67.83/34.92 The TRS P consists of the following rules: 67.83/34.92 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.92 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 67.83/34.92 The TRS R consists of the following rules: 67.83/34.92 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.92 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.92 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.92 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.92 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.92 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.92 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.92 new_error -> error([]) 67.83/34.92 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.92 new_primEqInt2 -> True 67.83/34.92 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.92 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS1 -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.92 new_primEqInt1 -> True 67.83/34.92 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primEqInt0(vuz3260) -> False 67.83/34.92 new_primEqInt(vuz3250) -> False 67.83/34.92 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 67.83/34.92 The set Q consists of the following terms: 67.83/34.92 67.83/34.92 new_rem(Neg(x0), Neg(Zero)) 67.83/34.92 new_primEqInt1 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.92 new_primMinusNatS1 67.83/34.92 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.92 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.92 new_primMinusNatS2(Zero, Zero) 67.83/34.92 new_error 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) 67.83/34.92 new_rem(Pos(x0), Pos(Zero)) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.92 new_primEqInt0(x0) 67.83/34.92 new_esEs(Pos(Zero)) 67.83/34.92 new_esEs(Pos(Succ(x0))) 67.83/34.92 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS02(x0, x1) 67.83/34.92 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.92 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.92 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS1(Zero, x0) 67.83/34.92 new_primEqInt(x0) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.92 new_rem(Pos(x0), Neg(Zero)) 67.83/34.92 new_rem(Neg(x0), Pos(Zero)) 67.83/34.92 new_primMinusNatS0(x0) 67.83/34.92 new_primEqInt2 67.83/34.92 new_esEs(Neg(Zero)) 67.83/34.92 new_esEs(Neg(Succ(x0))) 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.92 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.92 67.83/34.92 We have to consider all minimal (P,Q,R)-chains. 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (396) TransformationProof (EQUIVALENT) 67.83/34.92 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.92 67.83/34.92 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.92 67.83/34.92 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (397) 67.83/34.92 Obligation: 67.83/34.92 Q DP problem: 67.83/34.92 The TRS P consists of the following rules: 67.83/34.92 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.92 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 67.83/34.92 The TRS R consists of the following rules: 67.83/34.92 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.92 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.92 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.92 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.92 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.92 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.92 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.92 new_error -> error([]) 67.83/34.92 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.92 new_primEqInt2 -> True 67.83/34.92 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.92 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS1 -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.92 new_primEqInt1 -> True 67.83/34.92 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primEqInt0(vuz3260) -> False 67.83/34.92 new_primEqInt(vuz3250) -> False 67.83/34.92 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 67.83/34.92 The set Q consists of the following terms: 67.83/34.92 67.83/34.92 new_rem(Neg(x0), Neg(Zero)) 67.83/34.92 new_primEqInt1 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.92 new_primMinusNatS1 67.83/34.92 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.92 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.92 new_primMinusNatS2(Zero, Zero) 67.83/34.92 new_error 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) 67.83/34.92 new_rem(Pos(x0), Pos(Zero)) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.92 new_primEqInt0(x0) 67.83/34.92 new_esEs(Pos(Zero)) 67.83/34.92 new_esEs(Pos(Succ(x0))) 67.83/34.92 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS02(x0, x1) 67.83/34.92 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.92 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.92 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS1(Zero, x0) 67.83/34.92 new_primEqInt(x0) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.92 new_rem(Pos(x0), Neg(Zero)) 67.83/34.92 new_rem(Neg(x0), Pos(Zero)) 67.83/34.92 new_primMinusNatS0(x0) 67.83/34.92 new_primEqInt2 67.83/34.92 new_esEs(Neg(Zero)) 67.83/34.92 new_esEs(Neg(Succ(x0))) 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.92 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.92 67.83/34.92 We have to consider all minimal (P,Q,R)-chains. 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (398) TransformationProof (EQUIVALENT) 67.83/34.92 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.92 67.83/34.92 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2))))))) 67.83/34.92 67.83/34.92 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (399) 67.83/34.92 Obligation: 67.83/34.92 Q DP problem: 67.83/34.92 The TRS P consists of the following rules: 67.83/34.92 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.92 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 67.83/34.92 The TRS R consists of the following rules: 67.83/34.92 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.92 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.92 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.92 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.92 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.92 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.92 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.92 new_error -> error([]) 67.83/34.92 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.92 new_primEqInt2 -> True 67.83/34.92 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.92 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS1 -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.92 new_primEqInt1 -> True 67.83/34.92 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primEqInt0(vuz3260) -> False 67.83/34.92 new_primEqInt(vuz3250) -> False 67.83/34.92 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 67.83/34.92 The set Q consists of the following terms: 67.83/34.92 67.83/34.92 new_rem(Neg(x0), Neg(Zero)) 67.83/34.92 new_primEqInt1 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.92 new_primMinusNatS1 67.83/34.92 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.92 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.92 new_primMinusNatS2(Zero, Zero) 67.83/34.92 new_error 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) 67.83/34.92 new_rem(Pos(x0), Pos(Zero)) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.92 new_primEqInt0(x0) 67.83/34.92 new_esEs(Pos(Zero)) 67.83/34.92 new_esEs(Pos(Succ(x0))) 67.83/34.92 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS02(x0, x1) 67.83/34.92 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.92 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.92 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS1(Zero, x0) 67.83/34.92 new_primEqInt(x0) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.92 new_rem(Pos(x0), Neg(Zero)) 67.83/34.92 new_rem(Neg(x0), Pos(Zero)) 67.83/34.92 new_primMinusNatS0(x0) 67.83/34.92 new_primEqInt2 67.83/34.92 new_esEs(Neg(Zero)) 67.83/34.92 new_esEs(Neg(Succ(x0))) 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.92 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.92 67.83/34.92 We have to consider all minimal (P,Q,R)-chains. 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (400) TransformationProof (EQUIVALENT) 67.83/34.92 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.92 67.83/34.92 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.92 67.83/34.92 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (401) 67.83/34.92 Obligation: 67.83/34.92 Q DP problem: 67.83/34.92 The TRS P consists of the following rules: 67.83/34.92 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.92 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 67.83/34.92 The TRS R consists of the following rules: 67.83/34.92 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.92 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.92 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.92 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.92 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.92 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.92 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.92 new_error -> error([]) 67.83/34.92 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.92 new_primEqInt2 -> True 67.83/34.92 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.92 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS1 -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.92 new_primEqInt1 -> True 67.83/34.92 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primEqInt0(vuz3260) -> False 67.83/34.92 new_primEqInt(vuz3250) -> False 67.83/34.92 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 67.83/34.92 The set Q consists of the following terms: 67.83/34.92 67.83/34.92 new_rem(Neg(x0), Neg(Zero)) 67.83/34.92 new_primEqInt1 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.92 new_primMinusNatS1 67.83/34.92 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.92 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.92 new_primMinusNatS2(Zero, Zero) 67.83/34.92 new_error 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) 67.83/34.92 new_rem(Pos(x0), Pos(Zero)) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.92 new_primEqInt0(x0) 67.83/34.92 new_esEs(Pos(Zero)) 67.83/34.92 new_esEs(Pos(Succ(x0))) 67.83/34.92 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS02(x0, x1) 67.83/34.92 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.92 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.92 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS1(Zero, x0) 67.83/34.92 new_primEqInt(x0) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.92 new_rem(Pos(x0), Neg(Zero)) 67.83/34.92 new_rem(Neg(x0), Pos(Zero)) 67.83/34.92 new_primMinusNatS0(x0) 67.83/34.92 new_primEqInt2 67.83/34.92 new_esEs(Neg(Zero)) 67.83/34.92 new_esEs(Neg(Succ(x0))) 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.92 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.92 67.83/34.92 We have to consider all minimal (P,Q,R)-chains. 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (402) TransformationProof (EQUIVALENT) 67.83/34.92 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.92 67.83/34.92 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2))))))) 67.83/34.92 67.83/34.92 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (403) 67.83/34.92 Obligation: 67.83/34.92 Q DP problem: 67.83/34.92 The TRS P consists of the following rules: 67.83/34.92 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.92 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 67.83/34.92 The TRS R consists of the following rules: 67.83/34.92 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.92 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.92 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.92 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.92 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.92 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.92 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.92 new_error -> error([]) 67.83/34.92 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.92 new_primEqInt2 -> True 67.83/34.92 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.92 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS1 -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.92 new_primEqInt1 -> True 67.83/34.92 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primEqInt0(vuz3260) -> False 67.83/34.92 new_primEqInt(vuz3250) -> False 67.83/34.92 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 67.83/34.92 The set Q consists of the following terms: 67.83/34.92 67.83/34.92 new_rem(Neg(x0), Neg(Zero)) 67.83/34.92 new_primEqInt1 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.92 new_primMinusNatS1 67.83/34.92 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.92 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.92 new_primMinusNatS2(Zero, Zero) 67.83/34.92 new_error 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) 67.83/34.92 new_rem(Pos(x0), Pos(Zero)) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.92 new_primEqInt0(x0) 67.83/34.92 new_esEs(Pos(Zero)) 67.83/34.92 new_esEs(Pos(Succ(x0))) 67.83/34.92 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS02(x0, x1) 67.83/34.92 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.92 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.92 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS1(Zero, x0) 67.83/34.92 new_primEqInt(x0) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.92 new_rem(Pos(x0), Neg(Zero)) 67.83/34.92 new_rem(Neg(x0), Pos(Zero)) 67.83/34.92 new_primMinusNatS0(x0) 67.83/34.92 new_primEqInt2 67.83/34.92 new_esEs(Neg(Zero)) 67.83/34.92 new_esEs(Neg(Succ(x0))) 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.92 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.92 67.83/34.92 We have to consider all minimal (P,Q,R)-chains. 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (404) TransformationProof (EQUIVALENT) 67.83/34.92 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Zero, Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.92 67.83/34.92 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.92 67.83/34.92 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (405) 67.83/34.92 Obligation: 67.83/34.92 Q DP problem: 67.83/34.92 The TRS P consists of the following rules: 67.83/34.92 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.92 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 67.83/34.92 The TRS R consists of the following rules: 67.83/34.92 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.92 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.92 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.92 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.92 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.92 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.92 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.92 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.92 new_error -> error([]) 67.83/34.92 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.92 new_primEqInt2 -> True 67.83/34.92 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.92 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.92 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.92 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primMinusNatS1 -> Zero 67.83/34.92 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.92 new_primEqInt1 -> True 67.83/34.92 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.92 new_primEqInt0(vuz3260) -> False 67.83/34.92 new_primEqInt(vuz3250) -> False 67.83/34.92 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.92 67.83/34.92 The set Q consists of the following terms: 67.83/34.92 67.83/34.92 new_rem(Neg(x0), Neg(Zero)) 67.83/34.92 new_primEqInt1 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.92 new_primMinusNatS1 67.83/34.92 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.92 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.92 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.92 new_primMinusNatS2(Zero, Zero) 67.83/34.92 new_error 67.83/34.92 new_primModNatS1(Succ(Zero), Zero) 67.83/34.92 new_rem(Pos(x0), Pos(Zero)) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.92 new_primEqInt0(x0) 67.83/34.92 new_esEs(Pos(Zero)) 67.83/34.92 new_esEs(Pos(Succ(x0))) 67.83/34.92 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS02(x0, x1) 67.83/34.92 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.92 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.92 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.92 new_primModNatS1(Zero, x0) 67.83/34.92 new_primEqInt(x0) 67.83/34.92 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.92 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.92 new_rem(Pos(x0), Neg(Zero)) 67.83/34.92 new_rem(Neg(x0), Pos(Zero)) 67.83/34.92 new_primMinusNatS0(x0) 67.83/34.92 new_primEqInt2 67.83/34.92 new_esEs(Neg(Zero)) 67.83/34.92 new_esEs(Neg(Succ(x0))) 67.83/34.92 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.92 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.92 67.83/34.92 We have to consider all minimal (P,Q,R)-chains. 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (406) TransformationProof (EQUIVALENT) 67.83/34.92 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS2(Succ(x2), Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.92 67.83/34.92 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2))))))) 67.83/34.92 67.83/34.92 67.83/34.92 ---------------------------------------- 67.83/34.92 67.83/34.92 (407) 67.83/34.92 Obligation: 67.83/34.92 Q DP problem: 67.83/34.92 The TRS P consists of the following rules: 67.83/34.92 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.92 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.92 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.92 67.83/34.92 The TRS R consists of the following rules: 67.83/34.92 67.83/34.92 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.93 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.93 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.93 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.93 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.93 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.93 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.93 new_error -> error([]) 67.83/34.93 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.93 new_primEqInt2 -> True 67.83/34.93 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.93 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS1 -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.93 new_primEqInt1 -> True 67.83/34.93 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primEqInt0(vuz3260) -> False 67.83/34.93 new_primEqInt(vuz3250) -> False 67.83/34.93 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 67.83/34.93 The set Q consists of the following terms: 67.83/34.93 67.83/34.93 new_rem(Neg(x0), Neg(Zero)) 67.83/34.93 new_primEqInt1 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.93 new_primMinusNatS1 67.83/34.93 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.93 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.93 new_primMinusNatS2(Zero, Zero) 67.83/34.93 new_error 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) 67.83/34.93 new_rem(Pos(x0), Pos(Zero)) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.93 new_primEqInt0(x0) 67.83/34.93 new_esEs(Pos(Zero)) 67.83/34.93 new_esEs(Pos(Succ(x0))) 67.83/34.93 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS02(x0, x1) 67.83/34.93 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.93 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.93 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS1(Zero, x0) 67.83/34.93 new_primEqInt(x0) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.93 new_rem(Pos(x0), Neg(Zero)) 67.83/34.93 new_rem(Neg(x0), Pos(Zero)) 67.83/34.93 new_primMinusNatS0(x0) 67.83/34.93 new_primEqInt2 67.83/34.93 new_esEs(Neg(Zero)) 67.83/34.93 new_esEs(Neg(Succ(x0))) 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.93 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.93 67.83/34.93 We have to consider all minimal (P,Q,R)-chains. 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (408) TransformationProof (EQUIVALENT) 67.83/34.93 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.93 67.83/34.93 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.93 67.83/34.93 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (409) 67.83/34.93 Obligation: 67.83/34.93 Q DP problem: 67.83/34.93 The TRS P consists of the following rules: 67.83/34.93 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.93 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 67.83/34.93 The TRS R consists of the following rules: 67.83/34.93 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.93 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.93 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.93 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.93 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.93 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.93 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.93 new_error -> error([]) 67.83/34.93 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.93 new_primEqInt2 -> True 67.83/34.93 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.93 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS1 -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.93 new_primEqInt1 -> True 67.83/34.93 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primEqInt0(vuz3260) -> False 67.83/34.93 new_primEqInt(vuz3250) -> False 67.83/34.93 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 67.83/34.93 The set Q consists of the following terms: 67.83/34.93 67.83/34.93 new_rem(Neg(x0), Neg(Zero)) 67.83/34.93 new_primEqInt1 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.93 new_primMinusNatS1 67.83/34.93 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.93 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.93 new_primMinusNatS2(Zero, Zero) 67.83/34.93 new_error 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) 67.83/34.93 new_rem(Pos(x0), Pos(Zero)) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.93 new_primEqInt0(x0) 67.83/34.93 new_esEs(Pos(Zero)) 67.83/34.93 new_esEs(Pos(Succ(x0))) 67.83/34.93 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS02(x0, x1) 67.83/34.93 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.93 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.93 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS1(Zero, x0) 67.83/34.93 new_primEqInt(x0) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.93 new_rem(Pos(x0), Neg(Zero)) 67.83/34.93 new_rem(Neg(x0), Pos(Zero)) 67.83/34.93 new_primMinusNatS0(x0) 67.83/34.93 new_primEqInt2 67.83/34.93 new_esEs(Neg(Zero)) 67.83/34.93 new_esEs(Neg(Succ(x0))) 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.93 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.93 67.83/34.93 We have to consider all minimal (P,Q,R)-chains. 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (410) DependencyGraphProof (EQUIVALENT) 67.83/34.93 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (411) 67.83/34.93 Obligation: 67.83/34.93 Q DP problem: 67.83/34.93 The TRS P consists of the following rules: 67.83/34.93 67.83/34.93 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.93 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 67.83/34.93 The TRS R consists of the following rules: 67.83/34.93 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.93 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.93 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.93 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.93 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.93 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.93 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.93 new_error -> error([]) 67.83/34.93 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.93 new_primEqInt2 -> True 67.83/34.93 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.93 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS1 -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.93 new_primEqInt1 -> True 67.83/34.93 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primEqInt0(vuz3260) -> False 67.83/34.93 new_primEqInt(vuz3250) -> False 67.83/34.93 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 67.83/34.93 The set Q consists of the following terms: 67.83/34.93 67.83/34.93 new_rem(Neg(x0), Neg(Zero)) 67.83/34.93 new_primEqInt1 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.93 new_primMinusNatS1 67.83/34.93 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.93 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.93 new_primMinusNatS2(Zero, Zero) 67.83/34.93 new_error 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) 67.83/34.93 new_rem(Pos(x0), Pos(Zero)) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.93 new_primEqInt0(x0) 67.83/34.93 new_esEs(Pos(Zero)) 67.83/34.93 new_esEs(Pos(Succ(x0))) 67.83/34.93 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS02(x0, x1) 67.83/34.93 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.93 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.93 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS1(Zero, x0) 67.83/34.93 new_primEqInt(x0) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.93 new_rem(Pos(x0), Neg(Zero)) 67.83/34.93 new_rem(Neg(x0), Pos(Zero)) 67.83/34.93 new_primMinusNatS0(x0) 67.83/34.93 new_primEqInt2 67.83/34.93 new_esEs(Neg(Zero)) 67.83/34.93 new_esEs(Neg(Succ(x0))) 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.93 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.93 67.83/34.93 We have to consider all minimal (P,Q,R)-chains. 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (412) TransformationProof (EQUIVALENT) 67.83/34.93 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Zero)))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) at position [0] we obtained the following new rules [LPAR04]: 67.83/34.93 67.83/34.93 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.93 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0))))))) 67.83/34.93 67.83/34.93 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (413) 67.83/34.93 Obligation: 67.83/34.93 Q DP problem: 67.83/34.93 The TRS P consists of the following rules: 67.83/34.93 67.83/34.93 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.93 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 67.83/34.93 The TRS R consists of the following rules: 67.83/34.93 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.93 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.93 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.93 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.93 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.93 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.93 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.93 new_error -> error([]) 67.83/34.93 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.93 new_primEqInt2 -> True 67.83/34.93 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.93 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS1 -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.93 new_primEqInt1 -> True 67.83/34.93 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primEqInt0(vuz3260) -> False 67.83/34.93 new_primEqInt(vuz3250) -> False 67.83/34.93 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 67.83/34.93 The set Q consists of the following terms: 67.83/34.93 67.83/34.93 new_rem(Neg(x0), Neg(Zero)) 67.83/34.93 new_primEqInt1 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.93 new_primMinusNatS1 67.83/34.93 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.93 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.93 new_primMinusNatS2(Zero, Zero) 67.83/34.93 new_error 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) 67.83/34.93 new_rem(Pos(x0), Pos(Zero)) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.93 new_primEqInt0(x0) 67.83/34.93 new_esEs(Pos(Zero)) 67.83/34.93 new_esEs(Pos(Succ(x0))) 67.83/34.93 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS02(x0, x1) 67.83/34.93 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.93 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.93 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS1(Zero, x0) 67.83/34.93 new_primEqInt(x0) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.93 new_rem(Pos(x0), Neg(Zero)) 67.83/34.93 new_rem(Neg(x0), Pos(Zero)) 67.83/34.93 new_primMinusNatS0(x0) 67.83/34.93 new_primEqInt2 67.83/34.93 new_esEs(Neg(Zero)) 67.83/34.93 new_esEs(Neg(Succ(x0))) 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.93 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.93 67.83/34.93 We have to consider all minimal (P,Q,R)-chains. 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (414) TransformationProof (EQUIVALENT) 67.83/34.93 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Succ(Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) at position [0] we obtained the following new rules [LPAR04]: 67.83/34.93 67.83/34.93 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.93 67.83/34.93 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (415) 67.83/34.93 Obligation: 67.83/34.93 Q DP problem: 67.83/34.93 The TRS P consists of the following rules: 67.83/34.93 67.83/34.93 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.93 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 67.83/34.93 The TRS R consists of the following rules: 67.83/34.93 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.93 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.93 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.93 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.93 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.93 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.93 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.93 new_error -> error([]) 67.83/34.93 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.93 new_primEqInt2 -> True 67.83/34.93 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.93 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS1 -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.93 new_primEqInt1 -> True 67.83/34.93 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primEqInt0(vuz3260) -> False 67.83/34.93 new_primEqInt(vuz3250) -> False 67.83/34.93 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 67.83/34.93 The set Q consists of the following terms: 67.83/34.93 67.83/34.93 new_rem(Neg(x0), Neg(Zero)) 67.83/34.93 new_primEqInt1 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.93 new_primMinusNatS1 67.83/34.93 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.93 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.93 new_primMinusNatS2(Zero, Zero) 67.83/34.93 new_error 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) 67.83/34.93 new_rem(Pos(x0), Pos(Zero)) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.93 new_primEqInt0(x0) 67.83/34.93 new_esEs(Pos(Zero)) 67.83/34.93 new_esEs(Pos(Succ(x0))) 67.83/34.93 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS02(x0, x1) 67.83/34.93 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.93 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.93 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS1(Zero, x0) 67.83/34.93 new_primEqInt(x0) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.93 new_rem(Pos(x0), Neg(Zero)) 67.83/34.93 new_rem(Neg(x0), Pos(Zero)) 67.83/34.93 new_primMinusNatS0(x0) 67.83/34.93 new_primEqInt2 67.83/34.93 new_esEs(Neg(Zero)) 67.83/34.93 new_esEs(Neg(Succ(x0))) 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.93 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.93 67.83/34.93 We have to consider all minimal (P,Q,R)-chains. 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (416) TransformationProof (EQUIVALENT) 67.83/34.93 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_primEqInt0(Zero), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) at position [0] we obtained the following new rules [LPAR04]: 67.83/34.93 67.83/34.93 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.93 67.83/34.93 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (417) 67.83/34.93 Obligation: 67.83/34.93 Q DP problem: 67.83/34.93 The TRS P consists of the following rules: 67.83/34.93 67.83/34.93 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.93 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 67.83/34.93 The TRS R consists of the following rules: 67.83/34.93 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.93 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.93 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.93 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.93 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.93 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.93 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.93 new_error -> error([]) 67.83/34.93 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.93 new_primEqInt2 -> True 67.83/34.93 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.93 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS1 -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.93 new_primEqInt1 -> True 67.83/34.93 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primEqInt0(vuz3260) -> False 67.83/34.93 new_primEqInt(vuz3250) -> False 67.83/34.93 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 67.83/34.93 The set Q consists of the following terms: 67.83/34.93 67.83/34.93 new_rem(Neg(x0), Neg(Zero)) 67.83/34.93 new_primEqInt1 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.93 new_primMinusNatS1 67.83/34.93 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.93 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.93 new_primMinusNatS2(Zero, Zero) 67.83/34.93 new_error 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) 67.83/34.93 new_rem(Pos(x0), Pos(Zero)) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.93 new_primEqInt0(x0) 67.83/34.93 new_esEs(Pos(Zero)) 67.83/34.93 new_esEs(Pos(Succ(x0))) 67.83/34.93 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS02(x0, x1) 67.83/34.93 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.93 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.93 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS1(Zero, x0) 67.83/34.93 new_primEqInt(x0) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.93 new_rem(Pos(x0), Neg(Zero)) 67.83/34.93 new_rem(Neg(x0), Pos(Zero)) 67.83/34.93 new_primMinusNatS0(x0) 67.83/34.93 new_primEqInt2 67.83/34.93 new_esEs(Neg(Zero)) 67.83/34.93 new_esEs(Neg(Succ(x0))) 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.93 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.93 67.83/34.93 We have to consider all minimal (P,Q,R)-chains. 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (418) TransformationProof (EQUIVALENT) 67.83/34.93 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(x0))))) at position [0] we obtained the following new rules [LPAR04]: 67.83/34.93 67.83/34.93 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0))))))) 67.83/34.93 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.93 67.83/34.93 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (419) 67.83/34.93 Obligation: 67.83/34.93 Q DP problem: 67.83/34.93 The TRS P consists of the following rules: 67.83/34.93 67.83/34.93 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.93 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 67.83/34.93 The TRS R consists of the following rules: 67.83/34.93 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.93 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.93 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.93 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.93 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.93 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.93 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.93 new_error -> error([]) 67.83/34.93 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.93 new_primEqInt2 -> True 67.83/34.93 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.93 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS1 -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.93 new_primEqInt1 -> True 67.83/34.93 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primEqInt0(vuz3260) -> False 67.83/34.93 new_primEqInt(vuz3250) -> False 67.83/34.93 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 67.83/34.93 The set Q consists of the following terms: 67.83/34.93 67.83/34.93 new_rem(Neg(x0), Neg(Zero)) 67.83/34.93 new_primEqInt1 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.93 new_primMinusNatS1 67.83/34.93 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.93 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.93 new_primMinusNatS2(Zero, Zero) 67.83/34.93 new_error 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) 67.83/34.93 new_rem(Pos(x0), Pos(Zero)) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.93 new_primEqInt0(x0) 67.83/34.93 new_esEs(Pos(Zero)) 67.83/34.93 new_esEs(Pos(Succ(x0))) 67.83/34.93 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS02(x0, x1) 67.83/34.93 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.93 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.93 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS1(Zero, x0) 67.83/34.93 new_primEqInt(x0) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.93 new_rem(Pos(x0), Neg(Zero)) 67.83/34.93 new_rem(Neg(x0), Pos(Zero)) 67.83/34.93 new_primMinusNatS0(x0) 67.83/34.93 new_primEqInt2 67.83/34.93 new_esEs(Neg(Zero)) 67.83/34.93 new_esEs(Neg(Succ(x0))) 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.93 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.93 67.83/34.93 We have to consider all minimal (P,Q,R)-chains. 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (420) TransformationProof (EQUIVALENT) 67.83/34.93 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS0(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.93 67.83/34.93 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0))))))) 67.83/34.93 67.83/34.93 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (421) 67.83/34.93 Obligation: 67.83/34.93 Q DP problem: 67.83/34.93 The TRS P consists of the following rules: 67.83/34.93 67.83/34.93 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.93 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 67.83/34.93 The TRS R consists of the following rules: 67.83/34.93 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.93 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.93 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.93 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.93 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.93 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.93 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.93 new_error -> error([]) 67.83/34.93 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.93 new_primEqInt2 -> True 67.83/34.93 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.93 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS1 -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.93 new_primEqInt1 -> True 67.83/34.93 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primEqInt0(vuz3260) -> False 67.83/34.93 new_primEqInt(vuz3250) -> False 67.83/34.93 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 67.83/34.93 The set Q consists of the following terms: 67.83/34.93 67.83/34.93 new_rem(Neg(x0), Neg(Zero)) 67.83/34.93 new_primEqInt1 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.93 new_primMinusNatS1 67.83/34.93 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.93 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.93 new_primMinusNatS2(Zero, Zero) 67.83/34.93 new_error 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) 67.83/34.93 new_rem(Pos(x0), Pos(Zero)) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.93 new_primEqInt0(x0) 67.83/34.93 new_esEs(Pos(Zero)) 67.83/34.93 new_esEs(Pos(Succ(x0))) 67.83/34.93 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS02(x0, x1) 67.83/34.93 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.93 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.93 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS1(Zero, x0) 67.83/34.93 new_primEqInt(x0) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.93 new_rem(Pos(x0), Neg(Zero)) 67.83/34.93 new_rem(Neg(x0), Pos(Zero)) 67.83/34.93 new_primMinusNatS0(x0) 67.83/34.93 new_primEqInt2 67.83/34.93 new_esEs(Neg(Zero)) 67.83/34.93 new_esEs(Neg(Succ(x0))) 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.93 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.93 67.83/34.93 We have to consider all minimal (P,Q,R)-chains. 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (422) TransformationProof (EQUIVALENT) 67.83/34.93 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(new_primMinusNatS1, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) at position [0,0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.93 67.83/34.93 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.93 67.83/34.93 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (423) 67.83/34.93 Obligation: 67.83/34.93 Q DP problem: 67.83/34.93 The TRS P consists of the following rules: 67.83/34.93 67.83/34.93 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.93 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 67.83/34.93 The TRS R consists of the following rules: 67.83/34.93 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.93 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.93 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.93 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.93 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.93 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.93 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.93 new_error -> error([]) 67.83/34.93 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.93 new_primEqInt2 -> True 67.83/34.93 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.93 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS1 -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.93 new_primEqInt1 -> True 67.83/34.93 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primEqInt0(vuz3260) -> False 67.83/34.93 new_primEqInt(vuz3250) -> False 67.83/34.93 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 67.83/34.93 The set Q consists of the following terms: 67.83/34.93 67.83/34.93 new_rem(Neg(x0), Neg(Zero)) 67.83/34.93 new_primEqInt1 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.93 new_primMinusNatS1 67.83/34.93 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.93 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.93 new_primMinusNatS2(Zero, Zero) 67.83/34.93 new_error 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) 67.83/34.93 new_rem(Pos(x0), Pos(Zero)) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.93 new_primEqInt0(x0) 67.83/34.93 new_esEs(Pos(Zero)) 67.83/34.93 new_esEs(Pos(Succ(x0))) 67.83/34.93 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS02(x0, x1) 67.83/34.93 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.93 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.93 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS1(Zero, x0) 67.83/34.93 new_primEqInt(x0) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.93 new_rem(Pos(x0), Neg(Zero)) 67.83/34.93 new_rem(Neg(x0), Pos(Zero)) 67.83/34.93 new_primMinusNatS0(x0) 67.83/34.93 new_primEqInt2 67.83/34.93 new_esEs(Neg(Zero)) 67.83/34.93 new_esEs(Neg(Succ(x0))) 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.93 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.93 67.83/34.93 We have to consider all minimal (P,Q,R)-chains. 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (424) TransformationProof (EQUIVALENT) 67.83/34.93 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Zero, Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) at position [0,0,0] we obtained the following new rules [LPAR04]: 67.83/34.93 67.83/34.93 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.93 67.83/34.93 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (425) 67.83/34.93 Obligation: 67.83/34.93 Q DP problem: 67.83/34.93 The TRS P consists of the following rules: 67.83/34.93 67.83/34.93 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.93 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(new_esEs(Neg(Zero)), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 67.83/34.93 The TRS R consists of the following rules: 67.83/34.93 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.93 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.93 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.93 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.93 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.93 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.93 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.93 new_error -> error([]) 67.83/34.93 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.93 new_primEqInt2 -> True 67.83/34.93 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.93 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS1 -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.93 new_primEqInt1 -> True 67.83/34.93 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primEqInt0(vuz3260) -> False 67.83/34.93 new_primEqInt(vuz3250) -> False 67.83/34.93 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 67.83/34.93 The set Q consists of the following terms: 67.83/34.93 67.83/34.93 new_rem(Neg(x0), Neg(Zero)) 67.83/34.93 new_primEqInt1 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.93 new_primMinusNatS1 67.83/34.93 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.93 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.93 new_primMinusNatS2(Zero, Zero) 67.83/34.93 new_error 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) 67.83/34.93 new_rem(Pos(x0), Pos(Zero)) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.93 new_primEqInt0(x0) 67.83/34.93 new_esEs(Pos(Zero)) 67.83/34.93 new_esEs(Pos(Succ(x0))) 67.83/34.93 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS02(x0, x1) 67.83/34.93 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.93 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.93 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS1(Zero, x0) 67.83/34.93 new_primEqInt(x0) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.93 new_rem(Pos(x0), Neg(Zero)) 67.83/34.93 new_rem(Neg(x0), Pos(Zero)) 67.83/34.93 new_primMinusNatS0(x0) 67.83/34.93 new_primEqInt2 67.83/34.93 new_esEs(Neg(Zero)) 67.83/34.93 new_esEs(Neg(Succ(x0))) 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.93 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.93 67.83/34.93 We have to consider all minimal (P,Q,R)-chains. 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (426) DependencyGraphProof (EQUIVALENT) 67.83/34.93 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (427) 67.83/34.93 Obligation: 67.83/34.93 Q DP problem: 67.83/34.93 The TRS P consists of the following rules: 67.83/34.93 67.83/34.93 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 67.83/34.93 The TRS R consists of the following rules: 67.83/34.93 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.93 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.93 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.93 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.93 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.93 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.93 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.93 new_error -> error([]) 67.83/34.93 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.93 new_primEqInt2 -> True 67.83/34.93 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.93 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS1 -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.93 new_primEqInt1 -> True 67.83/34.93 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primEqInt0(vuz3260) -> False 67.83/34.93 new_primEqInt(vuz3250) -> False 67.83/34.93 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 67.83/34.93 The set Q consists of the following terms: 67.83/34.93 67.83/34.93 new_rem(Neg(x0), Neg(Zero)) 67.83/34.93 new_primEqInt1 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.93 new_primMinusNatS1 67.83/34.93 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.93 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.93 new_primMinusNatS2(Zero, Zero) 67.83/34.93 new_error 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) 67.83/34.93 new_rem(Pos(x0), Pos(Zero)) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.93 new_primEqInt0(x0) 67.83/34.93 new_esEs(Pos(Zero)) 67.83/34.93 new_esEs(Pos(Succ(x0))) 67.83/34.93 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS02(x0, x1) 67.83/34.93 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.93 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.93 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS1(Zero, x0) 67.83/34.93 new_primEqInt(x0) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.93 new_rem(Pos(x0), Neg(Zero)) 67.83/34.93 new_rem(Neg(x0), Pos(Zero)) 67.83/34.93 new_primMinusNatS0(x0) 67.83/34.93 new_primEqInt2 67.83/34.93 new_esEs(Neg(Zero)) 67.83/34.93 new_esEs(Neg(Succ(x0))) 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.93 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.93 67.83/34.93 We have to consider all minimal (P,Q,R)-chains. 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (428) QDPOrderProof (EQUIVALENT) 67.83/34.93 We use the reduction pair processor [LPAR04,JAR06]. 67.83/34.93 67.83/34.93 67.83/34.93 The following pairs can be oriented strictly and are deleted. 67.83/34.93 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x0), Zero))), Neg(Succ(Zero)), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x0), Zero))), Pos(Succ(Zero)), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 The remaining pairs can at least be oriented weakly. 67.83/34.93 Used ordering: Polynomial interpretation [POLO]: 67.83/34.93 67.83/34.93 POL(False) = 1 67.83/34.93 POL(Neg(x_1)) = x_1 67.83/34.93 POL(Pos(x_1)) = x_1 67.83/34.93 POL(Succ(x_1)) = 1 67.83/34.93 POL(True) = 0 67.83/34.93 POL(Zero) = 0 67.83/34.93 POL([]) = 1 67.83/34.93 POL(error(x_1)) = 1 + x_1 67.83/34.93 POL(new_error) = 1 67.83/34.93 POL(new_esEs(x_1)) = x_1 67.83/34.93 POL(new_gcd0Gcd'(x_1, x_2)) = 1 67.83/34.93 POL(new_gcd0Gcd'0(x_1, x_2)) = 1 67.83/34.93 POL(new_gcd0Gcd'1(x_1, x_2, x_3)) = x_1 67.83/34.93 POL(new_primEqInt(x_1)) = 1 67.83/34.93 POL(new_primEqInt0(x_1)) = 1 67.83/34.93 POL(new_primEqInt1) = 0 67.83/34.93 POL(new_primEqInt2) = 0 67.83/34.93 POL(new_primMinusNatS0(x_1)) = 1 + x_1 67.83/34.93 POL(new_primMinusNatS1) = 1 67.83/34.93 POL(new_primMinusNatS2(x_1, x_2)) = 0 67.83/34.93 POL(new_primModNatS01(x_1, x_2, x_3, x_4)) = 1 67.83/34.93 POL(new_primModNatS02(x_1, x_2)) = 1 67.83/34.93 POL(new_primModNatS1(x_1, x_2)) = x_2 67.83/34.93 POL(new_rem(x_1, x_2)) = 0 67.83/34.93 67.83/34.93 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 67.83/34.93 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.93 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.93 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.93 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.93 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.93 new_primEqInt2 -> True 67.83/34.93 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.93 new_primEqInt1 -> True 67.83/34.93 new_primEqInt(vuz3250) -> False 67.83/34.93 new_primEqInt0(vuz3260) -> False 67.83/34.93 67.83/34.93 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (429) 67.83/34.93 Obligation: 67.83/34.93 Q DP problem: 67.83/34.93 The TRS P consists of the following rules: 67.83/34.93 67.83/34.93 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 67.83/34.93 The TRS R consists of the following rules: 67.83/34.93 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.93 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.93 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.93 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.93 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.93 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.93 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.93 new_error -> error([]) 67.83/34.93 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.93 new_primEqInt2 -> True 67.83/34.93 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.93 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS1 -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.93 new_primEqInt1 -> True 67.83/34.93 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primEqInt0(vuz3260) -> False 67.83/34.93 new_primEqInt(vuz3250) -> False 67.83/34.93 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 67.83/34.93 The set Q consists of the following terms: 67.83/34.93 67.83/34.93 new_rem(Neg(x0), Neg(Zero)) 67.83/34.93 new_primEqInt1 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.93 new_primMinusNatS1 67.83/34.93 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.93 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.93 new_primMinusNatS2(Zero, Zero) 67.83/34.93 new_error 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) 67.83/34.93 new_rem(Pos(x0), Pos(Zero)) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.93 new_primEqInt0(x0) 67.83/34.93 new_esEs(Pos(Zero)) 67.83/34.93 new_esEs(Pos(Succ(x0))) 67.83/34.93 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS02(x0, x1) 67.83/34.93 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.93 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.93 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.93 new_primModNatS1(Zero, x0) 67.83/34.93 new_primEqInt(x0) 67.83/34.93 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.93 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.93 new_rem(Pos(x0), Neg(Zero)) 67.83/34.93 new_rem(Neg(x0), Pos(Zero)) 67.83/34.93 new_primMinusNatS0(x0) 67.83/34.93 new_primEqInt2 67.83/34.93 new_esEs(Neg(Zero)) 67.83/34.93 new_esEs(Neg(Succ(x0))) 67.83/34.93 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.93 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.93 67.83/34.93 We have to consider all minimal (P,Q,R)-chains. 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (430) MNOCProof (EQUIVALENT) 67.83/34.93 We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set. 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (431) 67.83/34.93 Obligation: 67.83/34.93 Q DP problem: 67.83/34.93 The TRS P consists of the following rules: 67.83/34.93 67.83/34.93 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.93 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.93 67.83/34.93 The TRS R consists of the following rules: 67.83/34.93 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.93 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.93 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.93 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.93 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.93 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.93 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.93 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.93 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.93 new_error -> error([]) 67.83/34.93 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.93 new_primEqInt2 -> True 67.83/34.93 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.93 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.93 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.93 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.93 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.93 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primMinusNatS1 -> Zero 67.83/34.93 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.93 new_primEqInt1 -> True 67.83/34.93 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.93 new_primEqInt0(vuz3260) -> False 67.83/34.93 new_primEqInt(vuz3250) -> False 67.83/34.93 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.93 67.83/34.93 Q is empty. 67.83/34.93 We have to consider all (P,Q,R)-chains. 67.83/34.93 ---------------------------------------- 67.83/34.93 67.83/34.93 (432) InductionCalculusProof (EQUIVALENT) 67.83/34.93 Note that final constraints are written in bold face. 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 For Pair new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) the following chains were created: 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x2, x3) -> new_gcd0Gcd'(x3, x2), new_gcd0Gcd'(Neg(Succ(Succ(x4))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x4))), Neg(Succ(Zero))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x3, x2)=new_gcd0Gcd'(Neg(Succ(Succ(x4))), Neg(Succ(Zero))) ==> new_gcd0Gcd'0(x2, x3)_>=_new_gcd0Gcd'(x3, x2)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Neg(Succ(Zero)), Neg(Succ(Succ(x4))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(x4))), Neg(Succ(Zero)))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x7, x8) -> new_gcd0Gcd'(x8, x7), new_gcd0Gcd'(Pos(Succ(Succ(x9))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x9))), Pos(Succ(Zero))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x8, x7)=new_gcd0Gcd'(Pos(Succ(Succ(x9))), Pos(Succ(Zero))) ==> new_gcd0Gcd'0(x7, x8)_>=_new_gcd0Gcd'(x8, x7)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Pos(Succ(Zero)), Pos(Succ(Succ(x9))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(x9))), Pos(Succ(Zero)))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x10, x11) -> new_gcd0Gcd'(x11, x10), new_gcd0Gcd'(Neg(Succ(Succ(x12))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x12))), Pos(Succ(Zero))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x11, x10)=new_gcd0Gcd'(Neg(Succ(Succ(x12))), Pos(Succ(Zero))) ==> new_gcd0Gcd'0(x10, x11)_>=_new_gcd0Gcd'(x11, x10)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Pos(Succ(Zero)), Neg(Succ(Succ(x12))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(x12))), Pos(Succ(Zero)))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x13, x14) -> new_gcd0Gcd'(x14, x13), new_gcd0Gcd'(Pos(Succ(Succ(x15))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x15))), Neg(Succ(Zero))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x14, x13)=new_gcd0Gcd'(Pos(Succ(Succ(x15))), Neg(Succ(Zero))) ==> new_gcd0Gcd'0(x13, x14)_>=_new_gcd0Gcd'(x14, x13)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Neg(Succ(Zero)), Pos(Succ(Succ(x15))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(x15))), Neg(Succ(Zero)))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x16, x17) -> new_gcd0Gcd'(x17, x16), new_gcd0Gcd'(Neg(Succ(Succ(Succ(x18)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x18)))), Neg(Succ(Succ(Zero)))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x17, x16)=new_gcd0Gcd'(Neg(Succ(Succ(Succ(x18)))), Neg(Succ(Succ(Zero)))) ==> new_gcd0Gcd'0(x16, x17)_>=_new_gcd0Gcd'(x17, x16)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x18)))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(x18)))), Neg(Succ(Succ(Zero))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x19, x20) -> new_gcd0Gcd'(x20, x19), new_gcd0Gcd'(Pos(Succ(Succ(Succ(x21)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x21)))), Pos(Succ(Succ(Zero)))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x20, x19)=new_gcd0Gcd'(Pos(Succ(Succ(Succ(x21)))), Pos(Succ(Succ(Zero)))) ==> new_gcd0Gcd'0(x19, x20)_>=_new_gcd0Gcd'(x20, x19)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x21)))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(x21)))), Pos(Succ(Succ(Zero))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x22, x23) -> new_gcd0Gcd'(x23, x22), new_gcd0Gcd'(Neg(Succ(Succ(Succ(x24)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x24)))), Pos(Succ(Succ(Zero)))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x23, x22)=new_gcd0Gcd'(Neg(Succ(Succ(Succ(x24)))), Pos(Succ(Succ(Zero)))) ==> new_gcd0Gcd'0(x22, x23)_>=_new_gcd0Gcd'(x23, x22)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x24)))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(x24)))), Pos(Succ(Succ(Zero))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x25, x26) -> new_gcd0Gcd'(x26, x25), new_gcd0Gcd'(Pos(Succ(Succ(Succ(x27)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x27)))), Neg(Succ(Succ(Zero)))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x26, x25)=new_gcd0Gcd'(Pos(Succ(Succ(Succ(x27)))), Neg(Succ(Succ(Zero)))) ==> new_gcd0Gcd'0(x25, x26)_>=_new_gcd0Gcd'(x26, x25)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x27)))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(x27)))), Neg(Succ(Succ(Zero))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x28, x29) -> new_gcd0Gcd'(x29, x28), new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x30))))), Neg(Succ(Succ(Succ(Succ(x31)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x31)), Succ(Succ(x30)), x31, x30))), Neg(Succ(Succ(Succ(Succ(x30))))), Neg(Succ(Succ(Succ(Succ(x31)))))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x29, x28)=new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x30))))), Neg(Succ(Succ(Succ(Succ(x31)))))) ==> new_gcd0Gcd'0(x28, x29)_>=_new_gcd0Gcd'(x29, x28)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Succ(x31))))), Neg(Succ(Succ(Succ(Succ(x30))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x30))))), Neg(Succ(Succ(Succ(Succ(x31))))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x32, x33) -> new_gcd0Gcd'(x33, x32), new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x34))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x34))))), Neg(Succ(Succ(Succ(Zero))))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x33, x32)=new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x34))))), Neg(Succ(Succ(Succ(Zero))))) ==> new_gcd0Gcd'0(x32, x33)_>=_new_gcd0Gcd'(x33, x32)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x34))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x34))))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x35, x36) -> new_gcd0Gcd'(x36, x35), new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x37)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x37), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x37)))))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x36, x35)=new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x37)))))) ==> new_gcd0Gcd'0(x35, x36)_>=_new_gcd0Gcd'(x36, x35)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Succ(x37))))), Neg(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x37))))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x38, x39) -> new_gcd0Gcd'(x39, x38), new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x40)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x40, Zero, x40, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x40)))))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x39, x38)=new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x40)))))) ==> new_gcd0Gcd'0(x38, x39)_>=_new_gcd0Gcd'(x39, x38)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Succ(x40))))), Neg(Succ(Succ(Zero))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x40))))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x41, x42) -> new_gcd0Gcd'(x42, x41), new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x42, x41)=new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) ==> new_gcd0Gcd'0(x41, x42)_>=_new_gcd0Gcd'(x42, x41)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Zero))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x43, x44) -> new_gcd0Gcd'(x44, x43), new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x45))))), Pos(Succ(Succ(Succ(Succ(x46)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x46)), Succ(Succ(x45)), x46, x45))), Pos(Succ(Succ(Succ(Succ(x45))))), Pos(Succ(Succ(Succ(Succ(x46)))))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x44, x43)=new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x45))))), Pos(Succ(Succ(Succ(Succ(x46)))))) ==> new_gcd0Gcd'0(x43, x44)_>=_new_gcd0Gcd'(x44, x43)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Succ(x46))))), Pos(Succ(Succ(Succ(Succ(x45))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x45))))), Pos(Succ(Succ(Succ(Succ(x46))))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x47, x48) -> new_gcd0Gcd'(x48, x47), new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x49))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x49))))), Pos(Succ(Succ(Succ(Zero))))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x48, x47)=new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x49))))), Pos(Succ(Succ(Succ(Zero))))) ==> new_gcd0Gcd'0(x47, x48)_>=_new_gcd0Gcd'(x48, x47)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x49))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x49))))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x50, x51) -> new_gcd0Gcd'(x51, x50), new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x52)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x52), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x52)))))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x51, x50)=new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x52)))))) ==> new_gcd0Gcd'0(x50, x51)_>=_new_gcd0Gcd'(x51, x50)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Succ(x52))))), Pos(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x52))))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x53, x54) -> new_gcd0Gcd'(x54, x53), new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x55)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x55, Zero, x55, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x55)))))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x54, x53)=new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x55)))))) ==> new_gcd0Gcd'0(x53, x54)_>=_new_gcd0Gcd'(x54, x53)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Succ(x55))))), Pos(Succ(Succ(Zero))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x55))))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x56, x57) -> new_gcd0Gcd'(x57, x56), new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x57, x56)=new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) ==> new_gcd0Gcd'0(x56, x57)_>=_new_gcd0Gcd'(x57, x56)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Zero))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x58, x59) -> new_gcd0Gcd'(x59, x58), new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x60))))), Pos(Succ(Succ(Succ(Succ(x61)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x61)), Succ(Succ(x60)), x61, x60))), Neg(Succ(Succ(Succ(Succ(x60))))), Pos(Succ(Succ(Succ(Succ(x61)))))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x59, x58)=new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x60))))), Pos(Succ(Succ(Succ(Succ(x61)))))) ==> new_gcd0Gcd'0(x58, x59)_>=_new_gcd0Gcd'(x59, x58)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Succ(x61))))), Neg(Succ(Succ(Succ(Succ(x60))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x60))))), Pos(Succ(Succ(Succ(Succ(x61))))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x62, x63) -> new_gcd0Gcd'(x63, x62), new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x64))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x64))))), Pos(Succ(Succ(Succ(Zero))))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x63, x62)=new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x64))))), Pos(Succ(Succ(Succ(Zero))))) ==> new_gcd0Gcd'0(x62, x63)_>=_new_gcd0Gcd'(x63, x62)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x64))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x64))))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x65, x66) -> new_gcd0Gcd'(x66, x65), new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x67)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x67), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x67)))))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x66, x65)=new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x67)))))) ==> new_gcd0Gcd'0(x65, x66)_>=_new_gcd0Gcd'(x66, x65)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Succ(x67))))), Neg(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x67))))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x68, x69) -> new_gcd0Gcd'(x69, x68), new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x70)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x70, Zero, x70, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x70)))))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x69, x68)=new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x70)))))) ==> new_gcd0Gcd'0(x68, x69)_>=_new_gcd0Gcd'(x69, x68)) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.93 67.83/34.93 (2) (new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Succ(x70))))), Neg(Succ(Succ(Zero))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x70))))))) 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 67.83/34.93 *We consider the chain new_gcd0Gcd'0(x71, x72) -> new_gcd0Gcd'(x72, x71), new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) which results in the following constraint: 67.83/34.93 67.83/34.93 (1) (new_gcd0Gcd'(x72, x71)=new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) ==> new_gcd0Gcd'0(x71, x72)_>=_new_gcd0Gcd'(x72, x71)) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Zero))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 *We consider the chain new_gcd0Gcd'0(x73, x74) -> new_gcd0Gcd'(x74, x73), new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x75))))), Neg(Succ(Succ(Succ(Succ(x76)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x76)), Succ(Succ(x75)), x76, x75))), Pos(Succ(Succ(Succ(Succ(x75))))), Neg(Succ(Succ(Succ(Succ(x76)))))) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'(x74, x73)=new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x75))))), Neg(Succ(Succ(Succ(Succ(x76)))))) ==> new_gcd0Gcd'0(x73, x74)_>=_new_gcd0Gcd'(x74, x73)) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Succ(x76))))), Pos(Succ(Succ(Succ(Succ(x75))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x75))))), Neg(Succ(Succ(Succ(Succ(x76))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 *We consider the chain new_gcd0Gcd'0(x77, x78) -> new_gcd0Gcd'(x78, x77), new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x79))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x79))))), Neg(Succ(Succ(Succ(Zero))))) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'(x78, x77)=new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x79))))), Neg(Succ(Succ(Succ(Zero))))) ==> new_gcd0Gcd'0(x77, x78)_>=_new_gcd0Gcd'(x78, x77)) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x79))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x79))))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 *We consider the chain new_gcd0Gcd'0(x80, x81) -> new_gcd0Gcd'(x81, x80), new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x82)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x82), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x82)))))) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'(x81, x80)=new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x82)))))) ==> new_gcd0Gcd'0(x80, x81)_>=_new_gcd0Gcd'(x81, x80)) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Succ(x82))))), Pos(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x82))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 *We consider the chain new_gcd0Gcd'0(x83, x84) -> new_gcd0Gcd'(x84, x83), new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x85)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x85, Zero, x85, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x85)))))) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'(x84, x83)=new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x85)))))) ==> new_gcd0Gcd'0(x83, x84)_>=_new_gcd0Gcd'(x84, x83)) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Succ(x85))))), Pos(Succ(Succ(Zero))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x85))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 *We consider the chain new_gcd0Gcd'0(x86, x87) -> new_gcd0Gcd'(x87, x86), new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'(x87, x86)=new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) ==> new_gcd0Gcd'0(x86, x87)_>=_new_gcd0Gcd'(x87, x86)) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (III) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Zero))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Neg(Succ(Succ(x90))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x90))), Neg(Succ(Zero))), new_gcd0Gcd'1(False, x91, x92) -> new_gcd0Gcd'0(x91, new_rem(x92, x91)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(False, Neg(Succ(Succ(x90))), Neg(Succ(Zero)))=new_gcd0Gcd'1(False, x91, x92) ==> new_gcd0Gcd'(Neg(Succ(Succ(x90))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(x90))), Neg(Succ(Zero)))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'(Neg(Succ(Succ(x90))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(x90))), Neg(Succ(Zero)))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'1(False, x120, x121) -> new_gcd0Gcd'0(x120, new_rem(x121, x120)), new_gcd0Gcd'0(x122, x123) -> new_gcd0Gcd'(x123, x122) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'0(x120, new_rem(x121, x120))=new_gcd0Gcd'0(x122, x123) ==> new_gcd0Gcd'1(False, x120, x121)_>=_new_gcd0Gcd'0(x120, new_rem(x121, x120))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'1(False, x120, x121)_>=_new_gcd0Gcd'0(x120, new_rem(x121, x120))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Pos(Succ(Succ(x184))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x184))), Pos(Succ(Zero))), new_gcd0Gcd'1(False, x185, x186) -> new_gcd0Gcd'0(x185, new_rem(x186, x185)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(False, Pos(Succ(Succ(x184))), Pos(Succ(Zero)))=new_gcd0Gcd'1(False, x185, x186) ==> new_gcd0Gcd'(Pos(Succ(Succ(x184))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(x184))), Pos(Succ(Zero)))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'(Pos(Succ(Succ(x184))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(x184))), Pos(Succ(Zero)))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Neg(Succ(Succ(x216))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x216))), Pos(Succ(Zero))), new_gcd0Gcd'1(False, x217, x218) -> new_gcd0Gcd'0(x217, new_rem(x218, x217)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(False, Neg(Succ(Succ(x216))), Pos(Succ(Zero)))=new_gcd0Gcd'1(False, x217, x218) ==> new_gcd0Gcd'(Neg(Succ(Succ(x216))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(x216))), Pos(Succ(Zero)))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'(Neg(Succ(Succ(x216))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(x216))), Pos(Succ(Zero)))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Pos(Succ(Succ(x248))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x248))), Neg(Succ(Zero))), new_gcd0Gcd'1(False, x249, x250) -> new_gcd0Gcd'0(x249, new_rem(x250, x249)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(False, Pos(Succ(Succ(x248))), Neg(Succ(Zero)))=new_gcd0Gcd'1(False, x249, x250) ==> new_gcd0Gcd'(Pos(Succ(Succ(x248))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(x248))), Neg(Succ(Zero)))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'(Pos(Succ(Succ(x248))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(x248))), Neg(Succ(Zero)))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Neg(Succ(Succ(Succ(x280)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x280)))), Neg(Succ(Succ(Zero)))), new_gcd0Gcd'1(False, x281, x282) -> new_gcd0Gcd'0(x281, new_rem(x282, x281)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x280)))), Neg(Succ(Succ(Zero))))=new_gcd0Gcd'1(False, x281, x282) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x280)))), Neg(Succ(Succ(Zero))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x280)))), Neg(Succ(Succ(Zero))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x280)))), Neg(Succ(Succ(Zero))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x280)))), Neg(Succ(Succ(Zero))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Pos(Succ(Succ(Succ(x312)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x312)))), Pos(Succ(Succ(Zero)))), new_gcd0Gcd'1(False, x313, x314) -> new_gcd0Gcd'0(x313, new_rem(x314, x313)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x312)))), Pos(Succ(Succ(Zero))))=new_gcd0Gcd'1(False, x313, x314) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x312)))), Pos(Succ(Succ(Zero))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x312)))), Pos(Succ(Succ(Zero))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x312)))), Pos(Succ(Succ(Zero))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x312)))), Pos(Succ(Succ(Zero))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Neg(Succ(Succ(Succ(x344)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x344)))), Pos(Succ(Succ(Zero)))), new_gcd0Gcd'1(False, x345, x346) -> new_gcd0Gcd'0(x345, new_rem(x346, x345)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x344)))), Pos(Succ(Succ(Zero))))=new_gcd0Gcd'1(False, x345, x346) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x344)))), Pos(Succ(Succ(Zero))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x344)))), Pos(Succ(Succ(Zero))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x344)))), Pos(Succ(Succ(Zero))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x344)))), Pos(Succ(Succ(Zero))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Pos(Succ(Succ(Succ(x376)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x376)))), Neg(Succ(Succ(Zero)))), new_gcd0Gcd'1(False, x377, x378) -> new_gcd0Gcd'0(x377, new_rem(x378, x377)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x376)))), Neg(Succ(Succ(Zero))))=new_gcd0Gcd'1(False, x377, x378) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x376)))), Neg(Succ(Succ(Zero))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x376)))), Neg(Succ(Succ(Zero))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x376)))), Neg(Succ(Succ(Zero))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x376)))), Neg(Succ(Succ(Zero))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x411)), Succ(Succ(x410)), x411, x410))), Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411)))))), new_gcd0Gcd'1(False, x412, x413) -> new_gcd0Gcd'0(x412, new_rem(x413, x412)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x411)), Succ(Succ(x410)), x411, x410))), Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))=new_gcd0Gcd'1(False, x412, x413) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x411)), Succ(Succ(x410)), x411, x410))), Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (Neg(new_primModNatS01(Succ(Succ(x411)), Succ(Succ(x410)), x411, x410))=x1046 & new_esEs(x1046)=False ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x411)), Succ(Succ(x410)), x411, x410))), Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_esEs(x1046)=False which results in the following new constraints: 67.83/34.94 67.83/34.94 (3) (new_primEqInt2=False & Neg(new_primModNatS01(Succ(Succ(x411)), Succ(Succ(x410)), x411, x410))=Neg(Zero) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x411)), Succ(Succ(x410)), x411, x410))), Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))) 67.83/34.94 67.83/34.94 (4) (new_primEqInt1=False & Neg(new_primModNatS01(Succ(Succ(x411)), Succ(Succ(x410)), x411, x410))=Pos(Zero) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x411)), Succ(Succ(x410)), x411, x410))), Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))) 67.83/34.94 67.83/34.94 (5) (new_primEqInt(x1047)=False & Neg(new_primModNatS01(Succ(Succ(x411)), Succ(Succ(x410)), x411, x410))=Pos(Succ(x1047)) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x411)), Succ(Succ(x410)), x411, x410))), Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))) 67.83/34.94 67.83/34.94 (6) (new_primEqInt0(x1048)=False & Neg(new_primModNatS01(Succ(Succ(x411)), Succ(Succ(x410)), x411, x410))=Neg(Succ(x1048)) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x411)), Succ(Succ(x410)), x411, x410))), Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (3) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (7) (new_primEqInt2=False & Succ(Succ(x411))=x1049 & Succ(Succ(x410))=x1050 & new_primModNatS01(x1049, x1050, x411, x410)=Zero ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x411)), Succ(Succ(x410)), x411, x410))), Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (8) (new_primEqInt0(x1048)=False & Succ(Succ(x411))=x1051 & Succ(Succ(x410))=x1052 & new_primModNatS01(x1051, x1052, x411, x410)=Succ(x1048) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x411)), Succ(Succ(x410)), x411, x410))), Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (7) using rule (V) (with possible (I) afterwards).We simplified constraint (8) using rule (V) (with possible (I) afterwards) using induction on new_primEqInt0(x1048)=False which results in the following new constraint: 67.83/34.94 67.83/34.94 (9) (False=False & Succ(Succ(x411))=x1051 & Succ(Succ(x410))=x1052 & new_primModNatS01(x1051, x1052, x411, x410)=Succ(x1053) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x411)), Succ(Succ(x410)), x411, x410))), Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (9) using rules (I), (II) which results in the following new constraint: 67.83/34.94 67.83/34.94 (10) (Succ(Succ(x411))=x1051 & Succ(Succ(x410))=x1052 & new_primModNatS01(x1051, x1052, x411, x410)=Succ(x1053) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x411)), Succ(Succ(x410)), x411, x410))), Neg(Succ(Succ(Succ(Succ(x410))))), Neg(Succ(Succ(Succ(Succ(x411))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (10) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x1051, x1052, x411, x410)=Succ(x1053) which results in the following new constraints: 67.83/34.94 67.83/34.94 (11) (new_primModNatS01(x1057, x1056, x1055, x1054)=Succ(x1053) & Succ(Succ(Succ(x1055)))=x1057 & Succ(Succ(Succ(x1054)))=x1056 & (\/x1058:new_primModNatS01(x1057, x1056, x1055, x1054)=Succ(x1058) & Succ(Succ(x1055))=x1057 & Succ(Succ(x1054))=x1056 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x1054))))), Neg(Succ(Succ(Succ(Succ(x1055))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x1055)), Succ(Succ(x1054)), x1055, x1054))), Neg(Succ(Succ(Succ(Succ(x1054))))), Neg(Succ(Succ(Succ(Succ(x1055))))))) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x1054)))))), Neg(Succ(Succ(Succ(Succ(Succ(x1055)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(x1055))), Succ(Succ(Succ(x1054))), Succ(x1055), Succ(x1054)))), Neg(Succ(Succ(Succ(Succ(Succ(x1054)))))), Neg(Succ(Succ(Succ(Succ(Succ(x1055)))))))) 67.83/34.94 67.83/34.94 (12) (Succ(Succ(x1061))=Succ(x1053) & Succ(Succ(Zero))=x1061 & Succ(Succ(Succ(x1059)))=x1060 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x1059)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x1059))), Zero, Succ(x1059)))), Neg(Succ(Succ(Succ(Succ(Succ(x1059)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 (13) (new_primModNatS02(x1063, x1062)=Succ(x1053) & Succ(Succ(Zero))=x1063 & Succ(Succ(Zero))=x1062 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 (14) (new_primModNatS02(x1066, x1065)=Succ(x1053) & Succ(Succ(Succ(x1064)))=x1066 & Succ(Succ(Zero))=x1065 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x1064)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(x1064))), Succ(Succ(Zero)), Succ(x1064), Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x1064)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (11) using rule (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (15) (new_primModNatS01(x1057, x1056, x1055, x1054)=Succ(x1053) & Succ(Succ(Succ(x1055)))=x1057 & Succ(Succ(Succ(x1054)))=x1056 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x1054)))))), Neg(Succ(Succ(Succ(Succ(Succ(x1055)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(x1055))), Succ(Succ(Succ(x1054))), Succ(x1055), Succ(x1054)))), Neg(Succ(Succ(Succ(Succ(Succ(x1054)))))), Neg(Succ(Succ(Succ(Succ(Succ(x1055)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (12) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (16) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x1059)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x1059))), Zero, Succ(x1059)))), Neg(Succ(Succ(Succ(Succ(Succ(x1059)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (13) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x1063, x1062)=Succ(x1053) which results in the following new constraint: 67.83/34.94 67.83/34.94 (17) (new_primModNatS1(new_primMinusNatS2(Succ(x1081), Succ(x1080)), Succ(x1080))=Succ(x1053) & Succ(Succ(Zero))=x1081 & Succ(Succ(Zero))=x1080 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (14) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x1066, x1065)=Succ(x1053) which results in the following new constraint: 67.83/34.94 67.83/34.94 (18) (new_primModNatS1(new_primMinusNatS2(Succ(x1087), Succ(x1086)), Succ(x1086))=Succ(x1053) & Succ(Succ(Succ(x1064)))=x1087 & Succ(Succ(Zero))=x1086 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x1064)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(x1064))), Succ(Succ(Zero)), Succ(x1064), Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x1064)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (15) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x1057, x1056, x1055, x1054)=Succ(x1053) which results in the following new constraints: 67.83/34.94 67.83/34.94 (19) (new_primModNatS01(x1070, x1069, x1068, x1067)=Succ(x1053) & Succ(Succ(Succ(Succ(x1068))))=x1070 & Succ(Succ(Succ(Succ(x1067))))=x1069 & (\/x1071:new_primModNatS01(x1070, x1069, x1068, x1067)=Succ(x1071) & Succ(Succ(Succ(x1068)))=x1070 & Succ(Succ(Succ(x1067)))=x1069 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x1067)))))), Neg(Succ(Succ(Succ(Succ(Succ(x1068)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(x1068))), Succ(Succ(Succ(x1067))), Succ(x1068), Succ(x1067)))), Neg(Succ(Succ(Succ(Succ(Succ(x1067)))))), Neg(Succ(Succ(Succ(Succ(Succ(x1068)))))))) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1067))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1068))))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x1068)))), Succ(Succ(Succ(Succ(x1067)))), Succ(Succ(x1068)), Succ(Succ(x1067))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1067))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1068))))))))) 67.83/34.94 67.83/34.94 (20) (Succ(Succ(x1074))=Succ(x1053) & Succ(Succ(Succ(Zero)))=x1074 & Succ(Succ(Succ(Succ(x1072))))=x1073 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1072))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x1072)))), Succ(Zero), Succ(Succ(x1072))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1072))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 (21) (new_primModNatS02(x1076, x1075)=Succ(x1053) & Succ(Succ(Succ(Zero)))=x1076 & Succ(Succ(Succ(Zero)))=x1075 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 (22) (new_primModNatS02(x1079, x1078)=Succ(x1053) & Succ(Succ(Succ(Succ(x1077))))=x1079 & Succ(Succ(Succ(Zero)))=x1078 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1077))))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x1077)))), Succ(Succ(Succ(Zero))), Succ(Succ(x1077)), Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1077))))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (19) using rules (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (23) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1067))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1068))))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x1068)))), Succ(Succ(Succ(Succ(x1067)))), Succ(Succ(x1068)), Succ(Succ(x1067))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1067))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1068))))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (20) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (24) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1072))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x1072)))), Succ(Zero), Succ(Succ(x1072))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1072))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (21) using rules (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (25) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (22) using rules (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (26) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1077))))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x1077)))), Succ(Succ(Succ(Zero))), Succ(Succ(x1077)), Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1077))))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (17) using rules (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (27) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (18) using rules (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (28) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x1064)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(x1064))), Succ(Succ(Zero)), Succ(x1064), Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x1064)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x470))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x470))))), Neg(Succ(Succ(Succ(Zero))))), new_gcd0Gcd'1(False, x471, x472) -> new_gcd0Gcd'0(x471, new_rem(x472, x471)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x470))))), Neg(Succ(Succ(Succ(Zero)))))=new_gcd0Gcd'1(False, x471, x472) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x470))))), Neg(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x470))))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x470))))), Neg(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x470))))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502)))))), new_gcd0Gcd'1(False, x503, x504) -> new_gcd0Gcd'0(x503, new_rem(x504, x503)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))=new_gcd0Gcd'1(False, x503, x504) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))=x1092 & new_esEs(x1092)=False ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_esEs(x1092)=False which results in the following new constraints: 67.83/34.94 67.83/34.94 (3) (new_primEqInt2=False & Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))=Neg(Zero) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))) 67.83/34.94 67.83/34.94 (4) (new_primEqInt1=False & Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))=Pos(Zero) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))) 67.83/34.94 67.83/34.94 (5) (new_primEqInt(x1093)=False & Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))=Pos(Succ(x1093)) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))) 67.83/34.94 67.83/34.94 (6) (new_primEqInt0(x1094)=False & Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))=Neg(Succ(x1094)) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (3) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (7) (new_primEqInt2=False & Succ(x502)=x1095 & Succ(Succ(Zero))=x1096 & new_primModNatS1(x1095, x1096)=Zero ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (8) (new_primEqInt0(x1094)=False & Succ(x502)=x1097 & Succ(Succ(Zero))=x1098 & new_primModNatS1(x1097, x1098)=Succ(x1094) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (7) using rule (V) (with possible (I) afterwards).We simplified constraint (8) using rule (V) (with possible (I) afterwards) using induction on new_primEqInt0(x1094)=False which results in the following new constraint: 67.83/34.94 67.83/34.94 (9) (False=False & Succ(x502)=x1097 & Succ(Succ(Zero))=x1098 & new_primModNatS1(x1097, x1098)=Succ(x1099) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (9) using rules (I), (II) which results in the following new constraint: 67.83/34.94 67.83/34.94 (10) (Succ(x502)=x1097 & Succ(Succ(Zero))=x1098 & new_primModNatS1(x1097, x1098)=Succ(x1099) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (10) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS1(x1097, x1098)=Succ(x1099) which results in the following new constraints: 67.83/34.94 67.83/34.94 (11) (new_primModNatS1(new_primMinusNatS0(x1100), Zero)=Succ(x1099) & Succ(x502)=Succ(Succ(x1100)) & Succ(Succ(Zero))=Zero ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))) 67.83/34.94 67.83/34.94 (12) (Succ(Zero)=Succ(x1099) & Succ(x502)=Succ(Zero) & Succ(Succ(Zero))=Succ(x1101) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))) 67.83/34.94 67.83/34.94 (13) (new_primModNatS01(x1103, x1102, x1103, x1102)=Succ(x1099) & Succ(x502)=Succ(Succ(x1103)) & Succ(Succ(Zero))=Succ(x1102) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))) 67.83/34.94 67.83/34.94 (14) (new_primModNatS1(new_primMinusNatS1, Zero)=Succ(x1099) & Succ(x502)=Succ(Zero) & Succ(Succ(Zero))=Zero ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x502), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x502))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (11) using rules (I), (II).We simplified constraint (12) using rules (I), (II), (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (15) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (13) using rules (I), (II), (III), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (16) (x1103=x1105 & x1102=x1106 & new_primModNatS01(x1103, x1102, x1105, x1106)=Succ(x1099) & Succ(Zero)=x1102 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1103)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(x1103)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1103)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (14) using rules (I), (II).We simplified constraint (16) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x1103, x1102, x1105, x1106)=Succ(x1099) which results in the following new constraints: 67.83/34.94 67.83/34.94 (17) (new_primModNatS01(x1110, x1109, x1108, x1107)=Succ(x1099) & x1110=Succ(x1108) & x1109=Succ(x1107) & Succ(Zero)=x1109 & (\/x1111:new_primModNatS01(x1110, x1109, x1108, x1107)=Succ(x1111) & x1110=x1108 & x1109=x1107 & Succ(Zero)=x1109 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1110)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(x1110)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1110)))))))) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1110)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(x1110)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1110)))))))) 67.83/34.94 67.83/34.94 (18) (Succ(Succ(x1114))=Succ(x1099) & x1114=Zero & x1113=Succ(x1112) & Succ(Zero)=x1113 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1114)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(x1114)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1114)))))))) 67.83/34.94 67.83/34.94 (19) (new_primModNatS02(x1116, x1115)=Succ(x1099) & x1116=Zero & x1115=Zero & Succ(Zero)=x1115 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1116)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(x1116)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1116)))))))) 67.83/34.94 67.83/34.94 (20) (new_primModNatS02(x1119, x1118)=Succ(x1099) & x1119=Succ(x1117) & x1118=Zero & Succ(Zero)=x1118 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1119)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(x1119)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1119)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (17) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (21) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1108))))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(Succ(x1108))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1108))))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (18) using rules (I), (II), (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (22) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (19) using rules (I), (II), (III).We solved constraint (20) using rules (I), (II), (III). 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x534, Zero, x534, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534)))))), new_gcd0Gcd'1(False, x535, x536) -> new_gcd0Gcd'0(x535, new_rem(x536, x535)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x534, Zero, x534, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))=new_gcd0Gcd'1(False, x535, x536) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x534, Zero, x534, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (Neg(new_primModNatS01(x534, Zero, x534, Zero))=x1122 & new_esEs(x1122)=False ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x534, Zero, x534, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_esEs(x1122)=False which results in the following new constraints: 67.83/34.94 67.83/34.94 (3) (new_primEqInt2=False & Neg(new_primModNatS01(x534, Zero, x534, Zero))=Neg(Zero) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x534, Zero, x534, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))) 67.83/34.94 67.83/34.94 (4) (new_primEqInt1=False & Neg(new_primModNatS01(x534, Zero, x534, Zero))=Pos(Zero) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x534, Zero, x534, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))) 67.83/34.94 67.83/34.94 (5) (new_primEqInt(x1123)=False & Neg(new_primModNatS01(x534, Zero, x534, Zero))=Pos(Succ(x1123)) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x534, Zero, x534, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))) 67.83/34.94 67.83/34.94 (6) (new_primEqInt0(x1124)=False & Neg(new_primModNatS01(x534, Zero, x534, Zero))=Neg(Succ(x1124)) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x534, Zero, x534, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (3) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (7) (new_primEqInt2=False & Zero=x1125 & x534=x1126 & Zero=x1127 & new_primModNatS01(x534, x1125, x1126, x1127)=Zero ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x534, Zero, x534, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (8) (new_primEqInt0(x1124)=False & Zero=x1128 & x534=x1129 & Zero=x1130 & new_primModNatS01(x534, x1128, x1129, x1130)=Succ(x1124) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x534, Zero, x534, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (7) using rule (V) (with possible (I) afterwards).We simplified constraint (8) using rule (V) (with possible (I) afterwards) using induction on new_primEqInt0(x1124)=False which results in the following new constraint: 67.83/34.94 67.83/34.94 (9) (False=False & Zero=x1128 & x534=x1129 & Zero=x1130 & new_primModNatS01(x534, x1128, x1129, x1130)=Succ(x1131) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x534, Zero, x534, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (9) using rules (I), (II) which results in the following new constraint: 67.83/34.94 67.83/34.94 (10) (Zero=x1128 & x534=x1129 & Zero=x1130 & new_primModNatS01(x534, x1128, x1129, x1130)=Succ(x1131) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x534, Zero, x534, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x534))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (10) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x534, x1128, x1129, x1130)=Succ(x1131) which results in the following new constraints: 67.83/34.94 67.83/34.94 (11) (new_primModNatS01(x1135, x1134, x1133, x1132)=Succ(x1131) & Zero=x1134 & x1135=Succ(x1133) & Zero=Succ(x1132) & (\/x1136:new_primModNatS01(x1135, x1134, x1133, x1132)=Succ(x1136) & Zero=x1134 & x1135=x1133 & Zero=x1132 ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1135))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1135, Zero, x1135, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1135))))))) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1135))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1135, Zero, x1135, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1135))))))) 67.83/34.94 67.83/34.94 (12) (Succ(Succ(x1139))=Succ(x1131) & Zero=x1138 & x1139=Zero & Zero=Succ(x1137) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1139))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1139, Zero, x1139, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1139))))))) 67.83/34.94 67.83/34.94 (13) (new_primModNatS02(x1141, x1140)=Succ(x1131) & Zero=x1140 & x1141=Zero & Zero=Zero ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1141))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1141, Zero, x1141, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1141))))))) 67.83/34.94 67.83/34.94 (14) (new_primModNatS02(x1144, x1143)=Succ(x1131) & Zero=x1143 & x1144=Succ(x1142) & Zero=Zero ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1144))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1144, Zero, x1144, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1144))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (11) using rules (I), (II).We solved constraint (12) using rules (I), (II).We simplified constraint (13) using rules (I), (II), (III), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (15) (Zero=x1145 & new_primModNatS02(x1145, x1140)=Succ(x1131) & Zero=x1140 ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Zero, Zero, Zero, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (14) using rules (I), (II), (III), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (16) (Succ(x1142)=x1152 & new_primModNatS02(x1152, x1143)=Succ(x1131) & Zero=x1143 ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Succ(x1142)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x1142), Zero, Succ(x1142), Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Succ(x1142)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (15) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x1145, x1140)=Succ(x1131) which results in the following new constraint: 67.83/34.94 67.83/34.94 (17) (new_primModNatS1(new_primMinusNatS2(Succ(x1147), Succ(x1146)), Succ(x1146))=Succ(x1131) & Zero=x1147 & Zero=x1146 ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Zero, Zero, Zero, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (17) using rules (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (18) (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Zero, Zero, Zero, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (16) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x1152, x1143)=Succ(x1131) which results in the following new constraint: 67.83/34.94 67.83/34.94 (19) (new_primModNatS1(new_primMinusNatS2(Succ(x1154), Succ(x1153)), Succ(x1153))=Succ(x1131) & Succ(x1142)=x1154 & Zero=x1153 ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Succ(x1142)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x1142), Zero, Succ(x1142), Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Succ(x1142)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (19) using rules (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (20) (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Succ(x1142)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x1142), Zero, Succ(x1142), Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Succ(x1142)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))), new_gcd0Gcd'1(False, x564, x565) -> new_gcd0Gcd'0(x564, new_rem(x565, x564)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))=new_gcd0Gcd'1(False, x564, x565) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x571)), Succ(Succ(x570)), x571, x570))), Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571)))))), new_gcd0Gcd'1(False, x572, x573) -> new_gcd0Gcd'0(x572, new_rem(x573, x572)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x571)), Succ(Succ(x570)), x571, x570))), Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))=new_gcd0Gcd'1(False, x572, x573) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x571)), Succ(Succ(x570)), x571, x570))), Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (Pos(new_primModNatS01(Succ(Succ(x571)), Succ(Succ(x570)), x571, x570))=x1159 & new_esEs(x1159)=False ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x571)), Succ(Succ(x570)), x571, x570))), Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_esEs(x1159)=False which results in the following new constraints: 67.83/34.94 67.83/34.94 (3) (new_primEqInt2=False & Pos(new_primModNatS01(Succ(Succ(x571)), Succ(Succ(x570)), x571, x570))=Neg(Zero) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x571)), Succ(Succ(x570)), x571, x570))), Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))) 67.83/34.94 67.83/34.94 (4) (new_primEqInt1=False & Pos(new_primModNatS01(Succ(Succ(x571)), Succ(Succ(x570)), x571, x570))=Pos(Zero) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x571)), Succ(Succ(x570)), x571, x570))), Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))) 67.83/34.94 67.83/34.94 (5) (new_primEqInt(x1160)=False & Pos(new_primModNatS01(Succ(Succ(x571)), Succ(Succ(x570)), x571, x570))=Pos(Succ(x1160)) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x571)), Succ(Succ(x570)), x571, x570))), Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))) 67.83/34.94 67.83/34.94 (6) (new_primEqInt0(x1161)=False & Pos(new_primModNatS01(Succ(Succ(x571)), Succ(Succ(x570)), x571, x570))=Neg(Succ(x1161)) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x571)), Succ(Succ(x570)), x571, x570))), Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (3) using rules (I), (II).We simplified constraint (4) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (7) (new_primEqInt1=False & Succ(Succ(x571))=x1162 & Succ(Succ(x570))=x1163 & new_primModNatS01(x1162, x1163, x571, x570)=Zero ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x571)), Succ(Succ(x570)), x571, x570))), Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (5) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (8) (new_primEqInt(x1160)=False & Succ(Succ(x571))=x1164 & Succ(Succ(x570))=x1165 & new_primModNatS01(x1164, x1165, x571, x570)=Succ(x1160) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x571)), Succ(Succ(x570)), x571, x570))), Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (6) using rules (I), (II).We solved constraint (7) using rule (V) (with possible (I) afterwards).We simplified constraint (8) using rule (V) (with possible (I) afterwards) using induction on new_primEqInt(x1160)=False which results in the following new constraint: 67.83/34.94 67.83/34.94 (9) (False=False & Succ(Succ(x571))=x1164 & Succ(Succ(x570))=x1165 & new_primModNatS01(x1164, x1165, x571, x570)=Succ(x1166) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x571)), Succ(Succ(x570)), x571, x570))), Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (9) using rules (I), (II) which results in the following new constraint: 67.83/34.94 67.83/34.94 (10) (Succ(Succ(x571))=x1164 & Succ(Succ(x570))=x1165 & new_primModNatS01(x1164, x1165, x571, x570)=Succ(x1166) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x571)), Succ(Succ(x570)), x571, x570))), Pos(Succ(Succ(Succ(Succ(x570))))), Pos(Succ(Succ(Succ(Succ(x571))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (10) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x1164, x1165, x571, x570)=Succ(x1166) which results in the following new constraints: 67.83/34.94 67.83/34.94 (11) (new_primModNatS01(x1170, x1169, x1168, x1167)=Succ(x1166) & Succ(Succ(Succ(x1168)))=x1170 & Succ(Succ(Succ(x1167)))=x1169 & (\/x1171:new_primModNatS01(x1170, x1169, x1168, x1167)=Succ(x1171) & Succ(Succ(x1168))=x1170 & Succ(Succ(x1167))=x1169 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x1167))))), Pos(Succ(Succ(Succ(Succ(x1168))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x1168)), Succ(Succ(x1167)), x1168, x1167))), Pos(Succ(Succ(Succ(Succ(x1167))))), Pos(Succ(Succ(Succ(Succ(x1168))))))) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x1167)))))), Pos(Succ(Succ(Succ(Succ(Succ(x1168)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(x1168))), Succ(Succ(Succ(x1167))), Succ(x1168), Succ(x1167)))), Pos(Succ(Succ(Succ(Succ(Succ(x1167)))))), Pos(Succ(Succ(Succ(Succ(Succ(x1168)))))))) 67.83/34.94 67.83/34.94 (12) (Succ(Succ(x1174))=Succ(x1166) & Succ(Succ(Zero))=x1174 & Succ(Succ(Succ(x1172)))=x1173 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x1172)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x1172))), Zero, Succ(x1172)))), Pos(Succ(Succ(Succ(Succ(Succ(x1172)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 (13) (new_primModNatS02(x1176, x1175)=Succ(x1166) & Succ(Succ(Zero))=x1176 & Succ(Succ(Zero))=x1175 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 (14) (new_primModNatS02(x1179, x1178)=Succ(x1166) & Succ(Succ(Succ(x1177)))=x1179 & Succ(Succ(Zero))=x1178 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x1177)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(x1177))), Succ(Succ(Zero)), Succ(x1177), Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x1177)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (11) using rule (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (15) (new_primModNatS01(x1170, x1169, x1168, x1167)=Succ(x1166) & Succ(Succ(Succ(x1168)))=x1170 & Succ(Succ(Succ(x1167)))=x1169 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x1167)))))), Pos(Succ(Succ(Succ(Succ(Succ(x1168)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(x1168))), Succ(Succ(Succ(x1167))), Succ(x1168), Succ(x1167)))), Pos(Succ(Succ(Succ(Succ(Succ(x1167)))))), Pos(Succ(Succ(Succ(Succ(Succ(x1168)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (12) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (16) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x1172)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x1172))), Zero, Succ(x1172)))), Pos(Succ(Succ(Succ(Succ(Succ(x1172)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (13) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x1176, x1175)=Succ(x1166) which results in the following new constraint: 67.83/34.94 67.83/34.94 (17) (new_primModNatS1(new_primMinusNatS2(Succ(x1194), Succ(x1193)), Succ(x1193))=Succ(x1166) & Succ(Succ(Zero))=x1194 & Succ(Succ(Zero))=x1193 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (14) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x1179, x1178)=Succ(x1166) which results in the following new constraint: 67.83/34.94 67.83/34.94 (18) (new_primModNatS1(new_primMinusNatS2(Succ(x1200), Succ(x1199)), Succ(x1199))=Succ(x1166) & Succ(Succ(Succ(x1177)))=x1200 & Succ(Succ(Zero))=x1199 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x1177)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(x1177))), Succ(Succ(Zero)), Succ(x1177), Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x1177)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (15) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x1170, x1169, x1168, x1167)=Succ(x1166) which results in the following new constraints: 67.83/34.94 67.83/34.94 (19) (new_primModNatS01(x1183, x1182, x1181, x1180)=Succ(x1166) & Succ(Succ(Succ(Succ(x1181))))=x1183 & Succ(Succ(Succ(Succ(x1180))))=x1182 & (\/x1184:new_primModNatS01(x1183, x1182, x1181, x1180)=Succ(x1184) & Succ(Succ(Succ(x1181)))=x1183 & Succ(Succ(Succ(x1180)))=x1182 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x1180)))))), Pos(Succ(Succ(Succ(Succ(Succ(x1181)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(x1181))), Succ(Succ(Succ(x1180))), Succ(x1181), Succ(x1180)))), Pos(Succ(Succ(Succ(Succ(Succ(x1180)))))), Pos(Succ(Succ(Succ(Succ(Succ(x1181)))))))) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1180))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1181))))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x1181)))), Succ(Succ(Succ(Succ(x1180)))), Succ(Succ(x1181)), Succ(Succ(x1180))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1180))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1181))))))))) 67.83/34.94 67.83/34.94 (20) (Succ(Succ(x1187))=Succ(x1166) & Succ(Succ(Succ(Zero)))=x1187 & Succ(Succ(Succ(Succ(x1185))))=x1186 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1185))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x1185)))), Succ(Zero), Succ(Succ(x1185))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1185))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 (21) (new_primModNatS02(x1189, x1188)=Succ(x1166) & Succ(Succ(Succ(Zero)))=x1189 & Succ(Succ(Succ(Zero)))=x1188 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 (22) (new_primModNatS02(x1192, x1191)=Succ(x1166) & Succ(Succ(Succ(Succ(x1190))))=x1192 & Succ(Succ(Succ(Zero)))=x1191 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1190))))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x1190)))), Succ(Succ(Succ(Zero))), Succ(Succ(x1190)), Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1190))))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (19) using rules (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (23) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1180))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1181))))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x1181)))), Succ(Succ(Succ(Succ(x1180)))), Succ(Succ(x1181)), Succ(Succ(x1180))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1180))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1181))))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (20) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (24) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1185))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x1185)))), Succ(Zero), Succ(Succ(x1185))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1185))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (21) using rules (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (25) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (22) using rules (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (26) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1190))))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x1190)))), Succ(Succ(Succ(Zero))), Succ(Succ(x1190)), Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1190))))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (17) using rules (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (27) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (18) using rules (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (28) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x1177)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(x1177))), Succ(Succ(Zero)), Succ(x1177), Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x1177)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x630))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x630))))), Pos(Succ(Succ(Succ(Zero))))), new_gcd0Gcd'1(False, x631, x632) -> new_gcd0Gcd'0(x631, new_rem(x632, x631)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x630))))), Pos(Succ(Succ(Succ(Zero)))))=new_gcd0Gcd'1(False, x631, x632) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x630))))), Pos(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x630))))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x630))))), Pos(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x630))))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662)))))), new_gcd0Gcd'1(False, x663, x664) -> new_gcd0Gcd'0(x663, new_rem(x664, x663)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))=new_gcd0Gcd'1(False, x663, x664) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))=x1205 & new_esEs(x1205)=False ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_esEs(x1205)=False which results in the following new constraints: 67.83/34.94 67.83/34.94 (3) (new_primEqInt2=False & Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))=Neg(Zero) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))) 67.83/34.94 67.83/34.94 (4) (new_primEqInt1=False & Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))=Pos(Zero) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))) 67.83/34.94 67.83/34.94 (5) (new_primEqInt(x1206)=False & Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))=Pos(Succ(x1206)) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))) 67.83/34.94 67.83/34.94 (6) (new_primEqInt0(x1207)=False & Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))=Neg(Succ(x1207)) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (3) using rules (I), (II).We simplified constraint (4) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (7) (new_primEqInt1=False & Succ(x662)=x1208 & Succ(Succ(Zero))=x1209 & new_primModNatS1(x1208, x1209)=Zero ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (5) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (8) (new_primEqInt(x1206)=False & Succ(x662)=x1210 & Succ(Succ(Zero))=x1211 & new_primModNatS1(x1210, x1211)=Succ(x1206) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (6) using rules (I), (II).We solved constraint (7) using rule (V) (with possible (I) afterwards).We simplified constraint (8) using rule (V) (with possible (I) afterwards) using induction on new_primEqInt(x1206)=False which results in the following new constraint: 67.83/34.94 67.83/34.94 (9) (False=False & Succ(x662)=x1210 & Succ(Succ(Zero))=x1211 & new_primModNatS1(x1210, x1211)=Succ(x1212) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (9) using rules (I), (II) which results in the following new constraint: 67.83/34.94 67.83/34.94 (10) (Succ(x662)=x1210 & Succ(Succ(Zero))=x1211 & new_primModNatS1(x1210, x1211)=Succ(x1212) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (10) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS1(x1210, x1211)=Succ(x1212) which results in the following new constraints: 67.83/34.94 67.83/34.94 (11) (new_primModNatS1(new_primMinusNatS0(x1213), Zero)=Succ(x1212) & Succ(x662)=Succ(Succ(x1213)) & Succ(Succ(Zero))=Zero ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))) 67.83/34.94 67.83/34.94 (12) (Succ(Zero)=Succ(x1212) & Succ(x662)=Succ(Zero) & Succ(Succ(Zero))=Succ(x1214) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))) 67.83/34.94 67.83/34.94 (13) (new_primModNatS01(x1216, x1215, x1216, x1215)=Succ(x1212) & Succ(x662)=Succ(Succ(x1216)) & Succ(Succ(Zero))=Succ(x1215) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))) 67.83/34.94 67.83/34.94 (14) (new_primModNatS1(new_primMinusNatS1, Zero)=Succ(x1212) & Succ(x662)=Succ(Zero) & Succ(Succ(Zero))=Zero ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x662), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x662))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (11) using rules (I), (II).We simplified constraint (12) using rules (I), (II), (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (15) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (13) using rules (I), (II), (III), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (16) (x1216=x1218 & x1215=x1219 & new_primModNatS01(x1216, x1215, x1218, x1219)=Succ(x1212) & Succ(Zero)=x1215 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1216)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(x1216)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1216)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (14) using rules (I), (II).We simplified constraint (16) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x1216, x1215, x1218, x1219)=Succ(x1212) which results in the following new constraints: 67.83/34.94 67.83/34.94 (17) (new_primModNatS01(x1223, x1222, x1221, x1220)=Succ(x1212) & x1223=Succ(x1221) & x1222=Succ(x1220) & Succ(Zero)=x1222 & (\/x1224:new_primModNatS01(x1223, x1222, x1221, x1220)=Succ(x1224) & x1223=x1221 & x1222=x1220 & Succ(Zero)=x1222 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1223)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(x1223)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1223)))))))) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1223)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(x1223)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1223)))))))) 67.83/34.94 67.83/34.94 (18) (Succ(Succ(x1227))=Succ(x1212) & x1227=Zero & x1226=Succ(x1225) & Succ(Zero)=x1226 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1227)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(x1227)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1227)))))))) 67.83/34.94 67.83/34.94 (19) (new_primModNatS02(x1229, x1228)=Succ(x1212) & x1229=Zero & x1228=Zero & Succ(Zero)=x1228 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1229)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(x1229)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1229)))))))) 67.83/34.94 67.83/34.94 (20) (new_primModNatS02(x1232, x1231)=Succ(x1212) & x1232=Succ(x1230) & x1231=Zero & Succ(Zero)=x1231 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1232)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(x1232)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1232)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (17) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (21) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1221))))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(Succ(x1221))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1221))))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (18) using rules (I), (II), (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (22) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (19) using rules (I), (II), (III).We solved constraint (20) using rules (I), (II), (III). 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x694, Zero, x694, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694)))))), new_gcd0Gcd'1(False, x695, x696) -> new_gcd0Gcd'0(x695, new_rem(x696, x695)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x694, Zero, x694, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))=new_gcd0Gcd'1(False, x695, x696) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x694, Zero, x694, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (Pos(new_primModNatS01(x694, Zero, x694, Zero))=x1235 & new_esEs(x1235)=False ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x694, Zero, x694, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_esEs(x1235)=False which results in the following new constraints: 67.83/34.94 67.83/34.94 (3) (new_primEqInt2=False & Pos(new_primModNatS01(x694, Zero, x694, Zero))=Neg(Zero) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x694, Zero, x694, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))) 67.83/34.94 67.83/34.94 (4) (new_primEqInt1=False & Pos(new_primModNatS01(x694, Zero, x694, Zero))=Pos(Zero) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x694, Zero, x694, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))) 67.83/34.94 67.83/34.94 (5) (new_primEqInt(x1236)=False & Pos(new_primModNatS01(x694, Zero, x694, Zero))=Pos(Succ(x1236)) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x694, Zero, x694, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))) 67.83/34.94 67.83/34.94 (6) (new_primEqInt0(x1237)=False & Pos(new_primModNatS01(x694, Zero, x694, Zero))=Neg(Succ(x1237)) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x694, Zero, x694, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (3) using rules (I), (II).We simplified constraint (4) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (7) (new_primEqInt1=False & Zero=x1238 & x694=x1239 & Zero=x1240 & new_primModNatS01(x694, x1238, x1239, x1240)=Zero ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x694, Zero, x694, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (5) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (8) (new_primEqInt(x1236)=False & Zero=x1241 & x694=x1242 & Zero=x1243 & new_primModNatS01(x694, x1241, x1242, x1243)=Succ(x1236) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x694, Zero, x694, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (6) using rules (I), (II).We solved constraint (7) using rule (V) (with possible (I) afterwards).We simplified constraint (8) using rule (V) (with possible (I) afterwards) using induction on new_primEqInt(x1236)=False which results in the following new constraint: 67.83/34.94 67.83/34.94 (9) (False=False & Zero=x1241 & x694=x1242 & Zero=x1243 & new_primModNatS01(x694, x1241, x1242, x1243)=Succ(x1244) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x694, Zero, x694, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (9) using rules (I), (II) which results in the following new constraint: 67.83/34.94 67.83/34.94 (10) (Zero=x1241 & x694=x1242 & Zero=x1243 & new_primModNatS01(x694, x1241, x1242, x1243)=Succ(x1244) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x694, Zero, x694, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x694))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (10) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x694, x1241, x1242, x1243)=Succ(x1244) which results in the following new constraints: 67.83/34.94 67.83/34.94 (11) (new_primModNatS01(x1248, x1247, x1246, x1245)=Succ(x1244) & Zero=x1247 & x1248=Succ(x1246) & Zero=Succ(x1245) & (\/x1249:new_primModNatS01(x1248, x1247, x1246, x1245)=Succ(x1249) & Zero=x1247 & x1248=x1246 & Zero=x1245 ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1248))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x1248, Zero, x1248, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1248))))))) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1248))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x1248, Zero, x1248, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1248))))))) 67.83/34.94 67.83/34.94 (12) (Succ(Succ(x1252))=Succ(x1244) & Zero=x1251 & x1252=Zero & Zero=Succ(x1250) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1252))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x1252, Zero, x1252, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1252))))))) 67.83/34.94 67.83/34.94 (13) (new_primModNatS02(x1254, x1253)=Succ(x1244) & Zero=x1253 & x1254=Zero & Zero=Zero ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1254))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x1254, Zero, x1254, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1254))))))) 67.83/34.94 67.83/34.94 (14) (new_primModNatS02(x1257, x1256)=Succ(x1244) & Zero=x1256 & x1257=Succ(x1255) & Zero=Zero ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1257))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x1257, Zero, x1257, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1257))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (11) using rules (I), (II).We solved constraint (12) using rules (I), (II).We simplified constraint (13) using rules (I), (II), (III), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (15) (Zero=x1258 & new_primModNatS02(x1258, x1253)=Succ(x1244) & Zero=x1253 ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Zero, Zero, Zero, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (14) using rules (I), (II), (III), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (16) (Succ(x1255)=x1265 & new_primModNatS02(x1265, x1256)=Succ(x1244) & Zero=x1256 ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Succ(x1255)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x1255), Zero, Succ(x1255), Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Succ(x1255)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (15) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x1258, x1253)=Succ(x1244) which results in the following new constraint: 67.83/34.94 67.83/34.94 (17) (new_primModNatS1(new_primMinusNatS2(Succ(x1260), Succ(x1259)), Succ(x1259))=Succ(x1244) & Zero=x1260 & Zero=x1259 ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Zero, Zero, Zero, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (17) using rules (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (18) (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Zero, Zero, Zero, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (16) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x1265, x1256)=Succ(x1244) which results in the following new constraint: 67.83/34.94 67.83/34.94 (19) (new_primModNatS1(new_primMinusNatS2(Succ(x1267), Succ(x1266)), Succ(x1266))=Succ(x1244) & Succ(x1255)=x1267 & Zero=x1266 ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Succ(x1255)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x1255), Zero, Succ(x1255), Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Succ(x1255)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (19) using rules (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (20) (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Succ(x1255)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x1255), Zero, Succ(x1255), Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Succ(x1255)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))), new_gcd0Gcd'1(False, x724, x725) -> new_gcd0Gcd'0(x724, new_rem(x725, x724)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))=new_gcd0Gcd'1(False, x724, x725) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x731)), Succ(Succ(x730)), x731, x730))), Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731)))))), new_gcd0Gcd'1(False, x732, x733) -> new_gcd0Gcd'0(x732, new_rem(x733, x732)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x731)), Succ(Succ(x730)), x731, x730))), Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))=new_gcd0Gcd'1(False, x732, x733) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x731)), Succ(Succ(x730)), x731, x730))), Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (Pos(new_primModNatS01(Succ(Succ(x731)), Succ(Succ(x730)), x731, x730))=x1272 & new_esEs(x1272)=False ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x731)), Succ(Succ(x730)), x731, x730))), Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_esEs(x1272)=False which results in the following new constraints: 67.83/34.94 67.83/34.94 (3) (new_primEqInt2=False & Pos(new_primModNatS01(Succ(Succ(x731)), Succ(Succ(x730)), x731, x730))=Neg(Zero) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x731)), Succ(Succ(x730)), x731, x730))), Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))) 67.83/34.94 67.83/34.94 (4) (new_primEqInt1=False & Pos(new_primModNatS01(Succ(Succ(x731)), Succ(Succ(x730)), x731, x730))=Pos(Zero) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x731)), Succ(Succ(x730)), x731, x730))), Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))) 67.83/34.94 67.83/34.94 (5) (new_primEqInt(x1273)=False & Pos(new_primModNatS01(Succ(Succ(x731)), Succ(Succ(x730)), x731, x730))=Pos(Succ(x1273)) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x731)), Succ(Succ(x730)), x731, x730))), Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))) 67.83/34.94 67.83/34.94 (6) (new_primEqInt0(x1274)=False & Pos(new_primModNatS01(Succ(Succ(x731)), Succ(Succ(x730)), x731, x730))=Neg(Succ(x1274)) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x731)), Succ(Succ(x730)), x731, x730))), Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (3) using rules (I), (II).We simplified constraint (4) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (7) (new_primEqInt1=False & Succ(Succ(x731))=x1275 & Succ(Succ(x730))=x1276 & new_primModNatS01(x1275, x1276, x731, x730)=Zero ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x731)), Succ(Succ(x730)), x731, x730))), Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (5) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (8) (new_primEqInt(x1273)=False & Succ(Succ(x731))=x1277 & Succ(Succ(x730))=x1278 & new_primModNatS01(x1277, x1278, x731, x730)=Succ(x1273) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x731)), Succ(Succ(x730)), x731, x730))), Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (6) using rules (I), (II).We solved constraint (7) using rule (V) (with possible (I) afterwards).We simplified constraint (8) using rule (V) (with possible (I) afterwards) using induction on new_primEqInt(x1273)=False which results in the following new constraint: 67.83/34.94 67.83/34.94 (9) (False=False & Succ(Succ(x731))=x1277 & Succ(Succ(x730))=x1278 & new_primModNatS01(x1277, x1278, x731, x730)=Succ(x1279) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x731)), Succ(Succ(x730)), x731, x730))), Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (9) using rules (I), (II) which results in the following new constraint: 67.83/34.94 67.83/34.94 (10) (Succ(Succ(x731))=x1277 & Succ(Succ(x730))=x1278 & new_primModNatS01(x1277, x1278, x731, x730)=Succ(x1279) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x731)), Succ(Succ(x730)), x731, x730))), Neg(Succ(Succ(Succ(Succ(x730))))), Pos(Succ(Succ(Succ(Succ(x731))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (10) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x1277, x1278, x731, x730)=Succ(x1279) which results in the following new constraints: 67.83/34.94 67.83/34.94 (11) (new_primModNatS01(x1283, x1282, x1281, x1280)=Succ(x1279) & Succ(Succ(Succ(x1281)))=x1283 & Succ(Succ(Succ(x1280)))=x1282 & (\/x1284:new_primModNatS01(x1283, x1282, x1281, x1280)=Succ(x1284) & Succ(Succ(x1281))=x1283 & Succ(Succ(x1280))=x1282 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x1280))))), Pos(Succ(Succ(Succ(Succ(x1281))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x1281)), Succ(Succ(x1280)), x1281, x1280))), Neg(Succ(Succ(Succ(Succ(x1280))))), Pos(Succ(Succ(Succ(Succ(x1281))))))) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x1280)))))), Pos(Succ(Succ(Succ(Succ(Succ(x1281)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(x1281))), Succ(Succ(Succ(x1280))), Succ(x1281), Succ(x1280)))), Neg(Succ(Succ(Succ(Succ(Succ(x1280)))))), Pos(Succ(Succ(Succ(Succ(Succ(x1281)))))))) 67.83/34.94 67.83/34.94 (12) (Succ(Succ(x1287))=Succ(x1279) & Succ(Succ(Zero))=x1287 & Succ(Succ(Succ(x1285)))=x1286 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x1285)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x1285))), Zero, Succ(x1285)))), Neg(Succ(Succ(Succ(Succ(Succ(x1285)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 (13) (new_primModNatS02(x1289, x1288)=Succ(x1279) & Succ(Succ(Zero))=x1289 & Succ(Succ(Zero))=x1288 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 (14) (new_primModNatS02(x1292, x1291)=Succ(x1279) & Succ(Succ(Succ(x1290)))=x1292 & Succ(Succ(Zero))=x1291 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x1290)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(x1290))), Succ(Succ(Zero)), Succ(x1290), Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x1290)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (11) using rule (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (15) (new_primModNatS01(x1283, x1282, x1281, x1280)=Succ(x1279) & Succ(Succ(Succ(x1281)))=x1283 & Succ(Succ(Succ(x1280)))=x1282 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x1280)))))), Pos(Succ(Succ(Succ(Succ(Succ(x1281)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(x1281))), Succ(Succ(Succ(x1280))), Succ(x1281), Succ(x1280)))), Neg(Succ(Succ(Succ(Succ(Succ(x1280)))))), Pos(Succ(Succ(Succ(Succ(Succ(x1281)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (12) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (16) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x1285)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x1285))), Zero, Succ(x1285)))), Neg(Succ(Succ(Succ(Succ(Succ(x1285)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (13) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x1289, x1288)=Succ(x1279) which results in the following new constraint: 67.83/34.94 67.83/34.94 (17) (new_primModNatS1(new_primMinusNatS2(Succ(x1307), Succ(x1306)), Succ(x1306))=Succ(x1279) & Succ(Succ(Zero))=x1307 & Succ(Succ(Zero))=x1306 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (14) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x1292, x1291)=Succ(x1279) which results in the following new constraint: 67.83/34.94 67.83/34.94 (18) (new_primModNatS1(new_primMinusNatS2(Succ(x1313), Succ(x1312)), Succ(x1312))=Succ(x1279) & Succ(Succ(Succ(x1290)))=x1313 & Succ(Succ(Zero))=x1312 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x1290)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(x1290))), Succ(Succ(Zero)), Succ(x1290), Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x1290)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (15) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x1283, x1282, x1281, x1280)=Succ(x1279) which results in the following new constraints: 67.83/34.94 67.83/34.94 (19) (new_primModNatS01(x1296, x1295, x1294, x1293)=Succ(x1279) & Succ(Succ(Succ(Succ(x1294))))=x1296 & Succ(Succ(Succ(Succ(x1293))))=x1295 & (\/x1297:new_primModNatS01(x1296, x1295, x1294, x1293)=Succ(x1297) & Succ(Succ(Succ(x1294)))=x1296 & Succ(Succ(Succ(x1293)))=x1295 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x1293)))))), Pos(Succ(Succ(Succ(Succ(Succ(x1294)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(x1294))), Succ(Succ(Succ(x1293))), Succ(x1294), Succ(x1293)))), Neg(Succ(Succ(Succ(Succ(Succ(x1293)))))), Pos(Succ(Succ(Succ(Succ(Succ(x1294)))))))) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1293))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1294))))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x1294)))), Succ(Succ(Succ(Succ(x1293)))), Succ(Succ(x1294)), Succ(Succ(x1293))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1293))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1294))))))))) 67.83/34.94 67.83/34.94 (20) (Succ(Succ(x1300))=Succ(x1279) & Succ(Succ(Succ(Zero)))=x1300 & Succ(Succ(Succ(Succ(x1298))))=x1299 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1298))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x1298)))), Succ(Zero), Succ(Succ(x1298))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1298))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 (21) (new_primModNatS02(x1302, x1301)=Succ(x1279) & Succ(Succ(Succ(Zero)))=x1302 & Succ(Succ(Succ(Zero)))=x1301 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 (22) (new_primModNatS02(x1305, x1304)=Succ(x1279) & Succ(Succ(Succ(Succ(x1303))))=x1305 & Succ(Succ(Succ(Zero)))=x1304 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1303))))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x1303)))), Succ(Succ(Succ(Zero))), Succ(Succ(x1303)), Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1303))))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (19) using rules (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (23) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1293))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1294))))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x1294)))), Succ(Succ(Succ(Succ(x1293)))), Succ(Succ(x1294)), Succ(Succ(x1293))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1293))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1294))))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (20) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (24) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1298))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x1298)))), Succ(Zero), Succ(Succ(x1298))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1298))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (21) using rules (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (25) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (22) using rules (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (26) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1303))))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x1303)))), Succ(Succ(Succ(Zero))), Succ(Succ(x1303)), Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1303))))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (17) using rules (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (27) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (18) using rules (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (28) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x1290)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(x1290))), Succ(Succ(Zero)), Succ(x1290), Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x1290)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x790))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x790))))), Pos(Succ(Succ(Succ(Zero))))), new_gcd0Gcd'1(False, x791, x792) -> new_gcd0Gcd'0(x791, new_rem(x792, x791)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x790))))), Pos(Succ(Succ(Succ(Zero)))))=new_gcd0Gcd'1(False, x791, x792) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x790))))), Pos(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x790))))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x790))))), Pos(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x790))))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822)))))), new_gcd0Gcd'1(False, x823, x824) -> new_gcd0Gcd'0(x823, new_rem(x824, x823)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))=new_gcd0Gcd'1(False, x823, x824) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))=x1318 & new_esEs(x1318)=False ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_esEs(x1318)=False which results in the following new constraints: 67.83/34.94 67.83/34.94 (3) (new_primEqInt2=False & Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))=Neg(Zero) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))) 67.83/34.94 67.83/34.94 (4) (new_primEqInt1=False & Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))=Pos(Zero) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))) 67.83/34.94 67.83/34.94 (5) (new_primEqInt(x1319)=False & Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))=Pos(Succ(x1319)) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))) 67.83/34.94 67.83/34.94 (6) (new_primEqInt0(x1320)=False & Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))=Neg(Succ(x1320)) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (3) using rules (I), (II).We simplified constraint (4) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (7) (new_primEqInt1=False & Succ(x822)=x1321 & Succ(Succ(Zero))=x1322 & new_primModNatS1(x1321, x1322)=Zero ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (5) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (8) (new_primEqInt(x1319)=False & Succ(x822)=x1323 & Succ(Succ(Zero))=x1324 & new_primModNatS1(x1323, x1324)=Succ(x1319) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (6) using rules (I), (II).We solved constraint (7) using rule (V) (with possible (I) afterwards).We simplified constraint (8) using rule (V) (with possible (I) afterwards) using induction on new_primEqInt(x1319)=False which results in the following new constraint: 67.83/34.94 67.83/34.94 (9) (False=False & Succ(x822)=x1323 & Succ(Succ(Zero))=x1324 & new_primModNatS1(x1323, x1324)=Succ(x1325) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (9) using rules (I), (II) which results in the following new constraint: 67.83/34.94 67.83/34.94 (10) (Succ(x822)=x1323 & Succ(Succ(Zero))=x1324 & new_primModNatS1(x1323, x1324)=Succ(x1325) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (10) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS1(x1323, x1324)=Succ(x1325) which results in the following new constraints: 67.83/34.94 67.83/34.94 (11) (new_primModNatS1(new_primMinusNatS0(x1326), Zero)=Succ(x1325) & Succ(x822)=Succ(Succ(x1326)) & Succ(Succ(Zero))=Zero ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))) 67.83/34.94 67.83/34.94 (12) (Succ(Zero)=Succ(x1325) & Succ(x822)=Succ(Zero) & Succ(Succ(Zero))=Succ(x1327) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))) 67.83/34.94 67.83/34.94 (13) (new_primModNatS01(x1329, x1328, x1329, x1328)=Succ(x1325) & Succ(x822)=Succ(Succ(x1329)) & Succ(Succ(Zero))=Succ(x1328) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))) 67.83/34.94 67.83/34.94 (14) (new_primModNatS1(new_primMinusNatS1, Zero)=Succ(x1325) & Succ(x822)=Succ(Zero) & Succ(Succ(Zero))=Zero ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x822), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x822))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (11) using rules (I), (II).We simplified constraint (12) using rules (I), (II), (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (15) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (13) using rules (I), (II), (III), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (16) (x1329=x1331 & x1328=x1332 & new_primModNatS01(x1329, x1328, x1331, x1332)=Succ(x1325) & Succ(Zero)=x1328 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1329)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(x1329)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1329)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (14) using rules (I), (II).We simplified constraint (16) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x1329, x1328, x1331, x1332)=Succ(x1325) which results in the following new constraints: 67.83/34.94 67.83/34.94 (17) (new_primModNatS01(x1336, x1335, x1334, x1333)=Succ(x1325) & x1336=Succ(x1334) & x1335=Succ(x1333) & Succ(Zero)=x1335 & (\/x1337:new_primModNatS01(x1336, x1335, x1334, x1333)=Succ(x1337) & x1336=x1334 & x1335=x1333 & Succ(Zero)=x1335 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1336)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(x1336)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1336)))))))) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1336)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(x1336)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1336)))))))) 67.83/34.94 67.83/34.94 (18) (Succ(Succ(x1340))=Succ(x1325) & x1340=Zero & x1339=Succ(x1338) & Succ(Zero)=x1339 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1340)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(x1340)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1340)))))))) 67.83/34.94 67.83/34.94 (19) (new_primModNatS02(x1342, x1341)=Succ(x1325) & x1342=Zero & x1341=Zero & Succ(Zero)=x1341 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1342)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(x1342)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1342)))))))) 67.83/34.94 67.83/34.94 (20) (new_primModNatS02(x1345, x1344)=Succ(x1325) & x1345=Succ(x1343) & x1344=Zero & Succ(Zero)=x1344 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1345)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(x1345)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(x1345)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (17) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (21) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1334))))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(Succ(x1334))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1334))))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (18) using rules (I), (II), (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (22) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (19) using rules (I), (II), (III).We solved constraint (20) using rules (I), (II), (III). 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x854, Zero, x854, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854)))))), new_gcd0Gcd'1(False, x855, x856) -> new_gcd0Gcd'0(x855, new_rem(x856, x855)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x854, Zero, x854, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))=new_gcd0Gcd'1(False, x855, x856) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x854, Zero, x854, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (Pos(new_primModNatS01(x854, Zero, x854, Zero))=x1348 & new_esEs(x1348)=False ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x854, Zero, x854, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_esEs(x1348)=False which results in the following new constraints: 67.83/34.94 67.83/34.94 (3) (new_primEqInt2=False & Pos(new_primModNatS01(x854, Zero, x854, Zero))=Neg(Zero) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x854, Zero, x854, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))) 67.83/34.94 67.83/34.94 (4) (new_primEqInt1=False & Pos(new_primModNatS01(x854, Zero, x854, Zero))=Pos(Zero) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x854, Zero, x854, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))) 67.83/34.94 67.83/34.94 (5) (new_primEqInt(x1349)=False & Pos(new_primModNatS01(x854, Zero, x854, Zero))=Pos(Succ(x1349)) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x854, Zero, x854, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))) 67.83/34.94 67.83/34.94 (6) (new_primEqInt0(x1350)=False & Pos(new_primModNatS01(x854, Zero, x854, Zero))=Neg(Succ(x1350)) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x854, Zero, x854, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (3) using rules (I), (II).We simplified constraint (4) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (7) (new_primEqInt1=False & Zero=x1351 & x854=x1352 & Zero=x1353 & new_primModNatS01(x854, x1351, x1352, x1353)=Zero ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x854, Zero, x854, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (5) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (8) (new_primEqInt(x1349)=False & Zero=x1354 & x854=x1355 & Zero=x1356 & new_primModNatS01(x854, x1354, x1355, x1356)=Succ(x1349) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x854, Zero, x854, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (6) using rules (I), (II).We solved constraint (7) using rule (V) (with possible (I) afterwards).We simplified constraint (8) using rule (V) (with possible (I) afterwards) using induction on new_primEqInt(x1349)=False which results in the following new constraint: 67.83/34.94 67.83/34.94 (9) (False=False & Zero=x1354 & x854=x1355 & Zero=x1356 & new_primModNatS01(x854, x1354, x1355, x1356)=Succ(x1357) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x854, Zero, x854, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (9) using rules (I), (II) which results in the following new constraint: 67.83/34.94 67.83/34.94 (10) (Zero=x1354 & x854=x1355 & Zero=x1356 & new_primModNatS01(x854, x1354, x1355, x1356)=Succ(x1357) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x854, Zero, x854, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x854))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (10) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x854, x1354, x1355, x1356)=Succ(x1357) which results in the following new constraints: 67.83/34.94 67.83/34.94 (11) (new_primModNatS01(x1361, x1360, x1359, x1358)=Succ(x1357) & Zero=x1360 & x1361=Succ(x1359) & Zero=Succ(x1358) & (\/x1362:new_primModNatS01(x1361, x1360, x1359, x1358)=Succ(x1362) & Zero=x1360 & x1361=x1359 & Zero=x1358 ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1361))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x1361, Zero, x1361, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1361))))))) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1361))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x1361, Zero, x1361, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1361))))))) 67.83/34.94 67.83/34.94 (12) (Succ(Succ(x1365))=Succ(x1357) & Zero=x1364 & x1365=Zero & Zero=Succ(x1363) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1365))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x1365, Zero, x1365, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1365))))))) 67.83/34.94 67.83/34.94 (13) (new_primModNatS02(x1367, x1366)=Succ(x1357) & Zero=x1366 & x1367=Zero & Zero=Zero ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1367))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x1367, Zero, x1367, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1367))))))) 67.83/34.94 67.83/34.94 (14) (new_primModNatS02(x1370, x1369)=Succ(x1357) & Zero=x1369 & x1370=Succ(x1368) & Zero=Zero ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1370))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x1370, Zero, x1370, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x1370))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (11) using rules (I), (II).We solved constraint (12) using rules (I), (II).We simplified constraint (13) using rules (I), (II), (III), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (15) (Zero=x1371 & new_primModNatS02(x1371, x1366)=Succ(x1357) & Zero=x1366 ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Zero, Zero, Zero, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (14) using rules (I), (II), (III), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (16) (Succ(x1368)=x1378 & new_primModNatS02(x1378, x1369)=Succ(x1357) & Zero=x1369 ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Succ(x1368)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x1368), Zero, Succ(x1368), Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Succ(x1368)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (15) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x1371, x1366)=Succ(x1357) which results in the following new constraint: 67.83/34.94 67.83/34.94 (17) (new_primModNatS1(new_primMinusNatS2(Succ(x1373), Succ(x1372)), Succ(x1372))=Succ(x1357) & Zero=x1373 & Zero=x1372 ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Zero, Zero, Zero, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (17) using rules (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (18) (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Zero, Zero, Zero, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (16) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x1378, x1369)=Succ(x1357) which results in the following new constraint: 67.83/34.94 67.83/34.94 (19) (new_primModNatS1(new_primMinusNatS2(Succ(x1380), Succ(x1379)), Succ(x1379))=Succ(x1357) & Succ(x1368)=x1380 & Zero=x1379 ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Succ(x1368)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x1368), Zero, Succ(x1368), Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Succ(x1368)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (19) using rules (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (20) (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Succ(x1368)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x1368), Zero, Succ(x1368), Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Succ(x1368)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))), new_gcd0Gcd'1(False, x884, x885) -> new_gcd0Gcd'0(x884, new_rem(x885, x884)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))=new_gcd0Gcd'1(False, x884, x885) ==> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x891)), Succ(Succ(x890)), x891, x890))), Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891)))))), new_gcd0Gcd'1(False, x892, x893) -> new_gcd0Gcd'0(x892, new_rem(x893, x892)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x891)), Succ(Succ(x890)), x891, x890))), Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))=new_gcd0Gcd'1(False, x892, x893) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x891)), Succ(Succ(x890)), x891, x890))), Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (Neg(new_primModNatS01(Succ(Succ(x891)), Succ(Succ(x890)), x891, x890))=x1385 & new_esEs(x1385)=False ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x891)), Succ(Succ(x890)), x891, x890))), Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_esEs(x1385)=False which results in the following new constraints: 67.83/34.94 67.83/34.94 (3) (new_primEqInt2=False & Neg(new_primModNatS01(Succ(Succ(x891)), Succ(Succ(x890)), x891, x890))=Neg(Zero) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x891)), Succ(Succ(x890)), x891, x890))), Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))) 67.83/34.94 67.83/34.94 (4) (new_primEqInt1=False & Neg(new_primModNatS01(Succ(Succ(x891)), Succ(Succ(x890)), x891, x890))=Pos(Zero) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x891)), Succ(Succ(x890)), x891, x890))), Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))) 67.83/34.94 67.83/34.94 (5) (new_primEqInt(x1386)=False & Neg(new_primModNatS01(Succ(Succ(x891)), Succ(Succ(x890)), x891, x890))=Pos(Succ(x1386)) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x891)), Succ(Succ(x890)), x891, x890))), Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))) 67.83/34.94 67.83/34.94 (6) (new_primEqInt0(x1387)=False & Neg(new_primModNatS01(Succ(Succ(x891)), Succ(Succ(x890)), x891, x890))=Neg(Succ(x1387)) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x891)), Succ(Succ(x890)), x891, x890))), Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (3) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (7) (new_primEqInt2=False & Succ(Succ(x891))=x1388 & Succ(Succ(x890))=x1389 & new_primModNatS01(x1388, x1389, x891, x890)=Zero ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x891)), Succ(Succ(x890)), x891, x890))), Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (8) (new_primEqInt0(x1387)=False & Succ(Succ(x891))=x1390 & Succ(Succ(x890))=x1391 & new_primModNatS01(x1390, x1391, x891, x890)=Succ(x1387) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x891)), Succ(Succ(x890)), x891, x890))), Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (7) using rule (V) (with possible (I) afterwards).We simplified constraint (8) using rule (V) (with possible (I) afterwards) using induction on new_primEqInt0(x1387)=False which results in the following new constraint: 67.83/34.94 67.83/34.94 (9) (False=False & Succ(Succ(x891))=x1390 & Succ(Succ(x890))=x1391 & new_primModNatS01(x1390, x1391, x891, x890)=Succ(x1392) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x891)), Succ(Succ(x890)), x891, x890))), Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (9) using rules (I), (II) which results in the following new constraint: 67.83/34.94 67.83/34.94 (10) (Succ(Succ(x891))=x1390 & Succ(Succ(x890))=x1391 & new_primModNatS01(x1390, x1391, x891, x890)=Succ(x1392) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x891)), Succ(Succ(x890)), x891, x890))), Pos(Succ(Succ(Succ(Succ(x890))))), Neg(Succ(Succ(Succ(Succ(x891))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (10) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x1390, x1391, x891, x890)=Succ(x1392) which results in the following new constraints: 67.83/34.94 67.83/34.94 (11) (new_primModNatS01(x1396, x1395, x1394, x1393)=Succ(x1392) & Succ(Succ(Succ(x1394)))=x1396 & Succ(Succ(Succ(x1393)))=x1395 & (\/x1397:new_primModNatS01(x1396, x1395, x1394, x1393)=Succ(x1397) & Succ(Succ(x1394))=x1396 & Succ(Succ(x1393))=x1395 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x1393))))), Neg(Succ(Succ(Succ(Succ(x1394))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x1394)), Succ(Succ(x1393)), x1394, x1393))), Pos(Succ(Succ(Succ(Succ(x1393))))), Neg(Succ(Succ(Succ(Succ(x1394))))))) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x1393)))))), Neg(Succ(Succ(Succ(Succ(Succ(x1394)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(x1394))), Succ(Succ(Succ(x1393))), Succ(x1394), Succ(x1393)))), Pos(Succ(Succ(Succ(Succ(Succ(x1393)))))), Neg(Succ(Succ(Succ(Succ(Succ(x1394)))))))) 67.83/34.94 67.83/34.94 (12) (Succ(Succ(x1400))=Succ(x1392) & Succ(Succ(Zero))=x1400 & Succ(Succ(Succ(x1398)))=x1399 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x1398)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x1398))), Zero, Succ(x1398)))), Pos(Succ(Succ(Succ(Succ(Succ(x1398)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 (13) (new_primModNatS02(x1402, x1401)=Succ(x1392) & Succ(Succ(Zero))=x1402 & Succ(Succ(Zero))=x1401 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 (14) (new_primModNatS02(x1405, x1404)=Succ(x1392) & Succ(Succ(Succ(x1403)))=x1405 & Succ(Succ(Zero))=x1404 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x1403)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(x1403))), Succ(Succ(Zero)), Succ(x1403), Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x1403)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (11) using rule (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (15) (new_primModNatS01(x1396, x1395, x1394, x1393)=Succ(x1392) & Succ(Succ(Succ(x1394)))=x1396 & Succ(Succ(Succ(x1393)))=x1395 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x1393)))))), Neg(Succ(Succ(Succ(Succ(Succ(x1394)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(x1394))), Succ(Succ(Succ(x1393))), Succ(x1394), Succ(x1393)))), Pos(Succ(Succ(Succ(Succ(Succ(x1393)))))), Neg(Succ(Succ(Succ(Succ(Succ(x1394)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (12) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (16) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x1398)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x1398))), Zero, Succ(x1398)))), Pos(Succ(Succ(Succ(Succ(Succ(x1398)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (13) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x1402, x1401)=Succ(x1392) which results in the following new constraint: 67.83/34.94 67.83/34.94 (17) (new_primModNatS1(new_primMinusNatS2(Succ(x1420), Succ(x1419)), Succ(x1419))=Succ(x1392) & Succ(Succ(Zero))=x1420 & Succ(Succ(Zero))=x1419 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (14) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x1405, x1404)=Succ(x1392) which results in the following new constraint: 67.83/34.94 67.83/34.94 (18) (new_primModNatS1(new_primMinusNatS2(Succ(x1426), Succ(x1425)), Succ(x1425))=Succ(x1392) & Succ(Succ(Succ(x1403)))=x1426 & Succ(Succ(Zero))=x1425 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x1403)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(x1403))), Succ(Succ(Zero)), Succ(x1403), Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x1403)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (15) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x1396, x1395, x1394, x1393)=Succ(x1392) which results in the following new constraints: 67.83/34.94 67.83/34.94 (19) (new_primModNatS01(x1409, x1408, x1407, x1406)=Succ(x1392) & Succ(Succ(Succ(Succ(x1407))))=x1409 & Succ(Succ(Succ(Succ(x1406))))=x1408 & (\/x1410:new_primModNatS01(x1409, x1408, x1407, x1406)=Succ(x1410) & Succ(Succ(Succ(x1407)))=x1409 & Succ(Succ(Succ(x1406)))=x1408 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x1406)))))), Neg(Succ(Succ(Succ(Succ(Succ(x1407)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(x1407))), Succ(Succ(Succ(x1406))), Succ(x1407), Succ(x1406)))), Pos(Succ(Succ(Succ(Succ(Succ(x1406)))))), Neg(Succ(Succ(Succ(Succ(Succ(x1407)))))))) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1406))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1407))))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x1407)))), Succ(Succ(Succ(Succ(x1406)))), Succ(Succ(x1407)), Succ(Succ(x1406))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1406))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1407))))))))) 67.83/34.94 67.83/34.94 (20) (Succ(Succ(x1413))=Succ(x1392) & Succ(Succ(Succ(Zero)))=x1413 & Succ(Succ(Succ(Succ(x1411))))=x1412 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1411))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x1411)))), Succ(Zero), Succ(Succ(x1411))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1411))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 (21) (new_primModNatS02(x1415, x1414)=Succ(x1392) & Succ(Succ(Succ(Zero)))=x1415 & Succ(Succ(Succ(Zero)))=x1414 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 (22) (new_primModNatS02(x1418, x1417)=Succ(x1392) & Succ(Succ(Succ(Succ(x1416))))=x1418 & Succ(Succ(Succ(Zero)))=x1417 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1416))))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x1416)))), Succ(Succ(Succ(Zero))), Succ(Succ(x1416)), Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1416))))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (19) using rules (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (23) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1406))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1407))))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x1407)))), Succ(Succ(Succ(Succ(x1406)))), Succ(Succ(x1407)), Succ(Succ(x1406))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1406))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1407))))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (20) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (24) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1411))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x1411)))), Succ(Zero), Succ(Succ(x1411))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1411))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (21) using rules (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (25) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (22) using rules (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (26) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1416))))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x1416)))), Succ(Succ(Succ(Zero))), Succ(Succ(x1416)), Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1416))))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (17) using rules (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (27) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (18) using rules (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (28) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x1403)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(x1403))), Succ(Succ(Zero)), Succ(x1403), Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x1403)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x950))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x950))))), Neg(Succ(Succ(Succ(Zero))))), new_gcd0Gcd'1(False, x951, x952) -> new_gcd0Gcd'0(x951, new_rem(x952, x951)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x950))))), Neg(Succ(Succ(Succ(Zero)))))=new_gcd0Gcd'1(False, x951, x952) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x950))))), Neg(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x950))))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x950))))), Neg(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x950))))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982)))))), new_gcd0Gcd'1(False, x983, x984) -> new_gcd0Gcd'0(x983, new_rem(x984, x983)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))=new_gcd0Gcd'1(False, x983, x984) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))=x1431 & new_esEs(x1431)=False ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_esEs(x1431)=False which results in the following new constraints: 67.83/34.94 67.83/34.94 (3) (new_primEqInt2=False & Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))=Neg(Zero) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))) 67.83/34.94 67.83/34.94 (4) (new_primEqInt1=False & Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))=Pos(Zero) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))) 67.83/34.94 67.83/34.94 (5) (new_primEqInt(x1432)=False & Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))=Pos(Succ(x1432)) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))) 67.83/34.94 67.83/34.94 (6) (new_primEqInt0(x1433)=False & Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))=Neg(Succ(x1433)) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (3) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (7) (new_primEqInt2=False & Succ(x982)=x1434 & Succ(Succ(Zero))=x1435 & new_primModNatS1(x1434, x1435)=Zero ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (8) (new_primEqInt0(x1433)=False & Succ(x982)=x1436 & Succ(Succ(Zero))=x1437 & new_primModNatS1(x1436, x1437)=Succ(x1433) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (7) using rule (V) (with possible (I) afterwards).We simplified constraint (8) using rule (V) (with possible (I) afterwards) using induction on new_primEqInt0(x1433)=False which results in the following new constraint: 67.83/34.94 67.83/34.94 (9) (False=False & Succ(x982)=x1436 & Succ(Succ(Zero))=x1437 & new_primModNatS1(x1436, x1437)=Succ(x1438) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (9) using rules (I), (II) which results in the following new constraint: 67.83/34.94 67.83/34.94 (10) (Succ(x982)=x1436 & Succ(Succ(Zero))=x1437 & new_primModNatS1(x1436, x1437)=Succ(x1438) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (10) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS1(x1436, x1437)=Succ(x1438) which results in the following new constraints: 67.83/34.94 67.83/34.94 (11) (new_primModNatS1(new_primMinusNatS0(x1439), Zero)=Succ(x1438) & Succ(x982)=Succ(Succ(x1439)) & Succ(Succ(Zero))=Zero ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))) 67.83/34.94 67.83/34.94 (12) (Succ(Zero)=Succ(x1438) & Succ(x982)=Succ(Zero) & Succ(Succ(Zero))=Succ(x1440) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))) 67.83/34.94 67.83/34.94 (13) (new_primModNatS01(x1442, x1441, x1442, x1441)=Succ(x1438) & Succ(x982)=Succ(Succ(x1442)) & Succ(Succ(Zero))=Succ(x1441) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))) 67.83/34.94 67.83/34.94 (14) (new_primModNatS1(new_primMinusNatS1, Zero)=Succ(x1438) & Succ(x982)=Succ(Zero) & Succ(Succ(Zero))=Zero ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x982), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x982))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (11) using rules (I), (II).We simplified constraint (12) using rules (I), (II), (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (15) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (13) using rules (I), (II), (III), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (16) (x1442=x1444 & x1441=x1445 & new_primModNatS01(x1442, x1441, x1444, x1445)=Succ(x1438) & Succ(Zero)=x1441 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1442)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(x1442)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1442)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (14) using rules (I), (II).We simplified constraint (16) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x1442, x1441, x1444, x1445)=Succ(x1438) which results in the following new constraints: 67.83/34.94 67.83/34.94 (17) (new_primModNatS01(x1449, x1448, x1447, x1446)=Succ(x1438) & x1449=Succ(x1447) & x1448=Succ(x1446) & Succ(Zero)=x1448 & (\/x1450:new_primModNatS01(x1449, x1448, x1447, x1446)=Succ(x1450) & x1449=x1447 & x1448=x1446 & Succ(Zero)=x1448 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1449)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(x1449)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1449)))))))) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1449)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(x1449)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1449)))))))) 67.83/34.94 67.83/34.94 (18) (Succ(Succ(x1453))=Succ(x1438) & x1453=Zero & x1452=Succ(x1451) & Succ(Zero)=x1452 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1453)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(x1453)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1453)))))))) 67.83/34.94 67.83/34.94 (19) (new_primModNatS02(x1455, x1454)=Succ(x1438) & x1455=Zero & x1454=Zero & Succ(Zero)=x1454 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1455)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(x1455)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1455)))))))) 67.83/34.94 67.83/34.94 (20) (new_primModNatS02(x1458, x1457)=Succ(x1438) & x1458=Succ(x1456) & x1457=Zero & Succ(Zero)=x1457 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1458)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(x1458)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(x1458)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (17) using rules (I), (II), (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (21) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1447))))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(Succ(x1447))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1447))))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (18) using rules (I), (II), (III), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (22) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (19) using rules (I), (II), (III).We solved constraint (20) using rules (I), (II), (III). 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1014, Zero, x1014, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014)))))), new_gcd0Gcd'1(False, x1015, x1016) -> new_gcd0Gcd'0(x1015, new_rem(x1016, x1015)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1014, Zero, x1014, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))=new_gcd0Gcd'1(False, x1015, x1016) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1014, Zero, x1014, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (Neg(new_primModNatS01(x1014, Zero, x1014, Zero))=x1461 & new_esEs(x1461)=False ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1014, Zero, x1014, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_esEs(x1461)=False which results in the following new constraints: 67.83/34.94 67.83/34.94 (3) (new_primEqInt2=False & Neg(new_primModNatS01(x1014, Zero, x1014, Zero))=Neg(Zero) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1014, Zero, x1014, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))) 67.83/34.94 67.83/34.94 (4) (new_primEqInt1=False & Neg(new_primModNatS01(x1014, Zero, x1014, Zero))=Pos(Zero) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1014, Zero, x1014, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))) 67.83/34.94 67.83/34.94 (5) (new_primEqInt(x1462)=False & Neg(new_primModNatS01(x1014, Zero, x1014, Zero))=Pos(Succ(x1462)) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1014, Zero, x1014, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))) 67.83/34.94 67.83/34.94 (6) (new_primEqInt0(x1463)=False & Neg(new_primModNatS01(x1014, Zero, x1014, Zero))=Neg(Succ(x1463)) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1014, Zero, x1014, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (3) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (7) (new_primEqInt2=False & Zero=x1464 & x1014=x1465 & Zero=x1466 & new_primModNatS01(x1014, x1464, x1465, x1466)=Zero ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1014, Zero, x1014, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (4) using rules (I), (II).We solved constraint (5) using rules (I), (II).We simplified constraint (6) using rules (I), (II), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (8) (new_primEqInt0(x1463)=False & Zero=x1467 & x1014=x1468 & Zero=x1469 & new_primModNatS01(x1014, x1467, x1468, x1469)=Succ(x1463) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1014, Zero, x1014, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (7) using rule (V) (with possible (I) afterwards).We simplified constraint (8) using rule (V) (with possible (I) afterwards) using induction on new_primEqInt0(x1463)=False which results in the following new constraint: 67.83/34.94 67.83/34.94 (9) (False=False & Zero=x1467 & x1014=x1468 & Zero=x1469 & new_primModNatS01(x1014, x1467, x1468, x1469)=Succ(x1470) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1014, Zero, x1014, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (9) using rules (I), (II) which results in the following new constraint: 67.83/34.94 67.83/34.94 (10) (Zero=x1467 & x1014=x1468 & Zero=x1469 & new_primModNatS01(x1014, x1467, x1468, x1469)=Succ(x1470) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1014, Zero, x1014, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1014))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (10) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x1014, x1467, x1468, x1469)=Succ(x1470) which results in the following new constraints: 67.83/34.94 67.83/34.94 (11) (new_primModNatS01(x1474, x1473, x1472, x1471)=Succ(x1470) & Zero=x1473 & x1474=Succ(x1472) & Zero=Succ(x1471) & (\/x1475:new_primModNatS01(x1474, x1473, x1472, x1471)=Succ(x1475) & Zero=x1473 & x1474=x1472 & Zero=x1471 ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1474))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1474, Zero, x1474, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1474))))))) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1474))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1474, Zero, x1474, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1474))))))) 67.83/34.94 67.83/34.94 (12) (Succ(Succ(x1478))=Succ(x1470) & Zero=x1477 & x1478=Zero & Zero=Succ(x1476) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1478))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1478, Zero, x1478, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1478))))))) 67.83/34.94 67.83/34.94 (13) (new_primModNatS02(x1480, x1479)=Succ(x1470) & Zero=x1479 & x1480=Zero & Zero=Zero ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1480))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1480, Zero, x1480, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1480))))))) 67.83/34.94 67.83/34.94 (14) (new_primModNatS02(x1483, x1482)=Succ(x1470) & Zero=x1482 & x1483=Succ(x1481) & Zero=Zero ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1483))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x1483, Zero, x1483, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x1483))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We solved constraint (11) using rules (I), (II).We solved constraint (12) using rules (I), (II).We simplified constraint (13) using rules (I), (II), (III), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (15) (Zero=x1484 & new_primModNatS02(x1484, x1479)=Succ(x1470) & Zero=x1479 ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Zero, Zero, Zero, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (14) using rules (I), (II), (III), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (16) (Succ(x1481)=x1491 & new_primModNatS02(x1491, x1482)=Succ(x1470) & Zero=x1482 ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Succ(x1481)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x1481), Zero, Succ(x1481), Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Succ(x1481)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (15) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x1484, x1479)=Succ(x1470) which results in the following new constraint: 67.83/34.94 67.83/34.94 (17) (new_primModNatS1(new_primMinusNatS2(Succ(x1486), Succ(x1485)), Succ(x1485))=Succ(x1470) & Zero=x1486 & Zero=x1485 ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Zero, Zero, Zero, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (17) using rules (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (18) (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Zero, Zero, Zero, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (16) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x1491, x1482)=Succ(x1470) which results in the following new constraint: 67.83/34.94 67.83/34.94 (19) (new_primModNatS1(new_primMinusNatS2(Succ(x1493), Succ(x1492)), Succ(x1492))=Succ(x1470) & Succ(x1481)=x1493 & Zero=x1492 ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Succ(x1481)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x1481), Zero, Succ(x1481), Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Succ(x1481)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (19) using rules (III), (IV), (VII) which results in the following new constraint: 67.83/34.94 67.83/34.94 (20) (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Succ(x1481)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x1481), Zero, Succ(x1481), Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Succ(x1481)))))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 For Pair new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) the following chains were created: 67.83/34.94 *We consider the chain new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))), new_gcd0Gcd'1(False, x1044, x1045) -> new_gcd0Gcd'0(x1044, new_rem(x1045, x1044)) which results in the following constraint: 67.83/34.94 67.83/34.94 (1) (new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))=new_gcd0Gcd'1(False, x1044, x1045) ==> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 67.83/34.94 67.83/34.94 (2) (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 67.83/34.94 To summarize, we get the following constraints P__>=_ for the following pairs. 67.83/34.94 67.83/34.94 *new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.94 67.83/34.94 *(new_gcd0Gcd'0(Neg(Succ(Zero)), Neg(Succ(Succ(x4))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(x4))), Neg(Succ(Zero)))) 67.83/34.94 67.83/34.94 67.83/34.94 *(new_gcd0Gcd'0(Pos(Succ(Zero)), Pos(Succ(Succ(x9))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(x9))), Pos(Succ(Zero)))) 67.83/34.94 67.83/34.94 67.83/34.94 *(new_gcd0Gcd'0(Pos(Succ(Zero)), Neg(Succ(Succ(x12))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(x12))), Pos(Succ(Zero)))) 67.83/34.94 67.83/34.94 67.83/34.94 *(new_gcd0Gcd'0(Neg(Succ(Zero)), Pos(Succ(Succ(x15))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(x15))), Neg(Succ(Zero)))) 67.83/34.94 67.83/34.94 67.83/34.94 *(new_gcd0Gcd'0(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x18)))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(x18)))), Neg(Succ(Succ(Zero))))) 67.83/34.94 67.83/34.94 67.83/34.94 *(new_gcd0Gcd'0(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x21)))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(x21)))), Pos(Succ(Succ(Zero))))) 67.83/34.94 67.83/34.94 67.83/34.94 *(new_gcd0Gcd'0(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x24)))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(x24)))), Pos(Succ(Succ(Zero))))) 67.83/34.94 67.83/34.94 67.83/34.94 *(new_gcd0Gcd'0(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x27)))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(x27)))), Neg(Succ(Succ(Zero))))) 67.83/34.94 67.83/34.94 67.83/34.94 *(new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Succ(x31))))), Neg(Succ(Succ(Succ(Succ(x30))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x30))))), Neg(Succ(Succ(Succ(Succ(x31))))))) 67.83/34.94 67.83/34.94 67.83/34.94 *(new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x34))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x34))))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 *(new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Succ(x37))))), Neg(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x37))))))) 67.83/34.94 67.83/34.94 67.83/34.94 *(new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Succ(x40))))), Neg(Succ(Succ(Zero))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x40))))))) 67.83/34.94 67.83/34.94 67.83/34.94 *(new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Zero))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.94 67.83/34.94 67.83/34.94 *(new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Succ(x46))))), Pos(Succ(Succ(Succ(Succ(x45))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x45))))), Pos(Succ(Succ(Succ(Succ(x46))))))) 67.83/34.94 67.83/34.94 67.83/34.94 *(new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x49))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x49))))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Succ(x52))))), Pos(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x52))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Succ(x55))))), Pos(Succ(Succ(Zero))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x55))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Zero))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Succ(x61))))), Neg(Succ(Succ(Succ(Succ(x60))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x60))))), Pos(Succ(Succ(Succ(Succ(x61))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x64))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x64))))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Succ(x67))))), Neg(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x67))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Succ(x70))))), Neg(Succ(Succ(Zero))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x70))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'0(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Zero))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Succ(x76))))), Pos(Succ(Succ(Succ(Succ(x75))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x75))))), Neg(Succ(Succ(Succ(Succ(x76))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x79))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x79))))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Succ(x82))))), Pos(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x82))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Succ(x85))))), Pos(Succ(Succ(Zero))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x85))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'0(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Zero))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(x90))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(x90))), Neg(Succ(Zero)))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'1(False, x120, x121)_>=_new_gcd0Gcd'0(x120, new_rem(x121, x120))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(x184))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(x184))), Pos(Succ(Zero)))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(x216))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(x216))), Pos(Succ(Zero)))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(x248))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(x248))), Neg(Succ(Zero)))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(x280)))), Neg(Succ(Succ(Zero))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x280)))), Neg(Succ(Succ(Zero))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(x312)))), Pos(Succ(Succ(Zero))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x312)))), Pos(Succ(Succ(Zero))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(x344)))), Pos(Succ(Succ(Zero))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x344)))), Pos(Succ(Succ(Zero))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(x376)))), Neg(Succ(Succ(Zero))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x376)))), Neg(Succ(Succ(Zero))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1072))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x1072)))), Succ(Zero), Succ(Succ(x1072))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1072))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x1059)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x1059))), Zero, Succ(x1059)))), Neg(Succ(Succ(Succ(Succ(Succ(x1059)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1067))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1068))))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x1068)))), Succ(Succ(Succ(Succ(x1067)))), Succ(Succ(x1068)), Succ(Succ(x1067))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1067))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1068))))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1077))))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x1077)))), Succ(Succ(Succ(Zero))), Succ(Succ(x1077)), Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1077))))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x1064)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(x1064))), Succ(Succ(Zero)), Succ(x1064), Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x1064)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x470))))), Neg(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x470))))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1108))))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(Succ(x1108))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1108))))))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Zero, Zero, Zero, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Succ(x1142)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x1142), Zero, Succ(x1142), Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Succ(x1142)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1185))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x1185)))), Succ(Zero), Succ(Succ(x1185))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1185))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x1172)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x1172))), Zero, Succ(x1172)))), Pos(Succ(Succ(Succ(Succ(Succ(x1172)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1180))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1181))))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x1181)))), Succ(Succ(Succ(Succ(x1180)))), Succ(Succ(x1181)), Succ(Succ(x1180))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1180))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1181))))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1190))))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x1190)))), Succ(Succ(Succ(Zero))), Succ(Succ(x1190)), Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1190))))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x1177)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(x1177))), Succ(Succ(Zero)), Succ(x1177), Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x1177)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x630))))), Pos(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x630))))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1221))))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(Succ(x1221))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1221))))))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Zero, Zero, Zero, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Succ(x1255)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x1255), Zero, Succ(x1255), Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Succ(x1255)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1298))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x1298)))), Succ(Zero), Succ(Succ(x1298))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1298))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x1285)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x1285))), Zero, Succ(x1285)))), Neg(Succ(Succ(Succ(Succ(Succ(x1285)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1293))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1294))))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x1294)))), Succ(Succ(Succ(Succ(x1293)))), Succ(Succ(x1294)), Succ(Succ(x1293))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1293))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1294))))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1303))))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x1303)))), Succ(Succ(Succ(Zero))), Succ(Succ(x1303)), Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1303))))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x1290)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(Succ(x1290))), Succ(Succ(Zero)), Succ(x1290), Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x1290)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x790))))), Pos(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x790))))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Zero), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(Zero)), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1334))))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(Succ(Succ(x1334))), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1334))))))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Zero, Zero, Zero, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Succ(x1368)))))))_>=_new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(x1368), Zero, Succ(x1368), Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(Succ(x1368)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero)))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1411))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x1411)))), Succ(Zero), Succ(Succ(x1411))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1411))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x1398)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x1398))), Zero, Succ(x1398)))), Pos(Succ(Succ(Succ(Succ(Succ(x1398)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1406))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1407))))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x1407)))), Succ(Succ(Succ(Succ(x1406)))), Succ(Succ(x1407)), Succ(Succ(x1406))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x1406))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1407))))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1416))))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x1416)))), Succ(Succ(Succ(Zero))), Succ(Succ(x1416)), Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1416))))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x1403)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(Succ(x1403))), Succ(Succ(Zero)), Succ(x1403), Zero))), Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x1403)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x950))))), Neg(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x950))))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Zero), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(Zero)), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1447))))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(Succ(Succ(x1447))), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x1447))))))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Zero, Zero, Zero, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Zero))))))) 67.83/34.95 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Succ(x1481)))))))_>=_new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(x1481), Zero, Succ(x1481), Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(Succ(x1481)))))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 *new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.95 67.83/34.95 *(new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))_>=_new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero)))))) 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.95 67.83/34.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. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (433) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_gcd0Gcd'0(vuz542, vuz557) -> new_gcd0Gcd'(vuz557, vuz542) 67.83/34.95 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.95 new_gcd0Gcd'1(False, vuz542, vuz549) -> new_gcd0Gcd'0(vuz542, new_rem(vuz549, vuz542)) 67.83/34.95 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.95 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 67.83/34.95 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 67.83/34.95 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.95 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.95 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 67.83/34.95 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 67.83/34.95 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.95 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.95 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.95 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.95 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.95 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.95 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.95 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.95 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.95 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.95 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Neg(Succ(Succ(Succ(Succ(x3))))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.95 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.95 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.95 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Pos(new_primModNatS01(x0, Zero, x0, Zero))), Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.95 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(Zero))))) 67.83/34.95 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), Pos(Succ(Succ(Succ(Succ(x3))))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.95 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.95 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) 67.83/34.95 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) -> new_gcd0Gcd'1(new_esEs(Neg(new_primModNatS01(x0, Zero, x0, Zero))), Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Succ(x0)))))) 67.83/34.95 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'1(False, Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(Zero))))) 67.83/34.95 67.83/34.95 The TRS R consists of the following rules: 67.83/34.95 67.83/34.95 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS01(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.95 new_primModNatS1(Succ(Succ(vuz549000)), Zero) -> new_primModNatS1(new_primMinusNatS0(vuz549000), Zero) 67.83/34.95 new_esEs(Neg(Zero)) -> new_primEqInt2 67.83/34.95 new_primModNatS1(Succ(Zero), Succ(vuz542000)) -> Succ(Zero) 67.83/34.95 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.95 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.95 new_esEs(Pos(Zero)) -> new_primEqInt1 67.83/34.95 new_primModNatS01(vuz594, vuz595, Zero, Succ(vuz5970)) -> Succ(Succ(vuz594)) 67.83/34.95 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.95 new_primModNatS1(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS01(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.95 new_rem(Neg(vuz5490), Neg(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.95 new_primModNatS1(Zero, vuz54200) -> Zero 67.83/34.95 new_rem(Pos(vuz5490), Pos(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.95 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.95 new_error -> error([]) 67.83/34.95 new_esEs(Pos(Succ(vuz55100))) -> new_primEqInt(vuz55100) 67.83/34.95 new_primEqInt2 -> True 67.83/34.95 new_rem(Neg(vuz5490), Neg(Zero)) -> new_error 67.83/34.95 new_primModNatS01(vuz594, vuz595, Zero, Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.95 new_rem(Pos(vuz5490), Neg(Zero)) -> new_error 67.83/34.95 new_rem(Neg(vuz5490), Pos(Zero)) -> new_error 67.83/34.95 new_esEs(Neg(Succ(vuz55100))) -> new_primEqInt0(vuz55100) 67.83/34.95 new_primModNatS01(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS02(vuz594, vuz595) 67.83/34.95 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS1, Zero) 67.83/34.95 new_primModNatS02(vuz594, vuz595) -> new_primModNatS1(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.95 new_rem(Pos(vuz5490), Neg(Succ(vuz54200))) -> Pos(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.95 new_primMinusNatS1 -> Zero 67.83/34.95 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.95 new_primEqInt1 -> True 67.83/34.95 new_rem(Neg(vuz5490), Pos(Succ(vuz54200))) -> Neg(new_primModNatS1(vuz5490, vuz54200)) 67.83/34.95 new_primEqInt0(vuz3260) -> False 67.83/34.95 new_primEqInt(vuz3250) -> False 67.83/34.95 new_rem(Pos(vuz5490), Pos(Zero)) -> new_error 67.83/34.95 67.83/34.95 The set Q consists of the following terms: 67.83/34.95 67.83/34.95 new_rem(Neg(x0), Neg(Zero)) 67.83/34.95 new_primEqInt1 67.83/34.95 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 67.83/34.95 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 67.83/34.95 new_primMinusNatS1 67.83/34.95 new_rem(Neg(x0), Neg(Succ(x1))) 67.83/34.95 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.95 new_primModNatS1(Succ(Zero), Succ(x0)) 67.83/34.95 new_primMinusNatS2(Zero, Zero) 67.83/34.95 new_error 67.83/34.95 new_primModNatS1(Succ(Zero), Zero) 67.83/34.95 new_rem(Pos(x0), Pos(Zero)) 67.83/34.95 new_primModNatS01(x0, x1, Zero, Zero) 67.83/34.95 new_primEqInt0(x0) 67.83/34.95 new_esEs(Pos(Zero)) 67.83/34.95 new_esEs(Pos(Succ(x0))) 67.83/34.95 new_rem(Pos(x0), Pos(Succ(x1))) 67.83/34.95 new_primModNatS02(x0, x1) 67.83/34.95 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.95 new_rem(Pos(x0), Neg(Succ(x1))) 67.83/34.95 new_rem(Neg(x0), Pos(Succ(x1))) 67.83/34.95 new_primModNatS1(Zero, x0) 67.83/34.95 new_primEqInt(x0) 67.83/34.95 new_primModNatS01(x0, x1, Zero, Succ(x2)) 67.83/34.95 new_primModNatS1(Succ(Succ(x0)), Zero) 67.83/34.95 new_rem(Pos(x0), Neg(Zero)) 67.83/34.95 new_rem(Neg(x0), Pos(Zero)) 67.83/34.95 new_primMinusNatS0(x0) 67.83/34.95 new_primEqInt2 67.83/34.95 new_esEs(Neg(Zero)) 67.83/34.95 new_esEs(Neg(Succ(x0))) 67.83/34.95 new_primModNatS01(x0, x1, Succ(x2), Zero) 67.83/34.95 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.95 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (434) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primQuotInt6(Succ(vuz4010), Succ(vuz4000), vuz403, vuz402, vuz3190, vuz31700) -> new_primQuotInt6(vuz4010, vuz4000, vuz4010, vuz4000, vuz3190, vuz31700) 67.83/34.95 67.83/34.95 R is empty. 67.83/34.95 Q is empty. 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (435) TransformationProof (EQUIVALENT) 67.83/34.95 By instantiating [LPAR04] the rule new_primQuotInt6(Succ(vuz4010), Succ(vuz4000), vuz403, vuz402, vuz3190, vuz31700) -> new_primQuotInt6(vuz4010, vuz4000, vuz4010, vuz4000, vuz3190, vuz31700) we obtained the following new rules [LPAR04]: 67.83/34.95 67.83/34.95 (new_primQuotInt6(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt6(x0, x1, x0, x1, z4, z5),new_primQuotInt6(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt6(x0, x1, x0, x1, z4, z5)) 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (436) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primQuotInt6(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt6(x0, x1, x0, x1, z4, z5) 67.83/34.95 67.83/34.95 R is empty. 67.83/34.95 Q is empty. 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (437) QDPSizeChangeProof (EQUIVALENT) 67.83/34.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. 67.83/34.95 67.83/34.95 From the DPs we obtained the following set of size-change graphs: 67.83/34.95 *new_primQuotInt6(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt6(x0, x1, x0, x1, z4, z5) 67.83/34.95 The graph contains the following edges 1 > 1, 3 > 1, 2 > 2, 4 > 2, 1 > 3, 3 > 3, 2 > 4, 4 > 4, 5 >= 5, 6 >= 6 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (438) 67.83/34.95 YES 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (439) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primPlusNat(Succ(vuz33500), Succ(vuz3071000)) -> new_primPlusNat(vuz33500, vuz3071000) 67.83/34.95 67.83/34.95 R is empty. 67.83/34.95 Q is empty. 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (440) QDPSizeChangeProof (EQUIVALENT) 67.83/34.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. 67.83/34.95 67.83/34.95 From the DPs we obtained the following set of size-change graphs: 67.83/34.95 *new_primPlusNat(Succ(vuz33500), Succ(vuz3071000)) -> new_primPlusNat(vuz33500, vuz3071000) 67.83/34.95 The graph contains the following edges 1 > 1, 2 > 2 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (441) 67.83/34.95 YES 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (442) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primQuotInt1(Succ(vuz4570), Succ(vuz4560), vuz459, vuz458, vuz3190, vuz31700) -> new_primQuotInt1(vuz4570, vuz4560, vuz4570, vuz4560, vuz3190, vuz31700) 67.83/34.95 67.83/34.95 R is empty. 67.83/34.95 Q is empty. 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (443) TransformationProof (EQUIVALENT) 67.83/34.95 By instantiating [LPAR04] the rule new_primQuotInt1(Succ(vuz4570), Succ(vuz4560), vuz459, vuz458, vuz3190, vuz31700) -> new_primQuotInt1(vuz4570, vuz4560, vuz4570, vuz4560, vuz3190, vuz31700) we obtained the following new rules [LPAR04]: 67.83/34.95 67.83/34.95 (new_primQuotInt1(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt1(x0, x1, x0, x1, z4, z5),new_primQuotInt1(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt1(x0, x1, x0, x1, z4, z5)) 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (444) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primQuotInt1(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt1(x0, x1, x0, x1, z4, z5) 67.83/34.95 67.83/34.95 R is empty. 67.83/34.95 Q is empty. 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (445) QDPSizeChangeProof (EQUIVALENT) 67.83/34.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. 67.83/34.95 67.83/34.95 From the DPs we obtained the following set of size-change graphs: 67.83/34.95 *new_primQuotInt1(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt1(x0, x1, x0, x1, z4, z5) 67.83/34.95 The graph contains the following edges 1 > 1, 3 > 1, 2 > 2, 4 > 2, 1 > 3, 3 > 3, 2 > 4, 4 > 4, 5 >= 5, 6 >= 6 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (446) 67.83/34.95 YES 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (447) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primModNatS(Succ(Succ(vuz549000)), Zero) -> new_primModNatS(new_primMinusNatS0(vuz549000), Zero) 67.83/34.95 new_primModNatS(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS0(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.95 new_primModNatS(Succ(Zero), Zero) -> new_primModNatS(new_primMinusNatS1, Zero) 67.83/34.95 new_primModNatS0(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.95 new_primModNatS0(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS0(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.95 new_primModNatS0(vuz594, vuz595, Zero, Zero) -> new_primModNatS00(vuz594, vuz595) 67.83/34.95 new_primModNatS00(vuz594, vuz595) -> new_primModNatS(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.95 67.83/34.95 The TRS R consists of the following rules: 67.83/34.95 67.83/34.95 new_primMinusNatS1 -> Zero 67.83/34.95 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.95 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.95 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.95 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.95 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.95 67.83/34.95 The set Q consists of the following terms: 67.83/34.95 67.83/34.95 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.95 new_primMinusNatS0(x0) 67.83/34.95 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.95 new_primMinusNatS2(Zero, Zero) 67.83/34.95 new_primMinusNatS1 67.83/34.95 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.95 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (448) DependencyGraphProof (EQUIVALENT) 67.83/34.95 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 1 less node. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (449) 67.83/34.95 Complex Obligation (AND) 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (450) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primModNatS0(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.95 new_primModNatS(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS0(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.95 new_primModNatS0(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS0(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.95 new_primModNatS0(vuz594, vuz595, Zero, Zero) -> new_primModNatS00(vuz594, vuz595) 67.83/34.95 new_primModNatS00(vuz594, vuz595) -> new_primModNatS(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.95 67.83/34.95 The TRS R consists of the following rules: 67.83/34.95 67.83/34.95 new_primMinusNatS1 -> Zero 67.83/34.95 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.95 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.95 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.95 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.95 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.95 67.83/34.95 The set Q consists of the following terms: 67.83/34.95 67.83/34.95 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.95 new_primMinusNatS0(x0) 67.83/34.95 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.95 new_primMinusNatS2(Zero, Zero) 67.83/34.95 new_primMinusNatS1 67.83/34.95 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.95 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (451) QDPOrderProof (EQUIVALENT) 67.83/34.95 We use the reduction pair processor [LPAR04,JAR06]. 67.83/34.95 67.83/34.95 67.83/34.95 The following pairs can be oriented strictly and are deleted. 67.83/34.95 67.83/34.95 new_primModNatS(Succ(Succ(vuz549000)), Succ(vuz542000)) -> new_primModNatS0(vuz549000, vuz542000, vuz549000, vuz542000) 67.83/34.95 The remaining pairs can at least be oriented weakly. 67.83/34.95 Used ordering: Polynomial interpretation [POLO]: 67.83/34.95 67.83/34.95 POL(Succ(x_1)) = 1 + x_1 67.83/34.95 POL(Zero) = 1 67.83/34.95 POL(new_primMinusNatS2(x_1, x_2)) = x_1 67.83/34.95 POL(new_primModNatS(x_1, x_2)) = x_1 67.83/34.95 POL(new_primModNatS0(x_1, x_2, x_3, x_4)) = 1 + x_1 67.83/34.95 POL(new_primModNatS00(x_1, x_2)) = 1 + x_1 67.83/34.95 67.83/34.95 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 67.83/34.95 67.83/34.95 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.95 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.95 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.95 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (452) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primModNatS0(vuz594, vuz595, Succ(vuz5960), Zero) -> new_primModNatS(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.95 new_primModNatS0(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS0(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.95 new_primModNatS0(vuz594, vuz595, Zero, Zero) -> new_primModNatS00(vuz594, vuz595) 67.83/34.95 new_primModNatS00(vuz594, vuz595) -> new_primModNatS(new_primMinusNatS2(Succ(vuz594), Succ(vuz595)), Succ(vuz595)) 67.83/34.95 67.83/34.95 The TRS R consists of the following rules: 67.83/34.95 67.83/34.95 new_primMinusNatS1 -> Zero 67.83/34.95 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.95 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.95 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.95 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.95 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.95 67.83/34.95 The set Q consists of the following terms: 67.83/34.95 67.83/34.95 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.95 new_primMinusNatS0(x0) 67.83/34.95 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.95 new_primMinusNatS2(Zero, Zero) 67.83/34.95 new_primMinusNatS1 67.83/34.95 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.95 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (453) DependencyGraphProof (EQUIVALENT) 67.83/34.95 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 3 less nodes. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (454) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primModNatS0(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS0(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.95 67.83/34.95 The TRS R consists of the following rules: 67.83/34.95 67.83/34.95 new_primMinusNatS1 -> Zero 67.83/34.95 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.95 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.95 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.95 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.95 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.95 67.83/34.95 The set Q consists of the following terms: 67.83/34.95 67.83/34.95 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.95 new_primMinusNatS0(x0) 67.83/34.95 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.95 new_primMinusNatS2(Zero, Zero) 67.83/34.95 new_primMinusNatS1 67.83/34.95 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.95 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (455) QDPSizeChangeProof (EQUIVALENT) 67.83/34.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. 67.83/34.95 67.83/34.95 From the DPs we obtained the following set of size-change graphs: 67.83/34.95 *new_primModNatS0(vuz594, vuz595, Succ(vuz5960), Succ(vuz5970)) -> new_primModNatS0(vuz594, vuz595, vuz5960, vuz5970) 67.83/34.95 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (456) 67.83/34.95 YES 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (457) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primModNatS(Succ(Succ(vuz549000)), Zero) -> new_primModNatS(new_primMinusNatS0(vuz549000), Zero) 67.83/34.95 67.83/34.95 The TRS R consists of the following rules: 67.83/34.95 67.83/34.95 new_primMinusNatS1 -> Zero 67.83/34.95 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.95 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.95 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.95 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.95 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.95 67.83/34.95 The set Q consists of the following terms: 67.83/34.95 67.83/34.95 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.95 new_primMinusNatS0(x0) 67.83/34.95 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.95 new_primMinusNatS2(Zero, Zero) 67.83/34.95 new_primMinusNatS1 67.83/34.95 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.95 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (458) MRRProof (EQUIVALENT) 67.83/34.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. 67.83/34.95 67.83/34.95 Strictly oriented dependency pairs: 67.83/34.95 67.83/34.95 new_primModNatS(Succ(Succ(vuz549000)), Zero) -> new_primModNatS(new_primMinusNatS0(vuz549000), Zero) 67.83/34.95 67.83/34.95 Strictly oriented rules of the TRS R: 67.83/34.95 67.83/34.95 new_primMinusNatS2(Succ(vuz5740), Zero) -> Succ(vuz5740) 67.83/34.95 new_primMinusNatS2(Zero, Zero) -> Zero 67.83/34.95 new_primMinusNatS2(Succ(vuz5740), Succ(vuz5750)) -> new_primMinusNatS2(vuz5740, vuz5750) 67.83/34.95 new_primMinusNatS2(Zero, Succ(vuz5750)) -> Zero 67.83/34.95 67.83/34.95 Used ordering: Polynomial interpretation [POLO]: 67.83/34.95 67.83/34.95 POL(Succ(x_1)) = 1 + x_1 67.83/34.95 POL(Zero) = 2 67.83/34.95 POL(new_primMinusNatS0(x_1)) = 1 + x_1 67.83/34.95 POL(new_primMinusNatS1) = 2 67.83/34.95 POL(new_primMinusNatS2(x_1, x_2)) = 1 + 2*x_1 + 2*x_2 67.83/34.95 POL(new_primModNatS(x_1, x_2)) = x_1 + x_2 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (459) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 P is empty. 67.83/34.95 The TRS R consists of the following rules: 67.83/34.95 67.83/34.95 new_primMinusNatS1 -> Zero 67.83/34.95 new_primMinusNatS0(vuz41600) -> Succ(vuz41600) 67.83/34.95 67.83/34.95 The set Q consists of the following terms: 67.83/34.95 67.83/34.95 new_primMinusNatS2(Succ(x0), Zero) 67.83/34.95 new_primMinusNatS0(x0) 67.83/34.95 new_primMinusNatS2(Zero, Succ(x0)) 67.83/34.95 new_primMinusNatS2(Zero, Zero) 67.83/34.95 new_primMinusNatS1 67.83/34.95 new_primMinusNatS2(Succ(x0), Succ(x1)) 67.83/34.95 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (460) PisEmptyProof (EQUIVALENT) 67.83/34.95 The TRS P is empty. Hence, there is no (P,Q,R) chain. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (461) 67.83/34.95 YES 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (462) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primQuotInt4(Succ(vuz4190), Succ(vuz4180), vuz421, vuz420, vuz31900, vuz3170) -> new_primQuotInt4(vuz4190, vuz4180, vuz4190, vuz4180, vuz31900, vuz3170) 67.83/34.95 67.83/34.95 R is empty. 67.83/34.95 Q is empty. 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (463) TransformationProof (EQUIVALENT) 67.83/34.95 By instantiating [LPAR04] the rule new_primQuotInt4(Succ(vuz4190), Succ(vuz4180), vuz421, vuz420, vuz31900, vuz3170) -> new_primQuotInt4(vuz4190, vuz4180, vuz4190, vuz4180, vuz31900, vuz3170) we obtained the following new rules [LPAR04]: 67.83/34.95 67.83/34.95 (new_primQuotInt4(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt4(x0, x1, x0, x1, z4, z5),new_primQuotInt4(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt4(x0, x1, x0, x1, z4, z5)) 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (464) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primQuotInt4(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt4(x0, x1, x0, x1, z4, z5) 67.83/34.95 67.83/34.95 R is empty. 67.83/34.95 Q is empty. 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (465) QDPSizeChangeProof (EQUIVALENT) 67.83/34.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. 67.83/34.95 67.83/34.95 From the DPs we obtained the following set of size-change graphs: 67.83/34.95 *new_primQuotInt4(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt4(x0, x1, x0, x1, z4, z5) 67.83/34.95 The graph contains the following edges 1 > 1, 3 > 1, 2 > 2, 4 > 2, 1 > 3, 3 > 3, 2 > 4, 4 > 4, 5 >= 5, 6 >= 6 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (466) 67.83/34.95 YES 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (467) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primQuotInt3(Succ(vuz4650), Succ(vuz4640), vuz467, vuz466, vuz3190, vuz31700) -> new_primQuotInt3(vuz4650, vuz4640, vuz4650, vuz4640, vuz3190, vuz31700) 67.83/34.95 67.83/34.95 R is empty. 67.83/34.95 Q is empty. 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (468) TransformationProof (EQUIVALENT) 67.83/34.95 By instantiating [LPAR04] the rule new_primQuotInt3(Succ(vuz4650), Succ(vuz4640), vuz467, vuz466, vuz3190, vuz31700) -> new_primQuotInt3(vuz4650, vuz4640, vuz4650, vuz4640, vuz3190, vuz31700) we obtained the following new rules [LPAR04]: 67.83/34.95 67.83/34.95 (new_primQuotInt3(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt3(x0, x1, x0, x1, z4, z5),new_primQuotInt3(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt3(x0, x1, x0, x1, z4, z5)) 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (469) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primQuotInt3(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt3(x0, x1, x0, x1, z4, z5) 67.83/34.95 67.83/34.95 R is empty. 67.83/34.95 Q is empty. 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (470) QDPSizeChangeProof (EQUIVALENT) 67.83/34.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. 67.83/34.95 67.83/34.95 From the DPs we obtained the following set of size-change graphs: 67.83/34.95 *new_primQuotInt3(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt3(x0, x1, x0, x1, z4, z5) 67.83/34.95 The graph contains the following edges 1 > 1, 3 > 1, 2 > 2, 4 > 2, 1 > 3, 3 > 3, 2 > 4, 4 > 4, 5 >= 5, 6 >= 6 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (471) 67.83/34.95 YES 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (472) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primQuotInt2(Succ(vuz4310), Succ(vuz4300), vuz433, vuz432, vuz31900, vuz3170) -> new_primQuotInt2(vuz4310, vuz4300, vuz4310, vuz4300, vuz31900, vuz3170) 67.83/34.95 67.83/34.95 R is empty. 67.83/34.95 Q is empty. 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (473) TransformationProof (EQUIVALENT) 67.83/34.95 By instantiating [LPAR04] the rule new_primQuotInt2(Succ(vuz4310), Succ(vuz4300), vuz433, vuz432, vuz31900, vuz3170) -> new_primQuotInt2(vuz4310, vuz4300, vuz4310, vuz4300, vuz31900, vuz3170) we obtained the following new rules [LPAR04]: 67.83/34.95 67.83/34.95 (new_primQuotInt2(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt2(x0, x1, x0, x1, z4, z5),new_primQuotInt2(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt2(x0, x1, x0, x1, z4, z5)) 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (474) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primQuotInt2(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt2(x0, x1, x0, x1, z4, z5) 67.83/34.95 67.83/34.95 R is empty. 67.83/34.95 Q is empty. 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (475) QDPSizeChangeProof (EQUIVALENT) 67.83/34.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. 67.83/34.95 67.83/34.95 From the DPs we obtained the following set of size-change graphs: 67.83/34.95 *new_primQuotInt2(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt2(x0, x1, x0, x1, z4, z5) 67.83/34.95 The graph contains the following edges 1 > 1, 3 > 1, 2 > 2, 4 > 2, 1 > 3, 3 > 3, 2 > 4, 4 > 4, 5 >= 5, 6 >= 6 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (476) 67.83/34.95 YES 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (477) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primQuotInt5(Succ(vuz4490), Succ(vuz4480), vuz451, vuz450, vuz31900, vuz3170) -> new_primQuotInt5(vuz4490, vuz4480, vuz4490, vuz4480, vuz31900, vuz3170) 67.83/34.95 67.83/34.95 R is empty. 67.83/34.95 Q is empty. 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (478) TransformationProof (EQUIVALENT) 67.83/34.95 By instantiating [LPAR04] the rule new_primQuotInt5(Succ(vuz4490), Succ(vuz4480), vuz451, vuz450, vuz31900, vuz3170) -> new_primQuotInt5(vuz4490, vuz4480, vuz4490, vuz4480, vuz31900, vuz3170) we obtained the following new rules [LPAR04]: 67.83/34.95 67.83/34.95 (new_primQuotInt5(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt5(x0, x1, x0, x1, z4, z5),new_primQuotInt5(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt5(x0, x1, x0, x1, z4, z5)) 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (479) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primQuotInt5(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt5(x0, x1, x0, x1, z4, z5) 67.83/34.95 67.83/34.95 R is empty. 67.83/34.95 Q is empty. 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (480) QDPSizeChangeProof (EQUIVALENT) 67.83/34.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. 67.83/34.95 67.83/34.95 From the DPs we obtained the following set of size-change graphs: 67.83/34.95 *new_primQuotInt5(Succ(x0), Succ(x1), Succ(x0), Succ(x1), z4, z5) -> new_primQuotInt5(x0, x1, x0, x1, z4, z5) 67.83/34.95 The graph contains the following edges 1 > 1, 3 > 1, 2 > 2, 4 > 2, 1 > 3, 3 > 3, 2 > 4, 4 > 4, 5 >= 5, 6 >= 6 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (481) 67.83/34.95 YES 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (482) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primQuotInt(vuz374, Succ(vuz4890), Succ(vuz3770), vuz375) -> new_primQuotInt(vuz374, vuz4890, vuz3770, vuz375) 67.83/34.95 67.83/34.95 R is empty. 67.83/34.95 Q is empty. 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (483) QDPSizeChangeProof (EQUIVALENT) 67.83/34.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. 67.83/34.95 67.83/34.95 From the DPs we obtained the following set of size-change graphs: 67.83/34.95 *new_primQuotInt(vuz374, Succ(vuz4890), Succ(vuz3770), vuz375) -> new_primQuotInt(vuz374, vuz4890, vuz3770, vuz375) 67.83/34.95 The graph contains the following edges 1 >= 1, 2 > 2, 3 > 3, 4 >= 4 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (484) 67.83/34.95 YES 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (485) 67.83/34.95 Obligation: 67.83/34.95 Q DP problem: 67.83/34.95 The TRS P consists of the following rules: 67.83/34.95 67.83/34.95 new_primQuotInt0(vuz366, Succ(vuz3690), Succ(vuz4830), vuz367) -> new_primQuotInt0(vuz366, vuz3690, vuz4830, vuz367) 67.83/34.95 67.83/34.95 R is empty. 67.83/34.95 Q is empty. 67.83/34.95 We have to consider all minimal (P,Q,R)-chains. 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (486) QDPSizeChangeProof (EQUIVALENT) 67.83/34.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. 67.83/34.95 67.83/34.95 From the DPs we obtained the following set of size-change graphs: 67.83/34.95 *new_primQuotInt0(vuz366, Succ(vuz3690), Succ(vuz4830), vuz367) -> new_primQuotInt0(vuz366, vuz3690, vuz4830, vuz367) 67.83/34.95 The graph contains the following edges 1 >= 1, 2 > 2, 3 > 3, 4 >= 4 67.83/34.95 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (487) 67.83/34.95 YES 67.83/34.95 67.83/34.95 ---------------------------------------- 67.83/34.95 67.83/34.95 (488) Narrow (COMPLETE) 67.83/34.95 Haskell To QDPs 67.83/34.95 67.83/34.95 digraph dp_graph { 67.83/34.95 node [outthreshold=100, inthreshold=100];1[label="enumFromThen",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 67.83/34.95 3[label="enumFromThen vuz3",fontsize=16,color="grey",shape="box"];3 -> 4[label="",style="dashed", color="grey", weight=3]; 67.83/34.95 4[label="enumFromThen vuz3 vuz4",fontsize=16,color="black",shape="triangle"];4 -> 5[label="",style="solid", color="black", weight=3]; 67.83/34.95 5[label="numericEnumFromThen vuz3 vuz4",fontsize=16,color="black",shape="box"];5 -> 6[label="",style="solid", color="black", weight=3]; 67.83/34.95 6[label="iterate (vuz4 - vuz3 +) vuz3",fontsize=16,color="black",shape="box"];6 -> 7[label="",style="solid", color="black", weight=3]; 67.83/34.95 7[label="vuz3 : iterate (vuz4 - vuz3 +) (vuz4 - vuz3 + vuz3)",fontsize=16,color="green",shape="box"];7 -> 8[label="",style="dashed", color="green", weight=3]; 67.83/34.95 8 -> 13[label="",style="dashed", color="red", weight=0]; 67.83/34.95 8[label="iterate (vuz4 - vuz3 +) (vuz4 - vuz3 + vuz3)",fontsize=16,color="magenta"];8 -> 14[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 14[label="vuz3",fontsize=16,color="green",shape="box"];13[label="iterate (vuz4 - vuz3 +) (vuz4 - vuz3 + vuz5)",fontsize=16,color="black",shape="triangle"];13 -> 16[label="",style="solid", color="black", weight=3]; 67.83/34.95 16[label="vuz4 - vuz3 + vuz5 : iterate (vuz4 - vuz3 +) (vuz4 - vuz3 + (vuz4 - vuz3 + vuz5))",fontsize=16,color="green",shape="box"];16 -> 17[label="",style="dashed", color="green", weight=3]; 67.83/34.95 16 -> 18[label="",style="dashed", color="green", weight=3]; 67.83/34.95 17[label="vuz4 - vuz3 + vuz5",fontsize=16,color="black",shape="box"];17 -> 5645[label="",style="solid", color="black", weight=3]; 67.83/34.95 18 -> 13[label="",style="dashed", color="red", weight=0]; 67.83/34.95 18[label="iterate (vuz4 - vuz3 +) (vuz4 - vuz3 + (vuz4 - vuz3 + vuz5))",fontsize=16,color="magenta"];18 -> 20[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 5645 -> 5329[label="",style="dashed", color="red", weight=0]; 67.83/34.95 5645[label="vuz4 + (negate vuz3) + vuz5",fontsize=16,color="magenta"];5645 -> 6517[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 5645 -> 6518[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 20[label="vuz4 - vuz3 + vuz5",fontsize=16,color="black",shape="box"];20 -> 5425[label="",style="solid", color="black", weight=3]; 67.83/34.95 6517[label="vuz5",fontsize=16,color="green",shape="box"];6518 -> 5329[label="",style="dashed", color="red", weight=0]; 67.83/34.95 6518[label="vuz4 + (negate vuz3)",fontsize=16,color="magenta"];6518 -> 7106[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 6518 -> 7107[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 5329[label="vuz306 + vuz307",fontsize=16,color="burlywood",shape="triangle"];10820[label="vuz306/vuz3060 :% vuz3061",fontsize=10,color="white",style="solid",shape="box"];5329 -> 10820[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10820 -> 5964[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 5425 -> 5329[label="",style="dashed", color="red", weight=0]; 67.83/34.95 5425[label="vuz4 + (negate vuz3) + vuz5",fontsize=16,color="magenta"];5425 -> 6125[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 5425 -> 6126[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7106[label="negate vuz3",fontsize=16,color="burlywood",shape="triangle"];10821[label="vuz3/vuz30 :% vuz31",fontsize=10,color="white",style="solid",shape="box"];7106 -> 10821[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10821 -> 7111[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7107[label="vuz4",fontsize=16,color="green",shape="box"];5964[label="vuz3060 :% vuz3061 + vuz307",fontsize=16,color="burlywood",shape="box"];10822[label="vuz307/vuz3070 :% vuz3071",fontsize=10,color="white",style="solid",shape="box"];5964 -> 10822[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10822 -> 7081[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 6125[label="vuz5",fontsize=16,color="green",shape="box"];6126 -> 5329[label="",style="dashed", color="red", weight=0]; 67.83/34.95 6126[label="vuz4 + (negate vuz3)",fontsize=16,color="magenta"];6126 -> 7108[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 6126 -> 7109[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7111[label="negate vuz30 :% vuz31",fontsize=16,color="black",shape="box"];7111 -> 7113[label="",style="solid", color="black", weight=3]; 67.83/34.95 7081[label="vuz3060 :% vuz3061 + vuz3070 :% vuz3071",fontsize=16,color="black",shape="box"];7081 -> 7110[label="",style="solid", color="black", weight=3]; 67.83/34.95 7108 -> 7106[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7108[label="negate vuz3",fontsize=16,color="magenta"];7109[label="vuz4",fontsize=16,color="green",shape="box"];7113[label="(negate vuz30) :% vuz31",fontsize=16,color="green",shape="box"];7113 -> 7115[label="",style="dashed", color="green", weight=3]; 67.83/34.95 7110[label="reduce (vuz3060 * vuz3071 + vuz3070 * vuz3061) (vuz3061 * vuz3071)",fontsize=16,color="black",shape="box"];7110 -> 7112[label="",style="solid", color="black", weight=3]; 67.83/34.95 7115[label="negate vuz30",fontsize=16,color="black",shape="triangle"];7115 -> 7122[label="",style="solid", color="black", weight=3]; 67.83/34.95 7112[label="reduce2 (vuz3060 * vuz3071 + vuz3070 * vuz3061) (vuz3061 * vuz3071)",fontsize=16,color="black",shape="box"];7112 -> 7114[label="",style="solid", color="black", weight=3]; 67.83/34.95 7122[label="primNegInt vuz30",fontsize=16,color="burlywood",shape="box"];10823[label="vuz30/Pos vuz300",fontsize=10,color="white",style="solid",shape="box"];7122 -> 10823[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10823 -> 7127[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10824[label="vuz30/Neg vuz300",fontsize=10,color="white",style="solid",shape="box"];7122 -> 10824[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10824 -> 7128[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7114 -> 7116[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7114[label="reduce2Reduce1 (vuz3060 * vuz3071 + vuz3070 * vuz3061) (vuz3061 * vuz3071) (vuz3060 * vuz3071 + vuz3070 * vuz3061) (vuz3061 * vuz3071) (vuz3061 * vuz3071 == fromInt (Pos Zero))",fontsize=16,color="magenta"];7114 -> 7117[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7114 -> 7118[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7114 -> 7119[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7114 -> 7120[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7114 -> 7121[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7127[label="primNegInt (Pos vuz300)",fontsize=16,color="black",shape="box"];7127 -> 7133[label="",style="solid", color="black", weight=3]; 67.83/34.95 7128[label="primNegInt (Neg vuz300)",fontsize=16,color="black",shape="box"];7128 -> 7134[label="",style="solid", color="black", weight=3]; 67.83/34.95 7117[label="vuz3061 * vuz3071 == fromInt (Pos Zero)",fontsize=16,color="blue",shape="box"];10825[label="== :: Int -> Int -> Bool",fontsize=10,color="white",style="solid",shape="box"];7117 -> 10825[label="",style="solid", color="blue", weight=9]; 67.83/34.95 10825 -> 7123[label="",style="solid", color="blue", weight=3]; 67.83/34.95 10826[label="== :: Integer -> Integer -> Bool",fontsize=10,color="white",style="solid",shape="box"];7117 -> 10826[label="",style="solid", color="blue", weight=9]; 67.83/34.95 10826 -> 7124[label="",style="solid", color="blue", weight=3]; 67.83/34.95 7118[label="vuz3060",fontsize=16,color="green",shape="box"];7119[label="vuz3071",fontsize=16,color="green",shape="box"];7120[label="vuz3061",fontsize=16,color="green",shape="box"];7121[label="vuz3070",fontsize=16,color="green",shape="box"];7116[label="reduce2Reduce1 (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) vuz320",fontsize=16,color="burlywood",shape="triangle"];10827[label="vuz320/False",fontsize=10,color="white",style="solid",shape="box"];7116 -> 10827[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10827 -> 7125[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10828[label="vuz320/True",fontsize=10,color="white",style="solid",shape="box"];7116 -> 10828[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10828 -> 7126[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7133[label="Neg vuz300",fontsize=16,color="green",shape="box"];7134[label="Pos vuz300",fontsize=16,color="green",shape="box"];7123 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7123[label="vuz3061 * vuz3071 == fromInt (Pos Zero)",fontsize=16,color="magenta"];7123 -> 9988[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7124[label="vuz3061 * vuz3071 == fromInt (Pos Zero)",fontsize=16,color="black",shape="box"];7124 -> 7130[label="",style="solid", color="black", weight=3]; 67.83/34.95 7125[label="reduce2Reduce1 (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) False",fontsize=16,color="black",shape="box"];7125 -> 7131[label="",style="solid", color="black", weight=3]; 67.83/34.95 7126[label="reduce2Reduce1 (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) True",fontsize=16,color="black",shape="box"];7126 -> 7132[label="",style="solid", color="black", weight=3]; 67.83/34.95 9988[label="vuz3061 * vuz3071",fontsize=16,color="black",shape="triangle"];9988 -> 10015[label="",style="solid", color="black", weight=3]; 67.83/34.95 9987[label="vuz551 == fromInt (Pos Zero)",fontsize=16,color="black",shape="triangle"];9987 -> 10016[label="",style="solid", color="black", weight=3]; 67.83/34.95 7130[label="error []",fontsize=16,color="red",shape="box"];7131[label="reduce2Reduce0 (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) otherwise",fontsize=16,color="black",shape="box"];7131 -> 7136[label="",style="solid", color="black", weight=3]; 67.83/34.95 7132[label="error []",fontsize=16,color="black",shape="box"];7132 -> 7137[label="",style="solid", color="black", weight=3]; 67.83/34.95 10015[label="primMulInt vuz3061 vuz3071",fontsize=16,color="burlywood",shape="box"];10829[label="vuz3061/Pos vuz30610",fontsize=10,color="white",style="solid",shape="box"];10015 -> 10829[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10829 -> 10168[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10830[label="vuz3061/Neg vuz30610",fontsize=10,color="white",style="solid",shape="box"];10015 -> 10830[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10830 -> 10169[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10016[label="primEqInt vuz551 (fromInt (Pos Zero))",fontsize=16,color="burlywood",shape="box"];10831[label="vuz551/Pos vuz5510",fontsize=10,color="white",style="solid",shape="box"];10016 -> 10831[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10831 -> 10170[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10832[label="vuz551/Neg vuz5510",fontsize=10,color="white",style="solid",shape="box"];10016 -> 10832[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10832 -> 10171[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7136[label="reduce2Reduce0 (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) True",fontsize=16,color="black",shape="box"];7136 -> 7140[label="",style="solid", color="black", weight=3]; 67.83/34.95 7137[label="error []",fontsize=16,color="red",shape="box"];10168[label="primMulInt (Pos vuz30610) vuz3071",fontsize=16,color="burlywood",shape="box"];10833[label="vuz3071/Pos vuz30710",fontsize=10,color="white",style="solid",shape="box"];10168 -> 10833[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10833 -> 10194[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10834[label="vuz3071/Neg vuz30710",fontsize=10,color="white",style="solid",shape="box"];10168 -> 10834[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10834 -> 10195[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10169[label="primMulInt (Neg vuz30610) vuz3071",fontsize=16,color="burlywood",shape="box"];10835[label="vuz3071/Pos vuz30710",fontsize=10,color="white",style="solid",shape="box"];10169 -> 10835[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10835 -> 10196[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10836[label="vuz3071/Neg vuz30710",fontsize=10,color="white",style="solid",shape="box"];10169 -> 10836[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10836 -> 10197[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10170[label="primEqInt (Pos vuz5510) (fromInt (Pos Zero))",fontsize=16,color="burlywood",shape="box"];10837[label="vuz5510/Succ vuz55100",fontsize=10,color="white",style="solid",shape="box"];10170 -> 10837[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10837 -> 10198[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10838[label="vuz5510/Zero",fontsize=10,color="white",style="solid",shape="box"];10170 -> 10838[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10838 -> 10199[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10171[label="primEqInt (Neg vuz5510) (fromInt (Pos Zero))",fontsize=16,color="burlywood",shape="box"];10839[label="vuz5510/Succ vuz55100",fontsize=10,color="white",style="solid",shape="box"];10171 -> 10839[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10839 -> 10200[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10840[label="vuz5510/Zero",fontsize=10,color="white",style="solid",shape="box"];10171 -> 10840[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10840 -> 10201[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7140[label="(vuz316 * vuz317 + vuz318 * vuz319) `quot` reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317) :% (vuz319 * vuz317 `quot` reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317))",fontsize=16,color="green",shape="box"];7140 -> 7145[label="",style="dashed", color="green", weight=3]; 67.83/34.95 7140 -> 7146[label="",style="dashed", color="green", weight=3]; 67.83/34.95 10194[label="primMulInt (Pos vuz30610) (Pos vuz30710)",fontsize=16,color="black",shape="box"];10194 -> 10238[label="",style="solid", color="black", weight=3]; 67.83/34.95 10195[label="primMulInt (Pos vuz30610) (Neg vuz30710)",fontsize=16,color="black",shape="box"];10195 -> 10239[label="",style="solid", color="black", weight=3]; 67.83/34.95 10196[label="primMulInt (Neg vuz30610) (Pos vuz30710)",fontsize=16,color="black",shape="box"];10196 -> 10240[label="",style="solid", color="black", weight=3]; 67.83/34.95 10197[label="primMulInt (Neg vuz30610) (Neg vuz30710)",fontsize=16,color="black",shape="box"];10197 -> 10241[label="",style="solid", color="black", weight=3]; 67.83/34.95 10198[label="primEqInt (Pos (Succ vuz55100)) (fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];10198 -> 10242[label="",style="solid", color="black", weight=3]; 67.83/34.95 10199[label="primEqInt (Pos Zero) (fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];10199 -> 10243[label="",style="solid", color="black", weight=3]; 67.83/34.95 10200[label="primEqInt (Neg (Succ vuz55100)) (fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];10200 -> 10244[label="",style="solid", color="black", weight=3]; 67.83/34.95 10201[label="primEqInt (Neg Zero) (fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];10201 -> 10245[label="",style="solid", color="black", weight=3]; 67.83/34.95 7145[label="(vuz316 * vuz317 + vuz318 * vuz319) `quot` reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317)",fontsize=16,color="blue",shape="box"];10841[label="`quot` :: Integer -> Integer -> Integer",fontsize=10,color="white",style="solid",shape="box"];7145 -> 10841[label="",style="solid", color="blue", weight=9]; 67.83/34.95 10841 -> 7151[label="",style="solid", color="blue", weight=3]; 67.83/34.95 10842[label="`quot` :: Int -> Int -> Int",fontsize=10,color="white",style="solid",shape="box"];7145 -> 10842[label="",style="solid", color="blue", weight=9]; 67.83/34.95 10842 -> 7152[label="",style="solid", color="blue", weight=3]; 67.83/34.95 7146[label="vuz319 * vuz317 `quot` reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317)",fontsize=16,color="blue",shape="box"];10843[label="`quot` :: Integer -> Integer -> Integer",fontsize=10,color="white",style="solid",shape="box"];7146 -> 10843[label="",style="solid", color="blue", weight=9]; 67.83/34.95 10843 -> 7153[label="",style="solid", color="blue", weight=3]; 67.83/34.95 10844[label="`quot` :: Int -> Int -> Int",fontsize=10,color="white",style="solid",shape="box"];7146 -> 10844[label="",style="solid", color="blue", weight=9]; 67.83/34.95 10844 -> 7154[label="",style="solid", color="blue", weight=3]; 67.83/34.95 10238[label="Pos (primMulNat vuz30610 vuz30710)",fontsize=16,color="green",shape="box"];10238 -> 10260[label="",style="dashed", color="green", weight=3]; 67.83/34.95 10239[label="Neg (primMulNat vuz30610 vuz30710)",fontsize=16,color="green",shape="box"];10239 -> 10261[label="",style="dashed", color="green", weight=3]; 67.83/34.95 10240[label="Neg (primMulNat vuz30610 vuz30710)",fontsize=16,color="green",shape="box"];10240 -> 10262[label="",style="dashed", color="green", weight=3]; 67.83/34.95 10241[label="Pos (primMulNat vuz30610 vuz30710)",fontsize=16,color="green",shape="box"];10241 -> 10263[label="",style="dashed", color="green", weight=3]; 67.83/34.95 10242 -> 7519[label="",style="dashed", color="red", weight=0]; 67.83/34.95 10242[label="primEqInt (Pos (Succ vuz55100)) (Pos Zero)",fontsize=16,color="magenta"];10242 -> 10264[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 10243 -> 7520[label="",style="dashed", color="red", weight=0]; 67.83/34.95 10243[label="primEqInt (Pos Zero) (Pos Zero)",fontsize=16,color="magenta"];10244 -> 7526[label="",style="dashed", color="red", weight=0]; 67.83/34.95 10244[label="primEqInt (Neg (Succ vuz55100)) (Pos Zero)",fontsize=16,color="magenta"];10244 -> 10265[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 10245 -> 7527[label="",style="dashed", color="red", weight=0]; 67.83/34.95 10245[label="primEqInt (Neg Zero) (Pos Zero)",fontsize=16,color="magenta"];7151[label="(vuz316 * vuz317 + vuz318 * vuz319) `quot` reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317)",fontsize=16,color="black",shape="box"];7151 -> 7163[label="",style="solid", color="black", weight=3]; 67.83/34.95 7152[label="(vuz316 * vuz317 + vuz318 * vuz319) `quot` reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317)",fontsize=16,color="black",shape="box"];7152 -> 7164[label="",style="solid", color="black", weight=3]; 67.83/34.95 7153[label="vuz319 * vuz317 `quot` reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317)",fontsize=16,color="black",shape="box"];7153 -> 7165[label="",style="solid", color="black", weight=3]; 67.83/34.95 7154[label="vuz319 * vuz317 `quot` reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317)",fontsize=16,color="black",shape="box"];7154 -> 7166[label="",style="solid", color="black", weight=3]; 67.83/34.95 10260 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.95 10260[label="primMulNat vuz30610 vuz30710",fontsize=16,color="magenta"];10261 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.95 10261[label="primMulNat vuz30610 vuz30710",fontsize=16,color="magenta"];10261 -> 10279[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 10262 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.95 10262[label="primMulNat vuz30610 vuz30710",fontsize=16,color="magenta"];10262 -> 10280[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 10263 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.95 10263[label="primMulNat vuz30610 vuz30710",fontsize=16,color="magenta"];10263 -> 10281[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 10263 -> 10282[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 10264[label="vuz55100",fontsize=16,color="green",shape="box"];7519[label="primEqInt (Pos (Succ vuz3250)) (Pos Zero)",fontsize=16,color="black",shape="triangle"];7519 -> 7532[label="",style="solid", color="black", weight=3]; 67.83/34.95 7520[label="primEqInt (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="triangle"];7520 -> 7533[label="",style="solid", color="black", weight=3]; 67.83/34.95 10265[label="vuz55100",fontsize=16,color="green",shape="box"];7526[label="primEqInt (Neg (Succ vuz3260)) (Pos Zero)",fontsize=16,color="black",shape="triangle"];7526 -> 7547[label="",style="solid", color="black", weight=3]; 67.83/34.95 7527[label="primEqInt (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="triangle"];7527 -> 7548[label="",style="solid", color="black", weight=3]; 67.83/34.95 7163[label="error []",fontsize=16,color="red",shape="box"];7164[label="primQuotInt (vuz316 * vuz317 + vuz318 * vuz319) (reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317))",fontsize=16,color="black",shape="box"];7164 -> 7175[label="",style="solid", color="black", weight=3]; 67.83/34.95 7165[label="error []",fontsize=16,color="red",shape="box"];7166[label="primQuotInt (vuz319 * vuz317) (reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (vuz319 * vuz317))",fontsize=16,color="black",shape="box"];7166 -> 7176[label="",style="solid", color="black", weight=3]; 67.83/34.95 7480[label="primMulNat vuz30610 vuz30710",fontsize=16,color="burlywood",shape="triangle"];10845[label="vuz30610/Succ vuz306100",fontsize=10,color="white",style="solid",shape="box"];7480 -> 10845[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10845 -> 7492[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10846[label="vuz30610/Zero",fontsize=10,color="white",style="solid",shape="box"];7480 -> 10846[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10846 -> 7493[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10279[label="vuz30710",fontsize=16,color="green",shape="box"];10280[label="vuz30610",fontsize=16,color="green",shape="box"];10281[label="vuz30610",fontsize=16,color="green",shape="box"];10282[label="vuz30710",fontsize=16,color="green",shape="box"];7532[label="False",fontsize=16,color="green",shape="box"];7533[label="True",fontsize=16,color="green",shape="box"];7547[label="False",fontsize=16,color="green",shape="box"];7548[label="True",fontsize=16,color="green",shape="box"];7175[label="primQuotInt (primPlusInt (vuz316 * vuz317) (vuz318 * vuz319)) (reduce2D (primPlusInt (vuz316 * vuz317) (vuz318 * vuz319)) (vuz319 * vuz317))",fontsize=16,color="black",shape="box"];7175 -> 7185[label="",style="solid", color="black", weight=3]; 67.83/34.95 7176[label="primQuotInt (primMulInt vuz319 vuz317) (reduce2D (vuz316 * vuz317 + vuz318 * vuz319) (primMulInt vuz319 vuz317))",fontsize=16,color="burlywood",shape="box"];10847[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7176 -> 10847[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10847 -> 7186[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10848[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7176 -> 10848[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10848 -> 7187[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7492[label="primMulNat (Succ vuz306100) vuz30710",fontsize=16,color="burlywood",shape="box"];10849[label="vuz30710/Succ vuz307100",fontsize=10,color="white",style="solid",shape="box"];7492 -> 10849[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10849 -> 7515[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10850[label="vuz30710/Zero",fontsize=10,color="white",style="solid",shape="box"];7492 -> 10850[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10850 -> 7516[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7493[label="primMulNat Zero vuz30710",fontsize=16,color="burlywood",shape="box"];10851[label="vuz30710/Succ vuz307100",fontsize=10,color="white",style="solid",shape="box"];7493 -> 10851[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10851 -> 7517[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10852[label="vuz30710/Zero",fontsize=10,color="white",style="solid",shape="box"];7493 -> 10852[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10852 -> 7518[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7185[label="primQuotInt (primPlusInt (primMulInt vuz316 vuz317) (vuz318 * vuz319)) (reduce2D (primPlusInt (primMulInt vuz316 vuz317) (vuz318 * vuz319)) (vuz319 * vuz317))",fontsize=16,color="burlywood",shape="box"];10853[label="vuz316/Pos vuz3160",fontsize=10,color="white",style="solid",shape="box"];7185 -> 10853[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10853 -> 7194[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10854[label="vuz316/Neg vuz3160",fontsize=10,color="white",style="solid",shape="box"];7185 -> 10854[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10854 -> 7195[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7186[label="primQuotInt (primMulInt (Pos vuz3190) vuz317) (reduce2D (vuz316 * vuz317 + vuz318 * Pos vuz3190) (primMulInt (Pos vuz3190) vuz317))",fontsize=16,color="burlywood",shape="box"];10855[label="vuz317/Pos vuz3170",fontsize=10,color="white",style="solid",shape="box"];7186 -> 10855[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10855 -> 7196[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10856[label="vuz317/Neg vuz3170",fontsize=10,color="white",style="solid",shape="box"];7186 -> 10856[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10856 -> 7197[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7187[label="primQuotInt (primMulInt (Neg vuz3190) vuz317) (reduce2D (vuz316 * vuz317 + vuz318 * Neg vuz3190) (primMulInt (Neg vuz3190) vuz317))",fontsize=16,color="burlywood",shape="box"];10857[label="vuz317/Pos vuz3170",fontsize=10,color="white",style="solid",shape="box"];7187 -> 10857[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10857 -> 7198[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10858[label="vuz317/Neg vuz3170",fontsize=10,color="white",style="solid",shape="box"];7187 -> 10858[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10858 -> 7199[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7515[label="primMulNat (Succ vuz306100) (Succ vuz307100)",fontsize=16,color="black",shape="box"];7515 -> 7528[label="",style="solid", color="black", weight=3]; 67.83/34.95 7516[label="primMulNat (Succ vuz306100) Zero",fontsize=16,color="black",shape="box"];7516 -> 7529[label="",style="solid", color="black", weight=3]; 67.83/34.95 7517[label="primMulNat Zero (Succ vuz307100)",fontsize=16,color="black",shape="box"];7517 -> 7530[label="",style="solid", color="black", weight=3]; 67.83/34.95 7518[label="primMulNat Zero Zero",fontsize=16,color="black",shape="box"];7518 -> 7531[label="",style="solid", color="black", weight=3]; 67.83/34.95 7194[label="primQuotInt (primPlusInt (primMulInt (Pos vuz3160) vuz317) (vuz318 * vuz319)) (reduce2D (primPlusInt (primMulInt (Pos vuz3160) vuz317) (vuz318 * vuz319)) (vuz319 * vuz317))",fontsize=16,color="burlywood",shape="box"];10859[label="vuz317/Pos vuz3170",fontsize=10,color="white",style="solid",shape="box"];7194 -> 10859[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10859 -> 7206[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10860[label="vuz317/Neg vuz3170",fontsize=10,color="white",style="solid",shape="box"];7194 -> 10860[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10860 -> 7207[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7195[label="primQuotInt (primPlusInt (primMulInt (Neg vuz3160) vuz317) (vuz318 * vuz319)) (reduce2D (primPlusInt (primMulInt (Neg vuz3160) vuz317) (vuz318 * vuz319)) (vuz319 * vuz317))",fontsize=16,color="burlywood",shape="box"];10861[label="vuz317/Pos vuz3170",fontsize=10,color="white",style="solid",shape="box"];7195 -> 10861[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10861 -> 7208[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10862[label="vuz317/Neg vuz3170",fontsize=10,color="white",style="solid",shape="box"];7195 -> 10862[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10862 -> 7209[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7196[label="primQuotInt (primMulInt (Pos vuz3190) (Pos vuz3170)) (reduce2D (vuz316 * Pos vuz3170 + vuz318 * Pos vuz3190) (primMulInt (Pos vuz3190) (Pos vuz3170)))",fontsize=16,color="black",shape="box"];7196 -> 7210[label="",style="solid", color="black", weight=3]; 67.83/34.95 7197[label="primQuotInt (primMulInt (Pos vuz3190) (Neg vuz3170)) (reduce2D (vuz316 * Neg vuz3170 + vuz318 * Pos vuz3190) (primMulInt (Pos vuz3190) (Neg vuz3170)))",fontsize=16,color="black",shape="box"];7197 -> 7211[label="",style="solid", color="black", weight=3]; 67.83/34.95 7198[label="primQuotInt (primMulInt (Neg vuz3190) (Pos vuz3170)) (reduce2D (vuz316 * Pos vuz3170 + vuz318 * Neg vuz3190) (primMulInt (Neg vuz3190) (Pos vuz3170)))",fontsize=16,color="black",shape="box"];7198 -> 7212[label="",style="solid", color="black", weight=3]; 67.83/34.95 7199[label="primQuotInt (primMulInt (Neg vuz3190) (Neg vuz3170)) (reduce2D (vuz316 * Neg vuz3170 + vuz318 * Neg vuz3190) (primMulInt (Neg vuz3190) (Neg vuz3170)))",fontsize=16,color="black",shape="box"];7199 -> 7213[label="",style="solid", color="black", weight=3]; 67.83/34.95 7528 -> 7549[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7528[label="primPlusNat (primMulNat vuz306100 (Succ vuz307100)) (Succ vuz307100)",fontsize=16,color="magenta"];7528 -> 7550[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7529[label="Zero",fontsize=16,color="green",shape="box"];7530[label="Zero",fontsize=16,color="green",shape="box"];7531[label="Zero",fontsize=16,color="green",shape="box"];7206[label="primQuotInt (primPlusInt (primMulInt (Pos vuz3160) (Pos vuz3170)) (vuz318 * vuz319)) (reduce2D (primPlusInt (primMulInt (Pos vuz3160) (Pos vuz3170)) (vuz318 * vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7206 -> 7220[label="",style="solid", color="black", weight=3]; 67.83/34.95 7207[label="primQuotInt (primPlusInt (primMulInt (Pos vuz3160) (Neg vuz3170)) (vuz318 * vuz319)) (reduce2D (primPlusInt (primMulInt (Pos vuz3160) (Neg vuz3170)) (vuz318 * vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7207 -> 7221[label="",style="solid", color="black", weight=3]; 67.83/34.95 7208[label="primQuotInt (primPlusInt (primMulInt (Neg vuz3160) (Pos vuz3170)) (vuz318 * vuz319)) (reduce2D (primPlusInt (primMulInt (Neg vuz3160) (Pos vuz3170)) (vuz318 * vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7208 -> 7222[label="",style="solid", color="black", weight=3]; 67.83/34.95 7209[label="primQuotInt (primPlusInt (primMulInt (Neg vuz3160) (Neg vuz3170)) (vuz318 * vuz319)) (reduce2D (primPlusInt (primMulInt (Neg vuz3160) (Neg vuz3170)) (vuz318 * vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7209 -> 7223[label="",style="solid", color="black", weight=3]; 67.83/34.95 7210[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (reduce2D (vuz316 * Pos vuz3170 + vuz318 * Pos vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7210 -> 7224[label="",style="solid", color="black", weight=3]; 67.83/34.95 7211[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (reduce2D (vuz316 * Neg vuz3170 + vuz318 * Pos vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7211 -> 7225[label="",style="solid", color="black", weight=3]; 67.83/34.95 7212[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (reduce2D (vuz316 * Pos vuz3170 + vuz318 * Neg vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7212 -> 7226[label="",style="solid", color="black", weight=3]; 67.83/34.95 7213[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (reduce2D (vuz316 * Neg vuz3170 + vuz318 * Neg vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7213 -> 7227[label="",style="solid", color="black", weight=3]; 67.83/34.95 7550 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7550[label="primMulNat vuz306100 (Succ vuz307100)",fontsize=16,color="magenta"];7550 -> 7551[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7550 -> 7552[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7549[label="primPlusNat vuz335 (Succ vuz307100)",fontsize=16,color="burlywood",shape="triangle"];10863[label="vuz335/Succ vuz3350",fontsize=10,color="white",style="solid",shape="box"];7549 -> 10863[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10863 -> 7553[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10864[label="vuz335/Zero",fontsize=10,color="white",style="solid",shape="box"];7549 -> 10864[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10864 -> 7554[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7220[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * vuz319)) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7220 -> 7234[label="",style="solid", color="black", weight=3]; 67.83/34.95 7221[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * vuz319)) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7221 -> 7235[label="",style="solid", color="black", weight=3]; 67.83/34.95 7222[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * vuz319)) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7222 -> 7236[label="",style="solid", color="black", weight=3]; 67.83/34.95 7223[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * vuz319)) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7223 -> 7237[label="",style="solid", color="black", weight=3]; 67.83/34.95 7224[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd (vuz316 * Pos vuz3170 + vuz318 * Pos vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7224 -> 7238[label="",style="solid", color="black", weight=3]; 67.83/34.95 7225[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd (vuz316 * Neg vuz3170 + vuz318 * Pos vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7225 -> 7239[label="",style="solid", color="black", weight=3]; 67.83/34.95 7226[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd (vuz316 * Pos vuz3170 + vuz318 * Neg vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7226 -> 7240[label="",style="solid", color="black", weight=3]; 67.83/34.95 7227[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd (vuz316 * Neg vuz3170 + vuz318 * Neg vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7227 -> 7241[label="",style="solid", color="black", weight=3]; 67.83/34.95 7551[label="vuz306100",fontsize=16,color="green",shape="box"];7552[label="Succ vuz307100",fontsize=16,color="green",shape="box"];7553[label="primPlusNat (Succ vuz3350) (Succ vuz307100)",fontsize=16,color="black",shape="box"];7553 -> 7564[label="",style="solid", color="black", weight=3]; 67.83/34.95 7554[label="primPlusNat Zero (Succ vuz307100)",fontsize=16,color="black",shape="box"];7554 -> 7565[label="",style="solid", color="black", weight=3]; 67.83/34.95 7234[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt vuz318 vuz319)) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt vuz318 vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10865[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7234 -> 10865[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10865 -> 7250[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10866[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7234 -> 10866[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10866 -> 7251[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7235[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt vuz318 vuz319)) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt vuz318 vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10867[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7235 -> 10867[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10867 -> 7252[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10868[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7235 -> 10868[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10868 -> 7253[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7236[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt vuz318 vuz319)) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt vuz318 vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10869[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7236 -> 10869[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10869 -> 7254[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10870[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7236 -> 10870[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10870 -> 7255[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7237[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt vuz318 vuz319)) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt vuz318 vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10871[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7237 -> 10871[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10871 -> 7256[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10872[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7237 -> 10872[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10872 -> 7257[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7238[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd3 (vuz316 * Pos vuz3170 + vuz318 * Pos vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7238 -> 7258[label="",style="solid", color="black", weight=3]; 67.83/34.95 7239[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd3 (vuz316 * Neg vuz3170 + vuz318 * Pos vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7239 -> 7259[label="",style="solid", color="black", weight=3]; 67.83/34.95 7240[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd3 (vuz316 * Pos vuz3170 + vuz318 * Neg vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7240 -> 7260[label="",style="solid", color="black", weight=3]; 67.83/34.95 7241[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd3 (vuz316 * Neg vuz3170 + vuz318 * Neg vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7241 -> 7261[label="",style="solid", color="black", weight=3]; 67.83/34.95 7564[label="Succ (Succ (primPlusNat vuz3350 vuz307100))",fontsize=16,color="green",shape="box"];7564 -> 7571[label="",style="dashed", color="green", weight=3]; 67.83/34.95 7565[label="Succ vuz307100",fontsize=16,color="green",shape="box"];7250[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) vuz319)) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10873[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7250 -> 10873[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10873 -> 7268[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10874[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7250 -> 10874[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10874 -> 7269[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7251[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) vuz319)) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10875[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7251 -> 10875[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10875 -> 7270[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10876[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7251 -> 10876[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10876 -> 7271[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7252[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) vuz319)) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10877[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7252 -> 10877[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10877 -> 7272[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10878[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7252 -> 10878[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10878 -> 7273[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7253[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) vuz319)) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10879[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7253 -> 10879[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10879 -> 7274[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10880[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7253 -> 10880[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10880 -> 7275[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7254[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) vuz319)) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10881[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7254 -> 10881[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10881 -> 7276[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10882[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7254 -> 10882[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10882 -> 7277[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7255[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) vuz319)) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) vuz319)) (vuz319 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10883[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7255 -> 10883[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10883 -> 7278[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10884[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7255 -> 10884[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10884 -> 7279[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7256[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) vuz319)) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10885[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7256 -> 10885[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10885 -> 7280[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10886[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7256 -> 10886[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10886 -> 7281[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7257[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) vuz319)) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) vuz319)) (vuz319 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10887[label="vuz319/Pos vuz3190",fontsize=10,color="white",style="solid",shape="box"];7257 -> 10887[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10887 -> 7282[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10888[label="vuz319/Neg vuz3190",fontsize=10,color="white",style="solid",shape="box"];7257 -> 10888[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10888 -> 7283[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7258[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (vuz316 * Pos vuz3170 + vuz318 * Pos vuz3190 == fromInt (Pos Zero)) (vuz316 * Pos vuz3170 + vuz318 * Pos vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7258 -> 7284[label="",style="solid", color="black", weight=3]; 67.83/34.95 7259[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (vuz316 * Neg vuz3170 + vuz318 * Pos vuz3190 == fromInt (Pos Zero)) (vuz316 * Neg vuz3170 + vuz318 * Pos vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7259 -> 7285[label="",style="solid", color="black", weight=3]; 67.83/34.95 7260[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (vuz316 * Pos vuz3170 + vuz318 * Neg vuz3190 == fromInt (Pos Zero)) (vuz316 * Pos vuz3170 + vuz318 * Neg vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7260 -> 7286[label="",style="solid", color="black", weight=3]; 67.83/34.95 7261[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (vuz316 * Neg vuz3170 + vuz318 * Neg vuz3190 == fromInt (Pos Zero)) (vuz316 * Neg vuz3170 + vuz318 * Neg vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7261 -> 7287[label="",style="solid", color="black", weight=3]; 67.83/34.95 7571[label="primPlusNat vuz3350 vuz307100",fontsize=16,color="burlywood",shape="triangle"];10889[label="vuz3350/Succ vuz33500",fontsize=10,color="white",style="solid",shape="box"];7571 -> 10889[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10889 -> 7585[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10890[label="vuz3350/Zero",fontsize=10,color="white",style="solid",shape="box"];7571 -> 10890[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10890 -> 7586[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7268[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Pos vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Pos vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7268 -> 7296[label="",style="solid", color="black", weight=3]; 67.83/34.95 7269[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Neg vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Neg vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7269 -> 7297[label="",style="solid", color="black", weight=3]; 67.83/34.95 7270[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Pos vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Pos vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7270 -> 7298[label="",style="solid", color="black", weight=3]; 67.83/34.95 7271[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Neg vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Neg vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7271 -> 7299[label="",style="solid", color="black", weight=3]; 67.83/34.95 7272[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Pos vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Pos vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7272 -> 7300[label="",style="solid", color="black", weight=3]; 67.83/34.95 7273[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Neg vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Neg vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7273 -> 7301[label="",style="solid", color="black", weight=3]; 67.83/34.95 7274[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Pos vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Pos vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7274 -> 7302[label="",style="solid", color="black", weight=3]; 67.83/34.95 7275[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Neg vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Neg vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7275 -> 7303[label="",style="solid", color="black", weight=3]; 67.83/34.95 7276[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Pos vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Pos vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7276 -> 7304[label="",style="solid", color="black", weight=3]; 67.83/34.95 7277[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Neg vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Neg vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7277 -> 7305[label="",style="solid", color="black", weight=3]; 67.83/34.95 7278[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Pos vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Pos vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7278 -> 7306[label="",style="solid", color="black", weight=3]; 67.83/34.95 7279[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Neg vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Neg vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7279 -> 7307[label="",style="solid", color="black", weight=3]; 67.83/34.95 7280[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Pos vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Pos vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7280 -> 7308[label="",style="solid", color="black", weight=3]; 67.83/34.95 7281[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Neg vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Pos vuz3180) (Neg vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7281 -> 7309[label="",style="solid", color="black", weight=3]; 67.83/34.95 7282[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Pos vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Pos vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7282 -> 7310[label="",style="solid", color="black", weight=3]; 67.83/34.95 7283[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Neg vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (primMulInt (Neg vuz3180) (Neg vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7283 -> 7311[label="",style="solid", color="black", weight=3]; 67.83/34.95 7284[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (vuz316 * Pos vuz3170 + vuz318 * Pos vuz3190) (fromInt (Pos Zero))) (vuz316 * Pos vuz3170 + vuz318 * Pos vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7284 -> 7312[label="",style="solid", color="black", weight=3]; 67.83/34.95 7285[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (vuz316 * Neg vuz3170 + vuz318 * Pos vuz3190) (fromInt (Pos Zero))) (vuz316 * Neg vuz3170 + vuz318 * Pos vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7285 -> 7313[label="",style="solid", color="black", weight=3]; 67.83/34.95 7286[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (vuz316 * Pos vuz3170 + vuz318 * Neg vuz3190) (fromInt (Pos Zero))) (vuz316 * Pos vuz3170 + vuz318 * Neg vuz3190) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7286 -> 7314[label="",style="solid", color="black", weight=3]; 67.83/34.95 7287[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (vuz316 * Neg vuz3170 + vuz318 * Neg vuz3190) (fromInt (Pos Zero))) (vuz316 * Neg vuz3170 + vuz318 * Neg vuz3190) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7287 -> 7315[label="",style="solid", color="black", weight=3]; 67.83/34.95 7585[label="primPlusNat (Succ vuz33500) vuz307100",fontsize=16,color="burlywood",shape="box"];10891[label="vuz307100/Succ vuz3071000",fontsize=10,color="white",style="solid",shape="box"];7585 -> 10891[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10891 -> 7590[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10892[label="vuz307100/Zero",fontsize=10,color="white",style="solid",shape="box"];7585 -> 10892[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10892 -> 7591[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7586[label="primPlusNat Zero vuz307100",fontsize=16,color="burlywood",shape="box"];10893[label="vuz307100/Succ vuz3071000",fontsize=10,color="white",style="solid",shape="box"];7586 -> 10893[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10893 -> 7592[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10894[label="vuz307100/Zero",fontsize=10,color="white",style="solid",shape="box"];7586 -> 10894[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10894 -> 7593[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7296[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7296 -> 7324[label="",style="solid", color="black", weight=3]; 67.83/34.95 7297[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7297 -> 7325[label="",style="solid", color="black", weight=3]; 67.83/34.95 7298[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7298 -> 7326[label="",style="solid", color="black", weight=3]; 67.83/34.95 7299[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7299 -> 7327[label="",style="solid", color="black", weight=3]; 67.83/34.95 7300[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7300 -> 7328[label="",style="solid", color="black", weight=3]; 67.83/34.95 7301[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7301 -> 7329[label="",style="solid", color="black", weight=3]; 67.83/34.95 7302[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7302 -> 7330[label="",style="solid", color="black", weight=3]; 67.83/34.95 7303[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7303 -> 7331[label="",style="solid", color="black", weight=3]; 67.83/34.95 7304[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7304 -> 7332[label="",style="solid", color="black", weight=3]; 67.83/34.95 7305[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7305 -> 7333[label="",style="solid", color="black", weight=3]; 67.83/34.95 7306[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7306 -> 7334[label="",style="solid", color="black", weight=3]; 67.83/34.95 7307[label="primQuotInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7307 -> 7335[label="",style="solid", color="black", weight=3]; 67.83/34.95 7308[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7308 -> 7336[label="",style="solid", color="black", weight=3]; 67.83/34.95 7309[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7309 -> 7337[label="",style="solid", color="black", weight=3]; 67.83/34.95 7310[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Neg (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7310 -> 7338[label="",style="solid", color="black", weight=3]; 67.83/34.95 7311[label="primQuotInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (reduce2D (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (Pos (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7311 -> 7339[label="",style="solid", color="black", weight=3]; 67.83/34.95 7312[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (vuz316 * Pos vuz3170) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (vuz316 * Pos vuz3170) (vuz318 * Pos vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7312 -> 7340[label="",style="solid", color="black", weight=3]; 67.83/34.95 7313[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (vuz316 * Neg vuz3170) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (vuz316 * Neg vuz3170) (vuz318 * Pos vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7313 -> 7341[label="",style="solid", color="black", weight=3]; 67.83/34.95 7314[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (vuz316 * Pos vuz3170) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (vuz316 * Pos vuz3170) (vuz318 * Neg vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7314 -> 7342[label="",style="solid", color="black", weight=3]; 67.83/34.95 7315[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (vuz316 * Neg vuz3170) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (vuz316 * Neg vuz3170) (vuz318 * Neg vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7315 -> 7343[label="",style="solid", color="black", weight=3]; 67.83/34.95 7590[label="primPlusNat (Succ vuz33500) (Succ vuz3071000)",fontsize=16,color="black",shape="box"];7590 -> 7601[label="",style="solid", color="black", weight=3]; 67.83/34.95 7591[label="primPlusNat (Succ vuz33500) Zero",fontsize=16,color="black",shape="box"];7591 -> 7602[label="",style="solid", color="black", weight=3]; 67.83/34.95 7592[label="primPlusNat Zero (Succ vuz3071000)",fontsize=16,color="black",shape="box"];7592 -> 7603[label="",style="solid", color="black", weight=3]; 67.83/34.95 7593[label="primPlusNat Zero Zero",fontsize=16,color="black",shape="box"];7593 -> 7604[label="",style="solid", color="black", weight=3]; 67.83/34.95 7324[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (reduce2D (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7324 -> 7356[label="",style="solid", color="black", weight=3]; 67.83/34.95 7325[label="primQuotInt (primMinusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10895[label="vuz3160/Succ vuz31600",fontsize=10,color="white",style="solid",shape="box"];7325 -> 10895[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10895 -> 7357[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10896[label="vuz3160/Zero",fontsize=10,color="white",style="solid",shape="box"];7325 -> 10896[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10896 -> 7358[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7326[label="primQuotInt (primMinusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10897[label="vuz3160/Succ vuz31600",fontsize=10,color="white",style="solid",shape="box"];7326 -> 10897[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10897 -> 7359[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10898[label="vuz3160/Zero",fontsize=10,color="white",style="solid",shape="box"];7326 -> 10898[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10898 -> 7360[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7327[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (reduce2D (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7327 -> 7361[label="",style="solid", color="black", weight=3]; 67.83/34.95 7328[label="primQuotInt (primMinusNat (primMulNat vuz3180 vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat vuz3180 vuz3190) (primMulNat vuz3160 vuz3170)) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10899[label="vuz3180/Succ vuz31800",fontsize=10,color="white",style="solid",shape="box"];7328 -> 10899[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10899 -> 7362[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10900[label="vuz3180/Zero",fontsize=10,color="white",style="solid",shape="box"];7328 -> 10900[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10900 -> 7363[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7329[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (reduce2D (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7329 -> 7364[label="",style="solid", color="black", weight=3]; 67.83/34.95 7330[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (reduce2D (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7330 -> 7365[label="",style="solid", color="black", weight=3]; 67.83/34.95 7331[label="primQuotInt (primMinusNat (primMulNat vuz3180 vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat vuz3180 vuz3190) (primMulNat vuz3160 vuz3170)) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10901[label="vuz3180/Succ vuz31800",fontsize=10,color="white",style="solid",shape="box"];7331 -> 10901[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10901 -> 7366[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10902[label="vuz3180/Zero",fontsize=10,color="white",style="solid",shape="box"];7331 -> 10902[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10902 -> 7367[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7332[label="primQuotInt (primMinusNat (primMulNat vuz3180 vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat vuz3180 vuz3190) (primMulNat vuz3160 vuz3170)) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10903[label="vuz3180/Succ vuz31800",fontsize=10,color="white",style="solid",shape="box"];7332 -> 10903[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10903 -> 7368[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10904[label="vuz3180/Zero",fontsize=10,color="white",style="solid",shape="box"];7332 -> 10904[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10904 -> 7369[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7333[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (reduce2D (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7333 -> 7370[label="",style="solid", color="black", weight=3]; 67.83/34.95 7334[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (reduce2D (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7334 -> 7371[label="",style="solid", color="black", weight=3]; 67.83/34.95 7335[label="primQuotInt (primMinusNat (primMulNat vuz3180 vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat vuz3180 vuz3190) (primMulNat vuz3160 vuz3170)) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10905[label="vuz3180/Succ vuz31800",fontsize=10,color="white",style="solid",shape="box"];7335 -> 10905[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10905 -> 7372[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10906[label="vuz3180/Zero",fontsize=10,color="white",style="solid",shape="box"];7335 -> 10906[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10906 -> 7373[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7336[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (reduce2D (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7336 -> 7374[label="",style="solid", color="black", weight=3]; 67.83/34.95 7337[label="primQuotInt (primMinusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10907[label="vuz3160/Succ vuz31600",fontsize=10,color="white",style="solid",shape="box"];7337 -> 10907[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10907 -> 7375[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10908[label="vuz3160/Zero",fontsize=10,color="white",style="solid",shape="box"];7337 -> 10908[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10908 -> 7376[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7338[label="primQuotInt (primMinusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10909[label="vuz3160/Succ vuz31600",fontsize=10,color="white",style="solid",shape="box"];7338 -> 10909[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10909 -> 7377[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10910[label="vuz3160/Zero",fontsize=10,color="white",style="solid",shape="box"];7338 -> 10910[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10910 -> 7378[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7339[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (reduce2D (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7339 -> 7379[label="",style="solid", color="black", weight=3]; 67.83/34.95 7340[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt vuz316 (Pos vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt vuz316 (Pos vuz3170)) (vuz318 * Pos vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="burlywood",shape="box"];10911[label="vuz316/Pos vuz3160",fontsize=10,color="white",style="solid",shape="box"];7340 -> 10911[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10911 -> 7380[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10912[label="vuz316/Neg vuz3160",fontsize=10,color="white",style="solid",shape="box"];7340 -> 10912[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10912 -> 7381[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7341[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt vuz316 (Neg vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt vuz316 (Neg vuz3170)) (vuz318 * Pos vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="burlywood",shape="box"];10913[label="vuz316/Pos vuz3160",fontsize=10,color="white",style="solid",shape="box"];7341 -> 10913[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10913 -> 7382[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10914[label="vuz316/Neg vuz3160",fontsize=10,color="white",style="solid",shape="box"];7341 -> 10914[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10914 -> 7383[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7342[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt vuz316 (Pos vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt vuz316 (Pos vuz3170)) (vuz318 * Neg vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="burlywood",shape="box"];10915[label="vuz316/Pos vuz3160",fontsize=10,color="white",style="solid",shape="box"];7342 -> 10915[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10915 -> 7384[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10916[label="vuz316/Neg vuz3160",fontsize=10,color="white",style="solid",shape="box"];7342 -> 10916[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10916 -> 7385[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7343[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt vuz316 (Neg vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt vuz316 (Neg vuz3170)) (vuz318 * Neg vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="burlywood",shape="box"];10917[label="vuz316/Pos vuz3160",fontsize=10,color="white",style="solid",shape="box"];7343 -> 10917[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10917 -> 7386[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10918[label="vuz316/Neg vuz3160",fontsize=10,color="white",style="solid",shape="box"];7343 -> 10918[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10918 -> 7387[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7601[label="Succ (Succ (primPlusNat vuz33500 vuz3071000))",fontsize=16,color="green",shape="box"];7601 -> 7616[label="",style="dashed", color="green", weight=3]; 67.83/34.95 7602[label="Succ vuz33500",fontsize=16,color="green",shape="box"];7603[label="Succ vuz3071000",fontsize=16,color="green",shape="box"];7604[label="Zero",fontsize=16,color="green",shape="box"];7356[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7356 -> 7427[label="",style="solid", color="black", weight=3]; 67.83/34.95 7357[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) vuz3170) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10919[label="vuz3170/Succ vuz31700",fontsize=10,color="white",style="solid",shape="box"];7357 -> 10919[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10919 -> 7428[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10920[label="vuz3170/Zero",fontsize=10,color="white",style="solid",shape="box"];7357 -> 10920[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10920 -> 7429[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7358[label="primQuotInt (primMinusNat (primMulNat Zero vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero vuz3170) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10921[label="vuz3170/Succ vuz31700",fontsize=10,color="white",style="solid",shape="box"];7358 -> 10921[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10921 -> 7430[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10922[label="vuz3170/Zero",fontsize=10,color="white",style="solid",shape="box"];7358 -> 10922[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10922 -> 7431[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7359[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) vuz3170) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10923[label="vuz3170/Succ vuz31700",fontsize=10,color="white",style="solid",shape="box"];7359 -> 10923[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10923 -> 7432[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10924[label="vuz3170/Zero",fontsize=10,color="white",style="solid",shape="box"];7359 -> 10924[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10924 -> 7433[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7360[label="primQuotInt (primMinusNat (primMulNat Zero vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero vuz3170) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10925[label="vuz3170/Succ vuz31700",fontsize=10,color="white",style="solid",shape="box"];7360 -> 10925[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10925 -> 7434[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10926[label="vuz3170/Zero",fontsize=10,color="white",style="solid",shape="box"];7360 -> 10926[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10926 -> 7435[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7361[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7361 -> 7436[label="",style="solid", color="black", weight=3]; 67.83/34.95 7362[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) vuz3190) (primMulNat vuz3160 vuz3170)) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10927[label="vuz3190/Succ vuz31900",fontsize=10,color="white",style="solid",shape="box"];7362 -> 10927[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10927 -> 7437[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10928[label="vuz3190/Zero",fontsize=10,color="white",style="solid",shape="box"];7362 -> 10928[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10928 -> 7438[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7363[label="primQuotInt (primMinusNat (primMulNat Zero vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero vuz3190) (primMulNat vuz3160 vuz3170)) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10929[label="vuz3190/Succ vuz31900",fontsize=10,color="white",style="solid",shape="box"];7363 -> 10929[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10929 -> 7439[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10930[label="vuz3190/Zero",fontsize=10,color="white",style="solid",shape="box"];7363 -> 10930[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10930 -> 7440[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7364[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7364 -> 7441[label="",style="solid", color="black", weight=3]; 67.83/34.95 7365[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7365 -> 7442[label="",style="solid", color="black", weight=3]; 67.83/34.95 7366[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) vuz3190) (primMulNat vuz3160 vuz3170)) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10931[label="vuz3190/Succ vuz31900",fontsize=10,color="white",style="solid",shape="box"];7366 -> 10931[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10931 -> 7443[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10932[label="vuz3190/Zero",fontsize=10,color="white",style="solid",shape="box"];7366 -> 10932[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10932 -> 7444[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7367[label="primQuotInt (primMinusNat (primMulNat Zero vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero vuz3190) (primMulNat vuz3160 vuz3170)) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10933[label="vuz3190/Succ vuz31900",fontsize=10,color="white",style="solid",shape="box"];7367 -> 10933[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10933 -> 7445[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10934[label="vuz3190/Zero",fontsize=10,color="white",style="solid",shape="box"];7367 -> 10934[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10934 -> 7446[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7368[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) vuz3190) (primMulNat vuz3160 vuz3170)) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10935[label="vuz3190/Succ vuz31900",fontsize=10,color="white",style="solid",shape="box"];7368 -> 10935[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10935 -> 7447[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10936[label="vuz3190/Zero",fontsize=10,color="white",style="solid",shape="box"];7368 -> 10936[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10936 -> 7448[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7369[label="primQuotInt (primMinusNat (primMulNat Zero vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero vuz3190) (primMulNat vuz3160 vuz3170)) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10937[label="vuz3190/Succ vuz31900",fontsize=10,color="white",style="solid",shape="box"];7369 -> 10937[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10937 -> 7449[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10938[label="vuz3190/Zero",fontsize=10,color="white",style="solid",shape="box"];7369 -> 10938[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10938 -> 7450[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7370[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7370 -> 7451[label="",style="solid", color="black", weight=3]; 67.83/34.95 7371[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];7371 -> 7452[label="",style="solid", color="black", weight=3]; 67.83/34.95 7372[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) vuz3190) (primMulNat vuz3160 vuz3170)) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10939[label="vuz3190/Succ vuz31900",fontsize=10,color="white",style="solid",shape="box"];7372 -> 10939[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10939 -> 7453[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10940[label="vuz3190/Zero",fontsize=10,color="white",style="solid",shape="box"];7372 -> 10940[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10940 -> 7454[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7373[label="primQuotInt (primMinusNat (primMulNat Zero vuz3190) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero vuz3190) (primMulNat vuz3160 vuz3170)) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];10941[label="vuz3190/Succ vuz31900",fontsize=10,color="white",style="solid",shape="box"];7373 -> 10941[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10941 -> 7455[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10942[label="vuz3190/Zero",fontsize=10,color="white",style="solid",shape="box"];7373 -> 10942[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10942 -> 7456[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7374[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7374 -> 7457[label="",style="solid", color="black", weight=3]; 67.83/34.95 7375[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) vuz3170) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10943[label="vuz3170/Succ vuz31700",fontsize=10,color="white",style="solid",shape="box"];7375 -> 10943[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10943 -> 7458[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10944[label="vuz3170/Zero",fontsize=10,color="white",style="solid",shape="box"];7375 -> 10944[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10944 -> 7459[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7376[label="primQuotInt (primMinusNat (primMulNat Zero vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero vuz3170) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10945[label="vuz3170/Succ vuz31700",fontsize=10,color="white",style="solid",shape="box"];7376 -> 10945[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10945 -> 7460[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10946[label="vuz3170/Zero",fontsize=10,color="white",style="solid",shape="box"];7376 -> 10946[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10946 -> 7461[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7377[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) vuz3170) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10947[label="vuz3170/Succ vuz31700",fontsize=10,color="white",style="solid",shape="box"];7377 -> 10947[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10947 -> 7462[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10948[label="vuz3170/Zero",fontsize=10,color="white",style="solid",shape="box"];7377 -> 10948[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10948 -> 7463[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7378[label="primQuotInt (primMinusNat (primMulNat Zero vuz3170) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero vuz3170) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];10949[label="vuz3170/Succ vuz31700",fontsize=10,color="white",style="solid",shape="box"];7378 -> 10949[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10949 -> 7464[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 10950[label="vuz3170/Zero",fontsize=10,color="white",style="solid",shape="box"];7378 -> 10950[label="",style="solid", color="burlywood", weight=9]; 67.83/34.95 10950 -> 7465[label="",style="solid", color="burlywood", weight=3]; 67.83/34.95 7379[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];7379 -> 7466[label="",style="solid", color="black", weight=3]; 67.83/34.95 7380[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt (Pos vuz3160) (Pos vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Pos vuz3160) (Pos vuz3170)) (vuz318 * Pos vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7380 -> 7467[label="",style="solid", color="black", weight=3]; 67.83/34.95 7381[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt (Neg vuz3160) (Pos vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Neg vuz3160) (Pos vuz3170)) (vuz318 * Pos vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7381 -> 7468[label="",style="solid", color="black", weight=3]; 67.83/34.95 7382[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt (Pos vuz3160) (Neg vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Pos vuz3160) (Neg vuz3170)) (vuz318 * Pos vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7382 -> 7469[label="",style="solid", color="black", weight=3]; 67.83/34.95 7383[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt (Neg vuz3160) (Neg vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Neg vuz3160) (Neg vuz3170)) (vuz318 * Pos vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7383 -> 7470[label="",style="solid", color="black", weight=3]; 67.83/34.95 7384[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt (Pos vuz3160) (Pos vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Pos vuz3160) (Pos vuz3170)) (vuz318 * Neg vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7384 -> 7471[label="",style="solid", color="black", weight=3]; 67.83/34.95 7385[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt (Neg vuz3160) (Pos vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Neg vuz3160) (Pos vuz3170)) (vuz318 * Neg vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7385 -> 7472[label="",style="solid", color="black", weight=3]; 67.83/34.95 7386[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt (Pos vuz3160) (Neg vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Pos vuz3160) (Neg vuz3170)) (vuz318 * Neg vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7386 -> 7473[label="",style="solid", color="black", weight=3]; 67.83/34.95 7387[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (primMulInt (Neg vuz3160) (Neg vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Neg vuz3160) (Neg vuz3170)) (vuz318 * Neg vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="black",shape="box"];7387 -> 7474[label="",style="solid", color="black", weight=3]; 67.83/34.95 7616 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7616[label="primPlusNat vuz33500 vuz3071000",fontsize=16,color="magenta"];7616 -> 7622[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7616 -> 7623[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7427 -> 7667[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7427[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd3 (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];7427 -> 7668[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7427 -> 7669[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7428[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];7428 -> 7534[label="",style="solid", color="black", weight=3]; 67.83/34.95 7429[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) Zero) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) Zero) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];7429 -> 7535[label="",style="solid", color="black", weight=3]; 67.83/34.95 7430[label="primQuotInt (primMinusNat (primMulNat Zero (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];7430 -> 7536[label="",style="solid", color="black", weight=3]; 67.83/34.95 7431[label="primQuotInt (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];7431 -> 7537[label="",style="solid", color="black", weight=3]; 67.83/34.95 7432[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];7432 -> 7538[label="",style="solid", color="black", weight=3]; 67.83/34.95 7433[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) Zero) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) Zero) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];7433 -> 7539[label="",style="solid", color="black", weight=3]; 67.83/34.95 7434[label="primQuotInt (primMinusNat (primMulNat Zero (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];7434 -> 7540[label="",style="solid", color="black", weight=3]; 67.83/34.95 7435[label="primQuotInt (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];7435 -> 7541[label="",style="solid", color="black", weight=3]; 67.83/34.95 7436 -> 7713[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7436[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd3 (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];7436 -> 7714[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7436 -> 7715[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7437[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];7437 -> 7555[label="",style="solid", color="black", weight=3]; 67.83/34.95 7438[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) Zero) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) Zero) (primMulNat vuz3160 vuz3170)) (Pos Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];7438 -> 7556[label="",style="solid", color="black", weight=3]; 67.83/34.95 7439[label="primQuotInt (primMinusNat (primMulNat Zero (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];7439 -> 7557[label="",style="solid", color="black", weight=3]; 67.83/34.95 7440[label="primQuotInt (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3160 vuz3170)) (Pos Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];7440 -> 7558[label="",style="solid", color="black", weight=3]; 67.83/34.95 7441 -> 7745[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7441[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd3 (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];7441 -> 7746[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7441 -> 7747[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7442 -> 7763[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7442[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd3 (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];7442 -> 7764[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7442 -> 7765[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7443[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];7443 -> 7572[label="",style="solid", color="black", weight=3]; 67.83/34.95 7444[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) Zero) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) Zero) (primMulNat vuz3160 vuz3170)) (Neg Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];7444 -> 7573[label="",style="solid", color="black", weight=3]; 67.83/34.95 7445[label="primQuotInt (primMinusNat (primMulNat Zero (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];7445 -> 7574[label="",style="solid", color="black", weight=3]; 67.83/34.95 7446[label="primQuotInt (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3160 vuz3170)) (Neg Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];7446 -> 7575[label="",style="solid", color="black", weight=3]; 67.83/34.95 7447[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];7447 -> 7576[label="",style="solid", color="black", weight=3]; 67.83/34.95 7448[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) Zero) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) Zero) (primMulNat vuz3160 vuz3170)) (Pos Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];7448 -> 7577[label="",style="solid", color="black", weight=3]; 67.83/34.95 7449[label="primQuotInt (primMinusNat (primMulNat Zero (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];7449 -> 7578[label="",style="solid", color="black", weight=3]; 67.83/34.95 7450[label="primQuotInt (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3160 vuz3170)) (Pos Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];7450 -> 7579[label="",style="solid", color="black", weight=3]; 67.83/34.95 7451 -> 7809[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7451[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd3 (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];7451 -> 7810[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7451 -> 7811[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7452 -> 7587[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7452[label="primQuotInt (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd3 (Neg (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];7452 -> 7588[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7452 -> 7589[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7453[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];7453 -> 7594[label="",style="solid", color="black", weight=3]; 67.83/34.95 7454[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31800) Zero) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat (Succ vuz31800) Zero) (primMulNat vuz3160 vuz3170)) (Neg Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];7454 -> 7595[label="",style="solid", color="black", weight=3]; 67.83/34.95 7455[label="primQuotInt (primMinusNat (primMulNat Zero (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];7455 -> 7596[label="",style="solid", color="black", weight=3]; 67.83/34.95 7456[label="primQuotInt (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3160 vuz3170)) (Neg Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];7456 -> 7597[label="",style="solid", color="black", weight=3]; 67.83/34.95 7457 -> 7598[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7457[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd3 (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];7457 -> 7599[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7457 -> 7600[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7458[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];7458 -> 7605[label="",style="solid", color="black", weight=3]; 67.83/34.95 7459[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) Zero) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) Zero) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];7459 -> 7606[label="",style="solid", color="black", weight=3]; 67.83/34.95 7460[label="primQuotInt (primMinusNat (primMulNat Zero (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];7460 -> 7607[label="",style="solid", color="black", weight=3]; 67.83/34.95 7461[label="primQuotInt (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];7461 -> 7608[label="",style="solid", color="black", weight=3]; 67.83/34.95 7462[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];7462 -> 7609[label="",style="solid", color="black", weight=3]; 67.83/34.95 7463[label="primQuotInt (primMinusNat (primMulNat (Succ vuz31600) Zero) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat (Succ vuz31600) Zero) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];7463 -> 7610[label="",style="solid", color="black", weight=3]; 67.83/34.95 7464[label="primQuotInt (primMinusNat (primMulNat Zero (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];7464 -> 7611[label="",style="solid", color="black", weight=3]; 67.83/34.95 7465[label="primQuotInt (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primMulNat Zero Zero) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];7465 -> 7612[label="",style="solid", color="black", weight=3]; 67.83/34.95 7466 -> 7613[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7466[label="primQuotInt (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (gcd3 (Pos (primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190))) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];7466 -> 7614[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7466 -> 7615[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7467 -> 7617[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7467[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * Pos vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="magenta"];7467 -> 7618[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7467 -> 7619[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7467 -> 7620[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7467 -> 7621[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7468 -> 7624[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7468[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * Pos vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="magenta"];7468 -> 7625[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7468 -> 7626[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7468 -> 7627[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7468 -> 7628[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7469 -> 7629[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7469[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * Pos vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="magenta"];7469 -> 7630[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7469 -> 7631[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7469 -> 7632[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7469 -> 7633[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7470 -> 7634[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7470[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * Pos vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="magenta"];7470 -> 7635[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7470 -> 7636[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7470 -> 7637[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7470 -> 7638[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7471 -> 7639[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7471[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * Neg vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="magenta"];7471 -> 7640[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7471 -> 7641[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7471 -> 7642[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7471 -> 7643[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7472 -> 7644[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7472[label="primQuotInt (Neg (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * Neg vuz3190)) (Neg (primMulNat vuz3190 vuz3170)))",fontsize=16,color="magenta"];7472 -> 7645[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7472 -> 7646[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7472 -> 7647[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7472 -> 7648[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7473 -> 7649[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7473[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Neg (primMulNat vuz3160 vuz3170)) (vuz318 * Neg vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="magenta"];7473 -> 7650[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7473 -> 7651[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7473 -> 7652[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7473 -> 7653[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7474 -> 7654[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7474[label="primQuotInt (Pos (primMulNat vuz3190 vuz3170)) (gcd2 (primEqInt (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Pos (primMulNat vuz3160 vuz3170)) (vuz318 * Neg vuz3190)) (Pos (primMulNat vuz3190 vuz3170)))",fontsize=16,color="magenta"];7474 -> 7655[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7474 -> 7656[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7474 -> 7657[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7474 -> 7658[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7622[label="vuz33500",fontsize=16,color="green",shape="box"];7623[label="vuz3071000",fontsize=16,color="green",shape="box"];7668 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7668[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7668 -> 7672[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7668 -> 7673[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7669 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7669[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7669 -> 7674[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7669 -> 7675[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7667[label="primQuotInt (Pos vuz398) (gcd3 (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="triangle"];7667 -> 7676[label="",style="solid", color="black", weight=3]; 67.83/34.95 7534 -> 7677[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7534[label="primQuotInt (primMinusNat (primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];7534 -> 7678[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7534 -> 7679[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7534 -> 7680[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7534 -> 7681[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7535 -> 7686[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7535[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos Zero))",fontsize=16,color="magenta"];7535 -> 7687[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7535 -> 7688[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7536 -> 7677[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7536[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];7536 -> 7682[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7536 -> 7683[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7536 -> 7684[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7536 -> 7685[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7537 -> 7686[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7537[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Pos Zero))",fontsize=16,color="magenta"];7537 -> 7689[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7537 -> 7690[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7538 -> 7691[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7538[label="primQuotInt (primMinusNat (primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];7538 -> 7692[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7538 -> 7693[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7538 -> 7694[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7538 -> 7695[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7539 -> 7700[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7539[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos Zero))",fontsize=16,color="magenta"];7539 -> 7701[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7539 -> 7702[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7540 -> 7691[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7540[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];7540 -> 7696[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7540 -> 7697[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7540 -> 7698[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7540 -> 7699[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7541 -> 7700[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7541[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Pos Zero))",fontsize=16,color="magenta"];7541 -> 7703[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7541 -> 7704[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7714 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7714[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7714 -> 7718[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7714 -> 7719[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7715 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7715[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7715 -> 7720[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7715 -> 7721[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7713[label="primQuotInt (Pos vuz416) (gcd3 (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="triangle"];7713 -> 7722[label="",style="solid", color="black", weight=3]; 67.83/34.95 7555 -> 7723[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7555[label="primQuotInt (primMinusNat (primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];7555 -> 7724[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7555 -> 7725[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7555 -> 7726[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7555 -> 7727[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7556 -> 7732[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7556[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Pos Zero * Neg vuz3170))",fontsize=16,color="magenta"];7556 -> 7733[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7556 -> 7734[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7557 -> 7723[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7557[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];7557 -> 7728[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7557 -> 7729[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7557 -> 7730[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7557 -> 7731[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7558 -> 7732[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7558[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Pos Zero * Neg vuz3170))",fontsize=16,color="magenta"];7558 -> 7735[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7558 -> 7736[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7746 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7746[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7746 -> 7750[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7746 -> 7751[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7747 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7747[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7747 -> 7752[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7747 -> 7753[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7745[label="primQuotInt (Neg vuz426) (gcd3 (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="triangle"];7745 -> 7754[label="",style="solid", color="black", weight=3]; 67.83/34.95 7764 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7764[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7764 -> 7768[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7764 -> 7769[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7765 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7765[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7765 -> 7770[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7765 -> 7771[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7763[label="primQuotInt (Neg vuz428) (gcd3 (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="triangle"];7763 -> 7772[label="",style="solid", color="black", weight=3]; 67.83/34.95 7572 -> 7773[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7572[label="primQuotInt (primMinusNat (primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];7572 -> 7774[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7572 -> 7775[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7572 -> 7776[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7572 -> 7777[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7573 -> 7782[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7573[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Neg Zero * Neg vuz3170))",fontsize=16,color="magenta"];7573 -> 7783[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7573 -> 7784[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7574 -> 7773[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7574[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];7574 -> 7778[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7574 -> 7779[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7574 -> 7780[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7574 -> 7781[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7575 -> 7782[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7575[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Neg Zero * Neg vuz3170))",fontsize=16,color="magenta"];7575 -> 7785[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7575 -> 7786[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7576 -> 7787[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7576[label="primQuotInt (primMinusNat (primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];7576 -> 7788[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7576 -> 7789[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7576 -> 7790[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7576 -> 7791[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7577 -> 7796[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7577[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Pos Zero * Pos vuz3170))",fontsize=16,color="magenta"];7577 -> 7797[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7577 -> 7798[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7578 -> 7787[label="",style="dashed", color="red", weight=0]; 67.83/34.95 7578[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];7578 -> 7792[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7578 -> 7793[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7578 -> 7794[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7578 -> 7795[label="",style="dashed", color="magenta", weight=3]; 67.83/34.95 7579 -> 7796[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7579[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Pos Zero * Pos vuz3170))",fontsize=16,color="magenta"];7579 -> 7799[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7579 -> 7800[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7810 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7810[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7810 -> 7814[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7810 -> 7815[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7811 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7811[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7811 -> 7816[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7811 -> 7817[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7809[label="primQuotInt (Neg vuz446) (gcd3 (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="triangle"];7809 -> 7818[label="",style="solid", color="black", weight=3]; 67.83/34.96 7588 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7588[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7588 -> 7819[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7588 -> 7820[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7589 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7589[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7589 -> 7821[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7589 -> 7822[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7587[label="primQuotInt (Neg vuz348) (gcd3 (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="triangle"];7587 -> 7823[label="",style="solid", color="black", weight=3]; 67.83/34.96 7594 -> 7824[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7594[label="primQuotInt (primMinusNat (primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat (primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)) (primMulNat vuz3160 vuz3170)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];7594 -> 7825[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7594 -> 7826[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7594 -> 7827[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7594 -> 7828[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7595 -> 7833[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7595[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Neg Zero * Pos vuz3170))",fontsize=16,color="magenta"];7595 -> 7834[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7595 -> 7835[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7596 -> 7824[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7596[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];7596 -> 7829[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7596 -> 7830[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7596 -> 7831[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7596 -> 7832[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7597 -> 7833[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7597[label="primQuotInt (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (reduce2D (primMinusNat Zero (primMulNat vuz3160 vuz3170)) (Neg Zero * Pos vuz3170))",fontsize=16,color="magenta"];7597 -> 7836[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7597 -> 7837[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7599 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7599[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7599 -> 7838[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7599 -> 7839[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7600 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7600[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7600 -> 7840[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7600 -> 7841[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7598[label="primQuotInt (Pos vuz354) (gcd3 (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="triangle"];7598 -> 7842[label="",style="solid", color="black", weight=3]; 67.83/34.96 7605 -> 7843[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7605[label="primQuotInt (primMinusNat (primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];7605 -> 7844[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7605 -> 7845[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7605 -> 7846[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7605 -> 7847[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7606 -> 7852[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7606[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg Zero))",fontsize=16,color="magenta"];7606 -> 7853[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7606 -> 7854[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7607 -> 7843[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7607[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];7607 -> 7848[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7607 -> 7849[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7607 -> 7850[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7607 -> 7851[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7608 -> 7852[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7608[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Neg vuz3190 * Neg Zero))",fontsize=16,color="magenta"];7608 -> 7855[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7608 -> 7856[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7609 -> 7857[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7609[label="primQuotInt (primMinusNat (primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat (primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)) (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];7609 -> 7858[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7609 -> 7859[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7609 -> 7860[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7609 -> 7861[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7610 -> 7866[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7610[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg Zero))",fontsize=16,color="magenta"];7610 -> 7867[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7610 -> 7868[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7611 -> 7857[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7611[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];7611 -> 7862[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7611 -> 7863[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7611 -> 7864[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7611 -> 7865[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7612 -> 7866[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7612[label="primQuotInt (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (reduce2D (primMinusNat Zero (primMulNat vuz3180 vuz3190)) (Pos vuz3190 * Neg Zero))",fontsize=16,color="magenta"];7612 -> 7869[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7612 -> 7870[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7614 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7614[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7614 -> 7871[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7614 -> 7872[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7615 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7615[label="primPlusNat (primMulNat vuz3160 vuz3170) (primMulNat vuz3180 vuz3190)",fontsize=16,color="magenta"];7615 -> 7873[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7615 -> 7874[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7613[label="primQuotInt (Pos vuz360) (gcd3 (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="triangle"];7613 -> 7875[label="",style="solid", color="black", weight=3]; 67.83/34.96 7618 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7618[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7618 -> 7876[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7618 -> 7877[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7619 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7619[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7619 -> 7878[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7619 -> 7879[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7620 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7620[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7620 -> 7880[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7620 -> 7881[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7621 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7621[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7621 -> 7882[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7621 -> 7883[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7617[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primPlusInt (Pos vuz369) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz368) (vuz318 * Pos vuz3190)) (Pos vuz367))",fontsize=16,color="black",shape="triangle"];7617 -> 7884[label="",style="solid", color="black", weight=3]; 67.83/34.96 7625 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7625[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7625 -> 7885[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7625 -> 7886[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7626 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7626[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7626 -> 7887[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7626 -> 7888[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7627 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7627[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7627 -> 7889[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7627 -> 7890[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7628 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7628[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7628 -> 7891[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7628 -> 7892[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7624[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primPlusInt (Neg vuz373) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz372) (vuz318 * Pos vuz3190)) (Pos vuz371))",fontsize=16,color="black",shape="triangle"];7624 -> 7893[label="",style="solid", color="black", weight=3]; 67.83/34.96 7630 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7630[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7630 -> 7894[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7630 -> 7895[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7631 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7631[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7631 -> 7896[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7631 -> 7897[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7632 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7632[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7632 -> 7898[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7632 -> 7899[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7633 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7633[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7633 -> 7900[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7633 -> 7901[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7629[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primPlusInt (Neg vuz377) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz376) (vuz318 * Pos vuz3190)) (Neg vuz375))",fontsize=16,color="black",shape="triangle"];7629 -> 7902[label="",style="solid", color="black", weight=3]; 67.83/34.96 7635 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7635[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7635 -> 7903[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7635 -> 7904[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7636 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7636[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7636 -> 7905[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7636 -> 7906[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7637 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7637[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7637 -> 7907[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7637 -> 7908[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7638 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7638[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7638 -> 7909[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7638 -> 7910[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7634[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primPlusInt (Pos vuz381) (vuz318 * Pos vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz380) (vuz318 * Pos vuz3190)) (Neg vuz379))",fontsize=16,color="black",shape="triangle"];7634 -> 7911[label="",style="solid", color="black", weight=3]; 67.83/34.96 7640 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7640[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7640 -> 7912[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7640 -> 7913[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7641 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7641[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7641 -> 7914[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7641 -> 7915[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7642 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7642[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7642 -> 7916[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7642 -> 7917[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7643 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7643[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7643 -> 7918[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7643 -> 7919[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7639[label="primQuotInt (Neg vuz382) (gcd2 (primEqInt (primPlusInt (Pos vuz385) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz384) (vuz318 * Neg vuz3190)) (Neg vuz383))",fontsize=16,color="black",shape="triangle"];7639 -> 7920[label="",style="solid", color="black", weight=3]; 67.83/34.96 7645 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7645[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7645 -> 7921[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7645 -> 7922[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7646 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7646[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7646 -> 7923[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7646 -> 7924[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7647 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7647[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7647 -> 7925[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7647 -> 7926[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7648 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7648[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7648 -> 7927[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7648 -> 7928[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7644[label="primQuotInt (Neg vuz386) (gcd2 (primEqInt (primPlusInt (Neg vuz389) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz388) (vuz318 * Neg vuz3190)) (Neg vuz387))",fontsize=16,color="black",shape="triangle"];7644 -> 7929[label="",style="solid", color="black", weight=3]; 67.83/34.96 7650 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7650[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7650 -> 7930[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7650 -> 7931[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7651 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7651[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7651 -> 7932[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7651 -> 7933[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7652 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7652[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7652 -> 7934[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7652 -> 7935[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7653 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7653[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7653 -> 7936[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7653 -> 7937[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7649[label="primQuotInt (Pos vuz390) (gcd2 (primEqInt (primPlusInt (Neg vuz393) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz392) (vuz318 * Neg vuz3190)) (Pos vuz391))",fontsize=16,color="black",shape="triangle"];7649 -> 7938[label="",style="solid", color="black", weight=3]; 67.83/34.96 7655 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7655[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7655 -> 7939[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7655 -> 7940[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7656 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7656[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7656 -> 7941[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7656 -> 7942[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7657 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7657[label="primMulNat vuz3190 vuz3170",fontsize=16,color="magenta"];7657 -> 7943[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7657 -> 7944[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7658 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7658[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7658 -> 7945[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7658 -> 7946[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7654[label="primQuotInt (Pos vuz394) (gcd2 (primEqInt (primPlusInt (Pos vuz397) (vuz318 * Neg vuz3190)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz396) (vuz318 * Neg vuz3190)) (Pos vuz395))",fontsize=16,color="black",shape="triangle"];7654 -> 7947[label="",style="solid", color="black", weight=3]; 67.83/34.96 7672 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7672[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7672 -> 7948[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7672 -> 7949[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7673 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7673[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7673 -> 7950[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7673 -> 7951[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7674 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7674[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7674 -> 7952[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7674 -> 7953[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7675 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7675[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7675 -> 7954[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7675 -> 7955[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7676 -> 8228[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7676[label="primQuotInt (Pos vuz398) (gcd2 (Pos vuz399 == fromInt (Pos Zero)) (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];7676 -> 8229[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7678 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7678[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7678 -> 7957[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7678 -> 7958[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7679 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7679[label="primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)",fontsize=16,color="magenta"];7679 -> 7959[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7679 -> 7960[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7680 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7680[label="primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)",fontsize=16,color="magenta"];7680 -> 7961[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7680 -> 7962[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7681 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7681[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7681 -> 7963[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7681 -> 7964[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7677[label="primQuotInt (primMinusNat vuz401 vuz400) (reduce2D (primMinusNat vuz403 vuz402) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="burlywood",shape="triangle"];10951[label="vuz401/Succ vuz4010",fontsize=10,color="white",style="solid",shape="box"];7677 -> 10951[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10951 -> 7965[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10952[label="vuz401/Zero",fontsize=10,color="white",style="solid",shape="box"];7677 -> 10952[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10952 -> 7966[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7687 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7687[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7687 -> 7967[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7687 -> 7968[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7688 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7688[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7688 -> 7969[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7688 -> 7970[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7686[label="primQuotInt (primMinusNat Zero vuz406) (reduce2D (primMinusNat Zero vuz407) (Neg vuz3190 * Pos Zero))",fontsize=16,color="burlywood",shape="triangle"];10953[label="vuz406/Succ vuz4060",fontsize=10,color="white",style="solid",shape="box"];7686 -> 10953[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10953 -> 7971[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10954[label="vuz406/Zero",fontsize=10,color="white",style="solid",shape="box"];7686 -> 10954[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10954 -> 7972[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7682 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7682[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7682 -> 7973[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7682 -> 7974[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7683[label="Zero",fontsize=16,color="green",shape="box"];7684[label="Zero",fontsize=16,color="green",shape="box"];7685 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7685[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7685 -> 7975[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7685 -> 7976[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7689 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7689[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7689 -> 7977[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7689 -> 7978[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7690 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7690[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7690 -> 7979[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7690 -> 7980[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7692 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7692[label="primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)",fontsize=16,color="magenta"];7692 -> 7981[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7692 -> 7982[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7693 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7693[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7693 -> 7983[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7693 -> 7984[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7694 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7694[label="primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)",fontsize=16,color="magenta"];7694 -> 7985[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7694 -> 7986[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7695 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7695[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7695 -> 7987[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7695 -> 7988[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7691[label="primQuotInt (primMinusNat vuz409 vuz408) (reduce2D (primMinusNat vuz411 vuz410) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="burlywood",shape="triangle"];10955[label="vuz409/Succ vuz4090",fontsize=10,color="white",style="solid",shape="box"];7691 -> 10955[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10955 -> 7989[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10956[label="vuz409/Zero",fontsize=10,color="white",style="solid",shape="box"];7691 -> 10956[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10956 -> 7990[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7701 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7701[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7701 -> 7991[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7701 -> 7992[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7702 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7702[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7702 -> 7993[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7702 -> 7994[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7700[label="primQuotInt (primMinusNat Zero vuz414) (reduce2D (primMinusNat Zero vuz415) (Pos vuz3190 * Pos Zero))",fontsize=16,color="burlywood",shape="triangle"];10957[label="vuz414/Succ vuz4140",fontsize=10,color="white",style="solid",shape="box"];7700 -> 10957[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10957 -> 7995[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10958[label="vuz414/Zero",fontsize=10,color="white",style="solid",shape="box"];7700 -> 10958[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10958 -> 7996[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7696[label="Zero",fontsize=16,color="green",shape="box"];7697 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7697[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7697 -> 7997[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7697 -> 7998[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7698[label="Zero",fontsize=16,color="green",shape="box"];7699 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7699[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7699 -> 7999[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7699 -> 8000[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7703 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7703[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7703 -> 8001[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7703 -> 8002[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7704 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7704[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7704 -> 8003[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7704 -> 8004[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7718 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7718[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7718 -> 8005[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7718 -> 8006[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7719 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7719[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7719 -> 8007[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7719 -> 8008[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7720 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7720[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7720 -> 8009[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7720 -> 8010[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7721 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7721[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7721 -> 8011[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7721 -> 8012[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7722 -> 8254[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7722[label="primQuotInt (Pos vuz416) (gcd2 (Pos vuz417 == fromInt (Pos Zero)) (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];7722 -> 8255[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7724 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7724[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7724 -> 8014[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7724 -> 8015[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7725 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7725[label="primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)",fontsize=16,color="magenta"];7725 -> 8016[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7725 -> 8017[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7726 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7726[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7726 -> 8018[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7726 -> 8019[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7727 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7727[label="primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)",fontsize=16,color="magenta"];7727 -> 8020[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7727 -> 8021[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7723[label="primQuotInt (primMinusNat vuz419 vuz418) (reduce2D (primMinusNat vuz421 vuz420) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10959[label="vuz419/Succ vuz4190",fontsize=10,color="white",style="solid",shape="box"];7723 -> 10959[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10959 -> 8022[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10960[label="vuz419/Zero",fontsize=10,color="white",style="solid",shape="box"];7723 -> 10960[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10960 -> 8023[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7733 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7733[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7733 -> 8024[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7733 -> 8025[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7734 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7734[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7734 -> 8026[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7734 -> 8027[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7732[label="primQuotInt (primMinusNat Zero vuz424) (reduce2D (primMinusNat Zero vuz425) (Pos Zero * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10961[label="vuz424/Succ vuz4240",fontsize=10,color="white",style="solid",shape="box"];7732 -> 10961[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10961 -> 8028[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10962[label="vuz424/Zero",fontsize=10,color="white",style="solid",shape="box"];7732 -> 10962[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10962 -> 8029[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7728 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7728[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7728 -> 8030[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7728 -> 8031[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7729[label="Zero",fontsize=16,color="green",shape="box"];7730 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7730[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7730 -> 8032[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7730 -> 8033[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7731[label="Zero",fontsize=16,color="green",shape="box"];7735 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7735[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7735 -> 8034[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7735 -> 8035[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7736 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7736[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7736 -> 8036[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7736 -> 8037[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7750 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7750[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7750 -> 8038[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7750 -> 8039[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7751 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7751[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7751 -> 8040[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7751 -> 8041[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7752 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7752[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7752 -> 8042[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7752 -> 8043[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7753 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7753[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7753 -> 8044[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7753 -> 8045[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7754 -> 8270[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7754[label="primQuotInt (Neg vuz426) (gcd2 (Neg vuz427 == fromInt (Pos Zero)) (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];7754 -> 8271[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7768 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7768[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7768 -> 8047[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7768 -> 8048[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7769 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7769[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7769 -> 8049[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7769 -> 8050[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7770 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7770[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7770 -> 8051[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7770 -> 8052[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7771 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7771[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7771 -> 8053[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7771 -> 8054[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7772 -> 8276[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7772[label="primQuotInt (Neg vuz428) (gcd2 (Neg vuz429 == fromInt (Pos Zero)) (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];7772 -> 8277[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7774 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7774[label="primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)",fontsize=16,color="magenta"];7774 -> 8056[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7774 -> 8057[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7775 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7775[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7775 -> 8058[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7775 -> 8059[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7776 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7776[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7776 -> 8060[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7776 -> 8061[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7777 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7777[label="primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)",fontsize=16,color="magenta"];7777 -> 8062[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7777 -> 8063[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7773[label="primQuotInt (primMinusNat vuz431 vuz430) (reduce2D (primMinusNat vuz433 vuz432) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10963[label="vuz431/Succ vuz4310",fontsize=10,color="white",style="solid",shape="box"];7773 -> 10963[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10963 -> 8064[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10964[label="vuz431/Zero",fontsize=10,color="white",style="solid",shape="box"];7773 -> 10964[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10964 -> 8065[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7783 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7783[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7783 -> 8066[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7783 -> 8067[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7784 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7784[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7784 -> 8068[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7784 -> 8069[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7782[label="primQuotInt (primMinusNat Zero vuz436) (reduce2D (primMinusNat Zero vuz437) (Neg Zero * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10965[label="vuz436/Succ vuz4360",fontsize=10,color="white",style="solid",shape="box"];7782 -> 10965[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10965 -> 8070[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10966[label="vuz436/Zero",fontsize=10,color="white",style="solid",shape="box"];7782 -> 10966[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10966 -> 8071[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7778[label="Zero",fontsize=16,color="green",shape="box"];7779 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7779[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7779 -> 8072[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7779 -> 8073[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7780 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7780[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7780 -> 8074[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7780 -> 8075[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7781[label="Zero",fontsize=16,color="green",shape="box"];7785 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7785[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7785 -> 8076[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7785 -> 8077[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7786 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7786[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7786 -> 8078[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7786 -> 8079[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7788 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7788[label="primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)",fontsize=16,color="magenta"];7788 -> 8080[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7788 -> 8081[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7789 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7789[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7789 -> 8082[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7789 -> 8083[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7790 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7790[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7790 -> 8084[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7790 -> 8085[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7791 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7791[label="primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)",fontsize=16,color="magenta"];7791 -> 8086[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7791 -> 8087[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7787[label="primQuotInt (primMinusNat vuz439 vuz438) (reduce2D (primMinusNat vuz441 vuz440) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10967[label="vuz439/Succ vuz4390",fontsize=10,color="white",style="solid",shape="box"];7787 -> 10967[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10967 -> 8088[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10968[label="vuz439/Zero",fontsize=10,color="white",style="solid",shape="box"];7787 -> 10968[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10968 -> 8089[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7797 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7797[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7797 -> 8090[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7797 -> 8091[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7798 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7798[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7798 -> 8092[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7798 -> 8093[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7796[label="primQuotInt (primMinusNat Zero vuz444) (reduce2D (primMinusNat Zero vuz445) (Pos Zero * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10969[label="vuz444/Succ vuz4440",fontsize=10,color="white",style="solid",shape="box"];7796 -> 10969[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10969 -> 8094[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10970[label="vuz444/Zero",fontsize=10,color="white",style="solid",shape="box"];7796 -> 10970[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10970 -> 8095[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7792[label="Zero",fontsize=16,color="green",shape="box"];7793 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7793[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7793 -> 8096[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7793 -> 8097[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7794 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7794[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7794 -> 8098[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7794 -> 8099[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7795[label="Zero",fontsize=16,color="green",shape="box"];7799 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7799[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7799 -> 8100[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7799 -> 8101[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7800 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7800[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7800 -> 8102[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7800 -> 8103[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7814 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7814[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7814 -> 8104[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7814 -> 8105[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7815 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7815[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7815 -> 8106[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7815 -> 8107[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7816 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7816[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7816 -> 8108[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7816 -> 8109[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7817 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7817[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7817 -> 8110[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7817 -> 8111[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7818 -> 8302[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7818[label="primQuotInt (Neg vuz446) (gcd2 (Neg vuz447 == fromInt (Pos Zero)) (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];7818 -> 8303[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7819 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7819[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7819 -> 8113[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7819 -> 8114[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7820 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7820[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7820 -> 8115[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7820 -> 8116[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7821 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7821[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7821 -> 8117[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7821 -> 8118[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7822 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7822[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7822 -> 8119[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7822 -> 8120[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7823 -> 8308[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7823[label="primQuotInt (Neg vuz348) (gcd2 (Neg vuz349 == fromInt (Pos Zero)) (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];7823 -> 8309[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7825 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7825[label="primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)",fontsize=16,color="magenta"];7825 -> 8122[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7825 -> 8123[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7826 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7826[label="primPlusNat (primMulNat vuz31800 (Succ vuz31900)) (Succ vuz31900)",fontsize=16,color="magenta"];7826 -> 8124[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7826 -> 8125[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7827 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7827[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7827 -> 8126[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7827 -> 8127[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7828 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7828[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7828 -> 8128[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7828 -> 8129[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7824[label="primQuotInt (primMinusNat vuz449 vuz448) (reduce2D (primMinusNat vuz451 vuz450) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10971[label="vuz449/Succ vuz4490",fontsize=10,color="white",style="solid",shape="box"];7824 -> 10971[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10971 -> 8130[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10972[label="vuz449/Zero",fontsize=10,color="white",style="solid",shape="box"];7824 -> 10972[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10972 -> 8131[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7834 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7834[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7834 -> 8132[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7834 -> 8133[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7835 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7835[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7835 -> 8134[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7835 -> 8135[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7833[label="primQuotInt (primMinusNat Zero vuz454) (reduce2D (primMinusNat Zero vuz455) (Neg Zero * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10973[label="vuz454/Succ vuz4540",fontsize=10,color="white",style="solid",shape="box"];7833 -> 10973[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10973 -> 8136[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10974[label="vuz454/Zero",fontsize=10,color="white",style="solid",shape="box"];7833 -> 10974[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10974 -> 8137[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7829[label="Zero",fontsize=16,color="green",shape="box"];7830[label="Zero",fontsize=16,color="green",shape="box"];7831 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7831[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7831 -> 8138[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7831 -> 8139[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7832 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7832[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7832 -> 8140[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7832 -> 8141[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7836 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7836[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7836 -> 8142[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7836 -> 8143[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7837 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7837[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7837 -> 8144[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7837 -> 8145[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7838 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7838[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7838 -> 8146[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7838 -> 8147[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7839 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7839[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7839 -> 8148[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7839 -> 8149[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7840 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7840[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7840 -> 8150[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7840 -> 8151[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7841 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7841[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7841 -> 8152[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7841 -> 8153[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7842 -> 8324[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7842[label="primQuotInt (Pos vuz354) (gcd2 (Pos vuz355 == fromInt (Pos Zero)) (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];7842 -> 8325[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7844 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7844[label="primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)",fontsize=16,color="magenta"];7844 -> 8155[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7844 -> 8156[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7845 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7845[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7845 -> 8157[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7845 -> 8158[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7846 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7846[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7846 -> 8159[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7846 -> 8160[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7847 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7847[label="primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)",fontsize=16,color="magenta"];7847 -> 8161[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7847 -> 8162[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7843[label="primQuotInt (primMinusNat vuz457 vuz456) (reduce2D (primMinusNat vuz459 vuz458) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="burlywood",shape="triangle"];10975[label="vuz457/Succ vuz4570",fontsize=10,color="white",style="solid",shape="box"];7843 -> 10975[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10975 -> 8163[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10976[label="vuz457/Zero",fontsize=10,color="white",style="solid",shape="box"];7843 -> 10976[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10976 -> 8164[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7853 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7853[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7853 -> 8165[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7853 -> 8166[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7854 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7854[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7854 -> 8167[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7854 -> 8168[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7852[label="primQuotInt (primMinusNat Zero vuz462) (reduce2D (primMinusNat Zero vuz463) (Neg vuz3190 * Neg Zero))",fontsize=16,color="burlywood",shape="triangle"];10977[label="vuz462/Succ vuz4620",fontsize=10,color="white",style="solid",shape="box"];7852 -> 10977[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10977 -> 8169[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10978[label="vuz462/Zero",fontsize=10,color="white",style="solid",shape="box"];7852 -> 10978[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10978 -> 8170[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7848[label="Zero",fontsize=16,color="green",shape="box"];7849 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7849[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7849 -> 8171[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7849 -> 8172[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7850 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7850[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7850 -> 8173[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7850 -> 8174[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7851[label="Zero",fontsize=16,color="green",shape="box"];7855 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7855[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7855 -> 8175[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7855 -> 8176[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7856 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7856[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7856 -> 8177[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7856 -> 8178[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7858 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7858[label="primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)",fontsize=16,color="magenta"];7858 -> 8179[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7858 -> 8180[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7859 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7859[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7859 -> 8181[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7859 -> 8182[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7860 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7860[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7860 -> 8183[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7860 -> 8184[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7861 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7861[label="primPlusNat (primMulNat vuz31600 (Succ vuz31700)) (Succ vuz31700)",fontsize=16,color="magenta"];7861 -> 8185[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7861 -> 8186[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7857[label="primQuotInt (primMinusNat vuz465 vuz464) (reduce2D (primMinusNat vuz467 vuz466) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="burlywood",shape="triangle"];10979[label="vuz465/Succ vuz4650",fontsize=10,color="white",style="solid",shape="box"];7857 -> 10979[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10979 -> 8187[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10980[label="vuz465/Zero",fontsize=10,color="white",style="solid",shape="box"];7857 -> 10980[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10980 -> 8188[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7867 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7867[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7867 -> 8189[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7867 -> 8190[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7868 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7868[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7868 -> 8191[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7868 -> 8192[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7866[label="primQuotInt (primMinusNat Zero vuz470) (reduce2D (primMinusNat Zero vuz471) (Pos vuz3190 * Neg Zero))",fontsize=16,color="burlywood",shape="triangle"];10981[label="vuz470/Succ vuz4700",fontsize=10,color="white",style="solid",shape="box"];7866 -> 10981[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10981 -> 8193[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10982[label="vuz470/Zero",fontsize=10,color="white",style="solid",shape="box"];7866 -> 10982[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10982 -> 8194[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7862[label="Zero",fontsize=16,color="green",shape="box"];7863 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7863[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7863 -> 8195[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7863 -> 8196[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7864 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7864[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7864 -> 8197[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7864 -> 8198[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7865[label="Zero",fontsize=16,color="green",shape="box"];7869 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7869[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7869 -> 8199[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7869 -> 8200[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7870 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7870[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7870 -> 8201[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7870 -> 8202[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7871 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7871[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7871 -> 8203[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7871 -> 8204[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7872 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7872[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7872 -> 8205[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7872 -> 8206[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7873 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7873[label="primMulNat vuz3160 vuz3170",fontsize=16,color="magenta"];7873 -> 8207[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7873 -> 8208[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7874 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7874[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];7874 -> 8209[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7874 -> 8210[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7875 -> 8350[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7875[label="primQuotInt (Pos vuz360) (gcd2 (Pos vuz361 == fromInt (Pos Zero)) (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];7875 -> 8351[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7876[label="vuz3190",fontsize=16,color="green",shape="box"];7877[label="vuz3170",fontsize=16,color="green",shape="box"];7878[label="vuz3160",fontsize=16,color="green",shape="box"];7879[label="vuz3170",fontsize=16,color="green",shape="box"];7880[label="vuz3160",fontsize=16,color="green",shape="box"];7881[label="vuz3170",fontsize=16,color="green",shape="box"];7882[label="vuz3190",fontsize=16,color="green",shape="box"];7883[label="vuz3170",fontsize=16,color="green",shape="box"];7884[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primPlusInt (Pos vuz369) (primMulInt vuz318 (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz368) (primMulInt vuz318 (Pos vuz3190))) (Pos vuz367))",fontsize=16,color="burlywood",shape="box"];10983[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7884 -> 10983[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10983 -> 8212[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10984[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7884 -> 10984[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10984 -> 8213[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7885[label="vuz3160",fontsize=16,color="green",shape="box"];7886[label="vuz3170",fontsize=16,color="green",shape="box"];7887[label="vuz3160",fontsize=16,color="green",shape="box"];7888[label="vuz3170",fontsize=16,color="green",shape="box"];7889[label="vuz3190",fontsize=16,color="green",shape="box"];7890[label="vuz3170",fontsize=16,color="green",shape="box"];7891[label="vuz3190",fontsize=16,color="green",shape="box"];7892[label="vuz3170",fontsize=16,color="green",shape="box"];7893[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primPlusInt (Neg vuz373) (primMulInt vuz318 (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz372) (primMulInt vuz318 (Pos vuz3190))) (Pos vuz371))",fontsize=16,color="burlywood",shape="box"];10985[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7893 -> 10985[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10985 -> 8214[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10986[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7893 -> 10986[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10986 -> 8215[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7894[label="vuz3190",fontsize=16,color="green",shape="box"];7895[label="vuz3170",fontsize=16,color="green",shape="box"];7896[label="vuz3160",fontsize=16,color="green",shape="box"];7897[label="vuz3170",fontsize=16,color="green",shape="box"];7898[label="vuz3190",fontsize=16,color="green",shape="box"];7899[label="vuz3170",fontsize=16,color="green",shape="box"];7900[label="vuz3160",fontsize=16,color="green",shape="box"];7901[label="vuz3170",fontsize=16,color="green",shape="box"];7902[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primPlusInt (Neg vuz377) (primMulInt vuz318 (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz376) (primMulInt vuz318 (Pos vuz3190))) (Neg vuz375))",fontsize=16,color="burlywood",shape="box"];10987[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7902 -> 10987[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10987 -> 8216[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10988[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7902 -> 10988[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10988 -> 8217[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7903[label="vuz3190",fontsize=16,color="green",shape="box"];7904[label="vuz3170",fontsize=16,color="green",shape="box"];7905[label="vuz3160",fontsize=16,color="green",shape="box"];7906[label="vuz3170",fontsize=16,color="green",shape="box"];7907[label="vuz3160",fontsize=16,color="green",shape="box"];7908[label="vuz3170",fontsize=16,color="green",shape="box"];7909[label="vuz3190",fontsize=16,color="green",shape="box"];7910[label="vuz3170",fontsize=16,color="green",shape="box"];7911[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primPlusInt (Pos vuz381) (primMulInt vuz318 (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz380) (primMulInt vuz318 (Pos vuz3190))) (Neg vuz379))",fontsize=16,color="burlywood",shape="box"];10989[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7911 -> 10989[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10989 -> 8218[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10990[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7911 -> 10990[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10990 -> 8219[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7912[label="vuz3190",fontsize=16,color="green",shape="box"];7913[label="vuz3170",fontsize=16,color="green",shape="box"];7914[label="vuz3190",fontsize=16,color="green",shape="box"];7915[label="vuz3170",fontsize=16,color="green",shape="box"];7916[label="vuz3160",fontsize=16,color="green",shape="box"];7917[label="vuz3170",fontsize=16,color="green",shape="box"];7918[label="vuz3160",fontsize=16,color="green",shape="box"];7919[label="vuz3170",fontsize=16,color="green",shape="box"];7920[label="primQuotInt (Neg vuz382) (gcd2 (primEqInt (primPlusInt (Pos vuz385) (primMulInt vuz318 (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz384) (primMulInt vuz318 (Neg vuz3190))) (Neg vuz383))",fontsize=16,color="burlywood",shape="box"];10991[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7920 -> 10991[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10991 -> 8220[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10992[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7920 -> 10992[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10992 -> 8221[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7921[label="vuz3190",fontsize=16,color="green",shape="box"];7922[label="vuz3170",fontsize=16,color="green",shape="box"];7923[label="vuz3160",fontsize=16,color="green",shape="box"];7924[label="vuz3170",fontsize=16,color="green",shape="box"];7925[label="vuz3160",fontsize=16,color="green",shape="box"];7926[label="vuz3170",fontsize=16,color="green",shape="box"];7927[label="vuz3190",fontsize=16,color="green",shape="box"];7928[label="vuz3170",fontsize=16,color="green",shape="box"];7929[label="primQuotInt (Neg vuz386) (gcd2 (primEqInt (primPlusInt (Neg vuz389) (primMulInt vuz318 (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz388) (primMulInt vuz318 (Neg vuz3190))) (Neg vuz387))",fontsize=16,color="burlywood",shape="box"];10993[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7929 -> 10993[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10993 -> 8222[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10994[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7929 -> 10994[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10994 -> 8223[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7930[label="vuz3190",fontsize=16,color="green",shape="box"];7931[label="vuz3170",fontsize=16,color="green",shape="box"];7932[label="vuz3160",fontsize=16,color="green",shape="box"];7933[label="vuz3170",fontsize=16,color="green",shape="box"];7934[label="vuz3160",fontsize=16,color="green",shape="box"];7935[label="vuz3170",fontsize=16,color="green",shape="box"];7936[label="vuz3190",fontsize=16,color="green",shape="box"];7937[label="vuz3170",fontsize=16,color="green",shape="box"];7938[label="primQuotInt (Pos vuz390) (gcd2 (primEqInt (primPlusInt (Neg vuz393) (primMulInt vuz318 (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz392) (primMulInt vuz318 (Neg vuz3190))) (Pos vuz391))",fontsize=16,color="burlywood",shape="box"];10995[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7938 -> 10995[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10995 -> 8224[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10996[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7938 -> 10996[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10996 -> 8225[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7939[label="vuz3190",fontsize=16,color="green",shape="box"];7940[label="vuz3170",fontsize=16,color="green",shape="box"];7941[label="vuz3160",fontsize=16,color="green",shape="box"];7942[label="vuz3170",fontsize=16,color="green",shape="box"];7943[label="vuz3190",fontsize=16,color="green",shape="box"];7944[label="vuz3170",fontsize=16,color="green",shape="box"];7945[label="vuz3160",fontsize=16,color="green",shape="box"];7946[label="vuz3170",fontsize=16,color="green",shape="box"];7947[label="primQuotInt (Pos vuz394) (gcd2 (primEqInt (primPlusInt (Pos vuz397) (primMulInt vuz318 (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz396) (primMulInt vuz318 (Neg vuz3190))) (Pos vuz395))",fontsize=16,color="burlywood",shape="box"];10997[label="vuz318/Pos vuz3180",fontsize=10,color="white",style="solid",shape="box"];7947 -> 10997[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10997 -> 8226[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 10998[label="vuz318/Neg vuz3180",fontsize=10,color="white",style="solid",shape="box"];7947 -> 10998[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10998 -> 8227[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7948[label="vuz3160",fontsize=16,color="green",shape="box"];7949[label="vuz3170",fontsize=16,color="green",shape="box"];7950[label="vuz3180",fontsize=16,color="green",shape="box"];7951[label="vuz3190",fontsize=16,color="green",shape="box"];7952[label="vuz3160",fontsize=16,color="green",shape="box"];7953[label="vuz3170",fontsize=16,color="green",shape="box"];7954[label="vuz3180",fontsize=16,color="green",shape="box"];7955[label="vuz3190",fontsize=16,color="green",shape="box"];8229 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8229[label="Pos vuz399 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8229 -> 9989[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8228[label="primQuotInt (Pos vuz398) (gcd2 vuz472 (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];10999[label="vuz472/False",fontsize=10,color="white",style="solid",shape="box"];8228 -> 10999[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 10999 -> 8232[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11000[label="vuz472/True",fontsize=10,color="white",style="solid",shape="box"];8228 -> 11000[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11000 -> 8233[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7957[label="vuz3180",fontsize=16,color="green",shape="box"];7958[label="vuz3190",fontsize=16,color="green",shape="box"];7959 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7959[label="primMulNat vuz31600 (Succ vuz31700)",fontsize=16,color="magenta"];7959 -> 8234[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7959 -> 8235[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7960[label="Succ vuz31700",fontsize=16,color="green",shape="box"];7961 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7961[label="primMulNat vuz31600 (Succ vuz31700)",fontsize=16,color="magenta"];7961 -> 8236[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7961 -> 8237[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7962[label="Succ vuz31700",fontsize=16,color="green",shape="box"];7963[label="vuz3180",fontsize=16,color="green",shape="box"];7964[label="vuz3190",fontsize=16,color="green",shape="box"];7965[label="primQuotInt (primMinusNat (Succ vuz4010) vuz400) (reduce2D (primMinusNat vuz403 vuz402) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="burlywood",shape="box"];11001[label="vuz400/Succ vuz4000",fontsize=10,color="white",style="solid",shape="box"];7965 -> 11001[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11001 -> 8238[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11002[label="vuz400/Zero",fontsize=10,color="white",style="solid",shape="box"];7965 -> 11002[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11002 -> 8239[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7966[label="primQuotInt (primMinusNat Zero vuz400) (reduce2D (primMinusNat vuz403 vuz402) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="burlywood",shape="box"];11003[label="vuz400/Succ vuz4000",fontsize=10,color="white",style="solid",shape="box"];7966 -> 11003[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11003 -> 8240[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11004[label="vuz400/Zero",fontsize=10,color="white",style="solid",shape="box"];7966 -> 11004[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11004 -> 8241[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7967[label="vuz3180",fontsize=16,color="green",shape="box"];7968[label="vuz3190",fontsize=16,color="green",shape="box"];7969[label="vuz3180",fontsize=16,color="green",shape="box"];7970[label="vuz3190",fontsize=16,color="green",shape="box"];7971[label="primQuotInt (primMinusNat Zero (Succ vuz4060)) (reduce2D (primMinusNat Zero vuz407) (Neg vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];7971 -> 8242[label="",style="solid", color="black", weight=3]; 67.83/34.96 7972[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero vuz407) (Neg vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];7972 -> 8243[label="",style="solid", color="black", weight=3]; 67.83/34.96 7973[label="vuz3180",fontsize=16,color="green",shape="box"];7974[label="vuz3190",fontsize=16,color="green",shape="box"];7975[label="vuz3180",fontsize=16,color="green",shape="box"];7976[label="vuz3190",fontsize=16,color="green",shape="box"];7977[label="vuz3180",fontsize=16,color="green",shape="box"];7978[label="vuz3190",fontsize=16,color="green",shape="box"];7979[label="vuz3180",fontsize=16,color="green",shape="box"];7980[label="vuz3190",fontsize=16,color="green",shape="box"];7981 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7981[label="primMulNat vuz31600 (Succ vuz31700)",fontsize=16,color="magenta"];7981 -> 8244[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7981 -> 8245[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7982[label="Succ vuz31700",fontsize=16,color="green",shape="box"];7983[label="vuz3180",fontsize=16,color="green",shape="box"];7984[label="vuz3190",fontsize=16,color="green",shape="box"];7985 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 7985[label="primMulNat vuz31600 (Succ vuz31700)",fontsize=16,color="magenta"];7985 -> 8246[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7985 -> 8247[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7986[label="Succ vuz31700",fontsize=16,color="green",shape="box"];7987[label="vuz3180",fontsize=16,color="green",shape="box"];7988[label="vuz3190",fontsize=16,color="green",shape="box"];7989[label="primQuotInt (primMinusNat (Succ vuz4090) vuz408) (reduce2D (primMinusNat vuz411 vuz410) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="burlywood",shape="box"];11005[label="vuz408/Succ vuz4080",fontsize=10,color="white",style="solid",shape="box"];7989 -> 11005[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11005 -> 8248[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11006[label="vuz408/Zero",fontsize=10,color="white",style="solid",shape="box"];7989 -> 11006[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11006 -> 8249[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7990[label="primQuotInt (primMinusNat Zero vuz408) (reduce2D (primMinusNat vuz411 vuz410) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="burlywood",shape="box"];11007[label="vuz408/Succ vuz4080",fontsize=10,color="white",style="solid",shape="box"];7990 -> 11007[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11007 -> 8250[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11008[label="vuz408/Zero",fontsize=10,color="white",style="solid",shape="box"];7990 -> 11008[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11008 -> 8251[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 7991[label="vuz3180",fontsize=16,color="green",shape="box"];7992[label="vuz3190",fontsize=16,color="green",shape="box"];7993[label="vuz3180",fontsize=16,color="green",shape="box"];7994[label="vuz3190",fontsize=16,color="green",shape="box"];7995[label="primQuotInt (primMinusNat Zero (Succ vuz4140)) (reduce2D (primMinusNat Zero vuz415) (Pos vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];7995 -> 8252[label="",style="solid", color="black", weight=3]; 67.83/34.96 7996[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero vuz415) (Pos vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];7996 -> 8253[label="",style="solid", color="black", weight=3]; 67.83/34.96 7997[label="vuz3180",fontsize=16,color="green",shape="box"];7998[label="vuz3190",fontsize=16,color="green",shape="box"];7999[label="vuz3180",fontsize=16,color="green",shape="box"];8000[label="vuz3190",fontsize=16,color="green",shape="box"];8001[label="vuz3180",fontsize=16,color="green",shape="box"];8002[label="vuz3190",fontsize=16,color="green",shape="box"];8003[label="vuz3180",fontsize=16,color="green",shape="box"];8004[label="vuz3190",fontsize=16,color="green",shape="box"];8005[label="vuz3160",fontsize=16,color="green",shape="box"];8006[label="vuz3170",fontsize=16,color="green",shape="box"];8007[label="vuz3180",fontsize=16,color="green",shape="box"];8008[label="vuz3190",fontsize=16,color="green",shape="box"];8009[label="vuz3160",fontsize=16,color="green",shape="box"];8010[label="vuz3170",fontsize=16,color="green",shape="box"];8011[label="vuz3180",fontsize=16,color="green",shape="box"];8012[label="vuz3190",fontsize=16,color="green",shape="box"];8255 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8255[label="Pos vuz417 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8255 -> 9990[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8254[label="primQuotInt (Pos vuz416) (gcd2 vuz473 (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11009[label="vuz473/False",fontsize=10,color="white",style="solid",shape="box"];8254 -> 11009[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11009 -> 8258[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11010[label="vuz473/True",fontsize=10,color="white",style="solid",shape="box"];8254 -> 11010[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11010 -> 8259[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8014[label="vuz3160",fontsize=16,color="green",shape="box"];8015[label="vuz3170",fontsize=16,color="green",shape="box"];8016 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8016[label="primMulNat vuz31800 (Succ vuz31900)",fontsize=16,color="magenta"];8016 -> 8260[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8016 -> 8261[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8017[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8018[label="vuz3160",fontsize=16,color="green",shape="box"];8019[label="vuz3170",fontsize=16,color="green",shape="box"];8020 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8020[label="primMulNat vuz31800 (Succ vuz31900)",fontsize=16,color="magenta"];8020 -> 8262[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8020 -> 8263[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8021[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8022[label="primQuotInt (primMinusNat (Succ vuz4190) vuz418) (reduce2D (primMinusNat vuz421 vuz420) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];11011[label="vuz418/Succ vuz4180",fontsize=10,color="white",style="solid",shape="box"];8022 -> 11011[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11011 -> 8264[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11012[label="vuz418/Zero",fontsize=10,color="white",style="solid",shape="box"];8022 -> 11012[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11012 -> 8265[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8023[label="primQuotInt (primMinusNat Zero vuz418) (reduce2D (primMinusNat vuz421 vuz420) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];11013[label="vuz418/Succ vuz4180",fontsize=10,color="white",style="solid",shape="box"];8023 -> 11013[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11013 -> 8266[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11014[label="vuz418/Zero",fontsize=10,color="white",style="solid",shape="box"];8023 -> 11014[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11014 -> 8267[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8024[label="vuz3160",fontsize=16,color="green",shape="box"];8025[label="vuz3170",fontsize=16,color="green",shape="box"];8026[label="vuz3160",fontsize=16,color="green",shape="box"];8027[label="vuz3170",fontsize=16,color="green",shape="box"];8028[label="primQuotInt (primMinusNat Zero (Succ vuz4240)) (reduce2D (primMinusNat Zero vuz425) (Pos Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8028 -> 8268[label="",style="solid", color="black", weight=3]; 67.83/34.96 8029[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero vuz425) (Pos Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8029 -> 8269[label="",style="solid", color="black", weight=3]; 67.83/34.96 8030[label="vuz3160",fontsize=16,color="green",shape="box"];8031[label="vuz3170",fontsize=16,color="green",shape="box"];8032[label="vuz3160",fontsize=16,color="green",shape="box"];8033[label="vuz3170",fontsize=16,color="green",shape="box"];8034[label="vuz3160",fontsize=16,color="green",shape="box"];8035[label="vuz3170",fontsize=16,color="green",shape="box"];8036[label="vuz3160",fontsize=16,color="green",shape="box"];8037[label="vuz3170",fontsize=16,color="green",shape="box"];8038[label="vuz3160",fontsize=16,color="green",shape="box"];8039[label="vuz3170",fontsize=16,color="green",shape="box"];8040[label="vuz3180",fontsize=16,color="green",shape="box"];8041[label="vuz3190",fontsize=16,color="green",shape="box"];8042[label="vuz3160",fontsize=16,color="green",shape="box"];8043[label="vuz3170",fontsize=16,color="green",shape="box"];8044[label="vuz3180",fontsize=16,color="green",shape="box"];8045[label="vuz3190",fontsize=16,color="green",shape="box"];8271 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8271[label="Neg vuz427 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8271 -> 9991[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8270[label="primQuotInt (Neg vuz426) (gcd2 vuz474 (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11015[label="vuz474/False",fontsize=10,color="white",style="solid",shape="box"];8270 -> 11015[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11015 -> 8274[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11016[label="vuz474/True",fontsize=10,color="white",style="solid",shape="box"];8270 -> 11016[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11016 -> 8275[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8047[label="vuz3160",fontsize=16,color="green",shape="box"];8048[label="vuz3170",fontsize=16,color="green",shape="box"];8049[label="vuz3180",fontsize=16,color="green",shape="box"];8050[label="vuz3190",fontsize=16,color="green",shape="box"];8051[label="vuz3160",fontsize=16,color="green",shape="box"];8052[label="vuz3170",fontsize=16,color="green",shape="box"];8053[label="vuz3180",fontsize=16,color="green",shape="box"];8054[label="vuz3190",fontsize=16,color="green",shape="box"];8277 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8277[label="Neg vuz429 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8277 -> 9992[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8276[label="primQuotInt (Neg vuz428) (gcd2 vuz475 (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11017[label="vuz475/False",fontsize=10,color="white",style="solid",shape="box"];8276 -> 11017[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11017 -> 8280[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11018[label="vuz475/True",fontsize=10,color="white",style="solid",shape="box"];8276 -> 11018[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11018 -> 8281[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8056 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8056[label="primMulNat vuz31800 (Succ vuz31900)",fontsize=16,color="magenta"];8056 -> 8282[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8056 -> 8283[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8057[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8058[label="vuz3160",fontsize=16,color="green",shape="box"];8059[label="vuz3170",fontsize=16,color="green",shape="box"];8060[label="vuz3160",fontsize=16,color="green",shape="box"];8061[label="vuz3170",fontsize=16,color="green",shape="box"];8062 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8062[label="primMulNat vuz31800 (Succ vuz31900)",fontsize=16,color="magenta"];8062 -> 8284[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8062 -> 8285[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8063[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8064[label="primQuotInt (primMinusNat (Succ vuz4310) vuz430) (reduce2D (primMinusNat vuz433 vuz432) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];11019[label="vuz430/Succ vuz4300",fontsize=10,color="white",style="solid",shape="box"];8064 -> 11019[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11019 -> 8286[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11020[label="vuz430/Zero",fontsize=10,color="white",style="solid",shape="box"];8064 -> 11020[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11020 -> 8287[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8065[label="primQuotInt (primMinusNat Zero vuz430) (reduce2D (primMinusNat vuz433 vuz432) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="burlywood",shape="box"];11021[label="vuz430/Succ vuz4300",fontsize=10,color="white",style="solid",shape="box"];8065 -> 11021[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11021 -> 8288[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11022[label="vuz430/Zero",fontsize=10,color="white",style="solid",shape="box"];8065 -> 11022[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11022 -> 8289[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8066[label="vuz3160",fontsize=16,color="green",shape="box"];8067[label="vuz3170",fontsize=16,color="green",shape="box"];8068[label="vuz3160",fontsize=16,color="green",shape="box"];8069[label="vuz3170",fontsize=16,color="green",shape="box"];8070[label="primQuotInt (primMinusNat Zero (Succ vuz4360)) (reduce2D (primMinusNat Zero vuz437) (Neg Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8070 -> 8290[label="",style="solid", color="black", weight=3]; 67.83/34.96 8071[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero vuz437) (Neg Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8071 -> 8291[label="",style="solid", color="black", weight=3]; 67.83/34.96 8072[label="vuz3160",fontsize=16,color="green",shape="box"];8073[label="vuz3170",fontsize=16,color="green",shape="box"];8074[label="vuz3160",fontsize=16,color="green",shape="box"];8075[label="vuz3170",fontsize=16,color="green",shape="box"];8076[label="vuz3160",fontsize=16,color="green",shape="box"];8077[label="vuz3170",fontsize=16,color="green",shape="box"];8078[label="vuz3160",fontsize=16,color="green",shape="box"];8079[label="vuz3170",fontsize=16,color="green",shape="box"];8080 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8080[label="primMulNat vuz31800 (Succ vuz31900)",fontsize=16,color="magenta"];8080 -> 8292[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8080 -> 8293[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8081[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8082[label="vuz3160",fontsize=16,color="green",shape="box"];8083[label="vuz3170",fontsize=16,color="green",shape="box"];8084[label="vuz3160",fontsize=16,color="green",shape="box"];8085[label="vuz3170",fontsize=16,color="green",shape="box"];8086 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8086[label="primMulNat vuz31800 (Succ vuz31900)",fontsize=16,color="magenta"];8086 -> 8294[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8086 -> 8295[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8087[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8088[label="primQuotInt (primMinusNat (Succ vuz4390) vuz438) (reduce2D (primMinusNat vuz441 vuz440) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];11023[label="vuz438/Succ vuz4380",fontsize=10,color="white",style="solid",shape="box"];8088 -> 11023[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11023 -> 8296[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11024[label="vuz438/Zero",fontsize=10,color="white",style="solid",shape="box"];8088 -> 11024[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11024 -> 8297[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8089[label="primQuotInt (primMinusNat Zero vuz438) (reduce2D (primMinusNat vuz441 vuz440) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];11025[label="vuz438/Succ vuz4380",fontsize=10,color="white",style="solid",shape="box"];8089 -> 11025[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11025 -> 8298[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11026[label="vuz438/Zero",fontsize=10,color="white",style="solid",shape="box"];8089 -> 11026[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11026 -> 8299[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8090[label="vuz3160",fontsize=16,color="green",shape="box"];8091[label="vuz3170",fontsize=16,color="green",shape="box"];8092[label="vuz3160",fontsize=16,color="green",shape="box"];8093[label="vuz3170",fontsize=16,color="green",shape="box"];8094[label="primQuotInt (primMinusNat Zero (Succ vuz4440)) (reduce2D (primMinusNat Zero vuz445) (Pos Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8094 -> 8300[label="",style="solid", color="black", weight=3]; 67.83/34.96 8095[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero vuz445) (Pos Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8095 -> 8301[label="",style="solid", color="black", weight=3]; 67.83/34.96 8096[label="vuz3160",fontsize=16,color="green",shape="box"];8097[label="vuz3170",fontsize=16,color="green",shape="box"];8098[label="vuz3160",fontsize=16,color="green",shape="box"];8099[label="vuz3170",fontsize=16,color="green",shape="box"];8100[label="vuz3160",fontsize=16,color="green",shape="box"];8101[label="vuz3170",fontsize=16,color="green",shape="box"];8102[label="vuz3160",fontsize=16,color="green",shape="box"];8103[label="vuz3170",fontsize=16,color="green",shape="box"];8104[label="vuz3160",fontsize=16,color="green",shape="box"];8105[label="vuz3170",fontsize=16,color="green",shape="box"];8106[label="vuz3180",fontsize=16,color="green",shape="box"];8107[label="vuz3190",fontsize=16,color="green",shape="box"];8108[label="vuz3160",fontsize=16,color="green",shape="box"];8109[label="vuz3170",fontsize=16,color="green",shape="box"];8110[label="vuz3180",fontsize=16,color="green",shape="box"];8111[label="vuz3190",fontsize=16,color="green",shape="box"];8303 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8303[label="Neg vuz447 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8303 -> 9993[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8302[label="primQuotInt (Neg vuz446) (gcd2 vuz476 (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11027[label="vuz476/False",fontsize=10,color="white",style="solid",shape="box"];8302 -> 11027[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11027 -> 8306[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11028[label="vuz476/True",fontsize=10,color="white",style="solid",shape="box"];8302 -> 11028[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11028 -> 8307[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8113[label="vuz3160",fontsize=16,color="green",shape="box"];8114[label="vuz3170",fontsize=16,color="green",shape="box"];8115[label="vuz3180",fontsize=16,color="green",shape="box"];8116[label="vuz3190",fontsize=16,color="green",shape="box"];8117[label="vuz3160",fontsize=16,color="green",shape="box"];8118[label="vuz3170",fontsize=16,color="green",shape="box"];8119[label="vuz3180",fontsize=16,color="green",shape="box"];8120[label="vuz3190",fontsize=16,color="green",shape="box"];8309 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8309[label="Neg vuz349 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8309 -> 9994[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8308[label="primQuotInt (Neg vuz348) (gcd2 vuz477 (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11029[label="vuz477/False",fontsize=10,color="white",style="solid",shape="box"];8308 -> 11029[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11029 -> 8312[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11030[label="vuz477/True",fontsize=10,color="white",style="solid",shape="box"];8308 -> 11030[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11030 -> 8313[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8122 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8122[label="primMulNat vuz31800 (Succ vuz31900)",fontsize=16,color="magenta"];8122 -> 8314[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8122 -> 8315[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8123[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8124 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8124[label="primMulNat vuz31800 (Succ vuz31900)",fontsize=16,color="magenta"];8124 -> 8316[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8124 -> 8317[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8125[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8126[label="vuz3160",fontsize=16,color="green",shape="box"];8127[label="vuz3170",fontsize=16,color="green",shape="box"];8128[label="vuz3160",fontsize=16,color="green",shape="box"];8129[label="vuz3170",fontsize=16,color="green",shape="box"];8130[label="primQuotInt (primMinusNat (Succ vuz4490) vuz448) (reduce2D (primMinusNat vuz451 vuz450) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];11031[label="vuz448/Succ vuz4480",fontsize=10,color="white",style="solid",shape="box"];8130 -> 11031[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11031 -> 8318[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11032[label="vuz448/Zero",fontsize=10,color="white",style="solid",shape="box"];8130 -> 11032[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11032 -> 8319[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8131[label="primQuotInt (primMinusNat Zero vuz448) (reduce2D (primMinusNat vuz451 vuz450) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="burlywood",shape="box"];11033[label="vuz448/Succ vuz4480",fontsize=10,color="white",style="solid",shape="box"];8131 -> 11033[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11033 -> 8320[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11034[label="vuz448/Zero",fontsize=10,color="white",style="solid",shape="box"];8131 -> 11034[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11034 -> 8321[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8132[label="vuz3160",fontsize=16,color="green",shape="box"];8133[label="vuz3170",fontsize=16,color="green",shape="box"];8134[label="vuz3160",fontsize=16,color="green",shape="box"];8135[label="vuz3170",fontsize=16,color="green",shape="box"];8136[label="primQuotInt (primMinusNat Zero (Succ vuz4540)) (reduce2D (primMinusNat Zero vuz455) (Neg Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8136 -> 8322[label="",style="solid", color="black", weight=3]; 67.83/34.96 8137[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero vuz455) (Neg Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8137 -> 8323[label="",style="solid", color="black", weight=3]; 67.83/34.96 8138[label="vuz3160",fontsize=16,color="green",shape="box"];8139[label="vuz3170",fontsize=16,color="green",shape="box"];8140[label="vuz3160",fontsize=16,color="green",shape="box"];8141[label="vuz3170",fontsize=16,color="green",shape="box"];8142[label="vuz3160",fontsize=16,color="green",shape="box"];8143[label="vuz3170",fontsize=16,color="green",shape="box"];8144[label="vuz3160",fontsize=16,color="green",shape="box"];8145[label="vuz3170",fontsize=16,color="green",shape="box"];8146[label="vuz3160",fontsize=16,color="green",shape="box"];8147[label="vuz3170",fontsize=16,color="green",shape="box"];8148[label="vuz3180",fontsize=16,color="green",shape="box"];8149[label="vuz3190",fontsize=16,color="green",shape="box"];8150[label="vuz3160",fontsize=16,color="green",shape="box"];8151[label="vuz3170",fontsize=16,color="green",shape="box"];8152[label="vuz3180",fontsize=16,color="green",shape="box"];8153[label="vuz3190",fontsize=16,color="green",shape="box"];8325 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8325[label="Pos vuz355 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8325 -> 9995[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8324[label="primQuotInt (Pos vuz354) (gcd2 vuz478 (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11035[label="vuz478/False",fontsize=10,color="white",style="solid",shape="box"];8324 -> 11035[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11035 -> 8328[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11036[label="vuz478/True",fontsize=10,color="white",style="solid",shape="box"];8324 -> 11036[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11036 -> 8329[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8155 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8155[label="primMulNat vuz31600 (Succ vuz31700)",fontsize=16,color="magenta"];8155 -> 8330[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8155 -> 8331[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8156[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8157[label="vuz3180",fontsize=16,color="green",shape="box"];8158[label="vuz3190",fontsize=16,color="green",shape="box"];8159[label="vuz3180",fontsize=16,color="green",shape="box"];8160[label="vuz3190",fontsize=16,color="green",shape="box"];8161 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8161[label="primMulNat vuz31600 (Succ vuz31700)",fontsize=16,color="magenta"];8161 -> 8332[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8161 -> 8333[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8162[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8163[label="primQuotInt (primMinusNat (Succ vuz4570) vuz456) (reduce2D (primMinusNat vuz459 vuz458) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="burlywood",shape="box"];11037[label="vuz456/Succ vuz4560",fontsize=10,color="white",style="solid",shape="box"];8163 -> 11037[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11037 -> 8334[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11038[label="vuz456/Zero",fontsize=10,color="white",style="solid",shape="box"];8163 -> 11038[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11038 -> 8335[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8164[label="primQuotInt (primMinusNat Zero vuz456) (reduce2D (primMinusNat vuz459 vuz458) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="burlywood",shape="box"];11039[label="vuz456/Succ vuz4560",fontsize=10,color="white",style="solid",shape="box"];8164 -> 11039[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11039 -> 8336[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11040[label="vuz456/Zero",fontsize=10,color="white",style="solid",shape="box"];8164 -> 11040[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11040 -> 8337[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8165[label="vuz3180",fontsize=16,color="green",shape="box"];8166[label="vuz3190",fontsize=16,color="green",shape="box"];8167[label="vuz3180",fontsize=16,color="green",shape="box"];8168[label="vuz3190",fontsize=16,color="green",shape="box"];8169[label="primQuotInt (primMinusNat Zero (Succ vuz4620)) (reduce2D (primMinusNat Zero vuz463) (Neg vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8169 -> 8338[label="",style="solid", color="black", weight=3]; 67.83/34.96 8170[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero vuz463) (Neg vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8170 -> 8339[label="",style="solid", color="black", weight=3]; 67.83/34.96 8171[label="vuz3180",fontsize=16,color="green",shape="box"];8172[label="vuz3190",fontsize=16,color="green",shape="box"];8173[label="vuz3180",fontsize=16,color="green",shape="box"];8174[label="vuz3190",fontsize=16,color="green",shape="box"];8175[label="vuz3180",fontsize=16,color="green",shape="box"];8176[label="vuz3190",fontsize=16,color="green",shape="box"];8177[label="vuz3180",fontsize=16,color="green",shape="box"];8178[label="vuz3190",fontsize=16,color="green",shape="box"];8179 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8179[label="primMulNat vuz31600 (Succ vuz31700)",fontsize=16,color="magenta"];8179 -> 8340[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8179 -> 8341[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8180[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8181[label="vuz3180",fontsize=16,color="green",shape="box"];8182[label="vuz3190",fontsize=16,color="green",shape="box"];8183[label="vuz3180",fontsize=16,color="green",shape="box"];8184[label="vuz3190",fontsize=16,color="green",shape="box"];8185 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8185[label="primMulNat vuz31600 (Succ vuz31700)",fontsize=16,color="magenta"];8185 -> 8342[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8185 -> 8343[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8186[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8187[label="primQuotInt (primMinusNat (Succ vuz4650) vuz464) (reduce2D (primMinusNat vuz467 vuz466) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="burlywood",shape="box"];11041[label="vuz464/Succ vuz4640",fontsize=10,color="white",style="solid",shape="box"];8187 -> 11041[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11041 -> 8344[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11042[label="vuz464/Zero",fontsize=10,color="white",style="solid",shape="box"];8187 -> 11042[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11042 -> 8345[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8188[label="primQuotInt (primMinusNat Zero vuz464) (reduce2D (primMinusNat vuz467 vuz466) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="burlywood",shape="box"];11043[label="vuz464/Succ vuz4640",fontsize=10,color="white",style="solid",shape="box"];8188 -> 11043[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11043 -> 8346[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11044[label="vuz464/Zero",fontsize=10,color="white",style="solid",shape="box"];8188 -> 11044[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11044 -> 8347[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8189[label="vuz3180",fontsize=16,color="green",shape="box"];8190[label="vuz3190",fontsize=16,color="green",shape="box"];8191[label="vuz3180",fontsize=16,color="green",shape="box"];8192[label="vuz3190",fontsize=16,color="green",shape="box"];8193[label="primQuotInt (primMinusNat Zero (Succ vuz4700)) (reduce2D (primMinusNat Zero vuz471) (Pos vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8193 -> 8348[label="",style="solid", color="black", weight=3]; 67.83/34.96 8194[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero vuz471) (Pos vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8194 -> 8349[label="",style="solid", color="black", weight=3]; 67.83/34.96 8195[label="vuz3180",fontsize=16,color="green",shape="box"];8196[label="vuz3190",fontsize=16,color="green",shape="box"];8197[label="vuz3180",fontsize=16,color="green",shape="box"];8198[label="vuz3190",fontsize=16,color="green",shape="box"];8199[label="vuz3180",fontsize=16,color="green",shape="box"];8200[label="vuz3190",fontsize=16,color="green",shape="box"];8201[label="vuz3180",fontsize=16,color="green",shape="box"];8202[label="vuz3190",fontsize=16,color="green",shape="box"];8203[label="vuz3160",fontsize=16,color="green",shape="box"];8204[label="vuz3170",fontsize=16,color="green",shape="box"];8205[label="vuz3180",fontsize=16,color="green",shape="box"];8206[label="vuz3190",fontsize=16,color="green",shape="box"];8207[label="vuz3160",fontsize=16,color="green",shape="box"];8208[label="vuz3170",fontsize=16,color="green",shape="box"];8209[label="vuz3180",fontsize=16,color="green",shape="box"];8210[label="vuz3190",fontsize=16,color="green",shape="box"];8351 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8351[label="Pos vuz361 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8351 -> 9996[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8350[label="primQuotInt (Pos vuz360) (gcd2 vuz479 (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11045[label="vuz479/False",fontsize=10,color="white",style="solid",shape="box"];8350 -> 11045[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11045 -> 8354[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11046[label="vuz479/True",fontsize=10,color="white",style="solid",shape="box"];8350 -> 11046[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11046 -> 8355[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8212[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primPlusInt (Pos vuz369) (primMulInt (Pos vuz3180) (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz368) (primMulInt (Pos vuz3180) (Pos vuz3190))) (Pos vuz367))",fontsize=16,color="black",shape="box"];8212 -> 8356[label="",style="solid", color="black", weight=3]; 67.83/34.96 8213[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primPlusInt (Pos vuz369) (primMulInt (Neg vuz3180) (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz368) (primMulInt (Neg vuz3180) (Pos vuz3190))) (Pos vuz367))",fontsize=16,color="black",shape="box"];8213 -> 8357[label="",style="solid", color="black", weight=3]; 67.83/34.96 8214[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primPlusInt (Neg vuz373) (primMulInt (Pos vuz3180) (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz372) (primMulInt (Pos vuz3180) (Pos vuz3190))) (Pos vuz371))",fontsize=16,color="black",shape="box"];8214 -> 8358[label="",style="solid", color="black", weight=3]; 67.83/34.96 8215[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primPlusInt (Neg vuz373) (primMulInt (Neg vuz3180) (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz372) (primMulInt (Neg vuz3180) (Pos vuz3190))) (Pos vuz371))",fontsize=16,color="black",shape="box"];8215 -> 8359[label="",style="solid", color="black", weight=3]; 67.83/34.96 8216[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primPlusInt (Neg vuz377) (primMulInt (Pos vuz3180) (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz376) (primMulInt (Pos vuz3180) (Pos vuz3190))) (Neg vuz375))",fontsize=16,color="black",shape="box"];8216 -> 8360[label="",style="solid", color="black", weight=3]; 67.83/34.96 8217[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primPlusInt (Neg vuz377) (primMulInt (Neg vuz3180) (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz376) (primMulInt (Neg vuz3180) (Pos vuz3190))) (Neg vuz375))",fontsize=16,color="black",shape="box"];8217 -> 8361[label="",style="solid", color="black", weight=3]; 67.83/34.96 8218[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primPlusInt (Pos vuz381) (primMulInt (Pos vuz3180) (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz380) (primMulInt (Pos vuz3180) (Pos vuz3190))) (Neg vuz379))",fontsize=16,color="black",shape="box"];8218 -> 8362[label="",style="solid", color="black", weight=3]; 67.83/34.96 8219[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primPlusInt (Pos vuz381) (primMulInt (Neg vuz3180) (Pos vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz380) (primMulInt (Neg vuz3180) (Pos vuz3190))) (Neg vuz379))",fontsize=16,color="black",shape="box"];8219 -> 8363[label="",style="solid", color="black", weight=3]; 67.83/34.96 8220[label="primQuotInt (Neg vuz382) (gcd2 (primEqInt (primPlusInt (Pos vuz385) (primMulInt (Pos vuz3180) (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz384) (primMulInt (Pos vuz3180) (Neg vuz3190))) (Neg vuz383))",fontsize=16,color="black",shape="box"];8220 -> 8364[label="",style="solid", color="black", weight=3]; 67.83/34.96 8221[label="primQuotInt (Neg vuz382) (gcd2 (primEqInt (primPlusInt (Pos vuz385) (primMulInt (Neg vuz3180) (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz384) (primMulInt (Neg vuz3180) (Neg vuz3190))) (Neg vuz383))",fontsize=16,color="black",shape="box"];8221 -> 8365[label="",style="solid", color="black", weight=3]; 67.83/34.96 8222[label="primQuotInt (Neg vuz386) (gcd2 (primEqInt (primPlusInt (Neg vuz389) (primMulInt (Pos vuz3180) (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz388) (primMulInt (Pos vuz3180) (Neg vuz3190))) (Neg vuz387))",fontsize=16,color="black",shape="box"];8222 -> 8366[label="",style="solid", color="black", weight=3]; 67.83/34.96 8223[label="primQuotInt (Neg vuz386) (gcd2 (primEqInt (primPlusInt (Neg vuz389) (primMulInt (Neg vuz3180) (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz388) (primMulInt (Neg vuz3180) (Neg vuz3190))) (Neg vuz387))",fontsize=16,color="black",shape="box"];8223 -> 8367[label="",style="solid", color="black", weight=3]; 67.83/34.96 8224[label="primQuotInt (Pos vuz390) (gcd2 (primEqInt (primPlusInt (Neg vuz393) (primMulInt (Pos vuz3180) (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz392) (primMulInt (Pos vuz3180) (Neg vuz3190))) (Pos vuz391))",fontsize=16,color="black",shape="box"];8224 -> 8368[label="",style="solid", color="black", weight=3]; 67.83/34.96 8225[label="primQuotInt (Pos vuz390) (gcd2 (primEqInt (primPlusInt (Neg vuz393) (primMulInt (Neg vuz3180) (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz392) (primMulInt (Neg vuz3180) (Neg vuz3190))) (Pos vuz391))",fontsize=16,color="black",shape="box"];8225 -> 8369[label="",style="solid", color="black", weight=3]; 67.83/34.96 8226[label="primQuotInt (Pos vuz394) (gcd2 (primEqInt (primPlusInt (Pos vuz397) (primMulInt (Pos vuz3180) (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz396) (primMulInt (Pos vuz3180) (Neg vuz3190))) (Pos vuz395))",fontsize=16,color="black",shape="box"];8226 -> 8370[label="",style="solid", color="black", weight=3]; 67.83/34.96 8227[label="primQuotInt (Pos vuz394) (gcd2 (primEqInt (primPlusInt (Pos vuz397) (primMulInt (Neg vuz3180) (Neg vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz396) (primMulInt (Neg vuz3180) (Neg vuz3190))) (Pos vuz395))",fontsize=16,color="black",shape="box"];8227 -> 8371[label="",style="solid", color="black", weight=3]; 67.83/34.96 9989[label="Pos vuz399",fontsize=16,color="green",shape="box"];8232[label="primQuotInt (Pos vuz398) (gcd2 False (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8232 -> 8373[label="",style="solid", color="black", weight=3]; 67.83/34.96 8233[label="primQuotInt (Pos vuz398) (gcd2 True (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8233 -> 8374[label="",style="solid", color="black", weight=3]; 67.83/34.96 8234[label="vuz31600",fontsize=16,color="green",shape="box"];8235[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8236[label="vuz31600",fontsize=16,color="green",shape="box"];8237[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8238[label="primQuotInt (primMinusNat (Succ vuz4010) (Succ vuz4000)) (reduce2D (primMinusNat vuz403 vuz402) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8238 -> 8375[label="",style="solid", color="black", weight=3]; 67.83/34.96 8239[label="primQuotInt (primMinusNat (Succ vuz4010) Zero) (reduce2D (primMinusNat vuz403 vuz402) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8239 -> 8376[label="",style="solid", color="black", weight=3]; 67.83/34.96 8240[label="primQuotInt (primMinusNat Zero (Succ vuz4000)) (reduce2D (primMinusNat vuz403 vuz402) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8240 -> 8377[label="",style="solid", color="black", weight=3]; 67.83/34.96 8241[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat vuz403 vuz402) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8241 -> 8378[label="",style="solid", color="black", weight=3]; 67.83/34.96 8242[label="primQuotInt (Neg (Succ vuz4060)) (reduce2D (Neg (Succ vuz4060)) (Neg vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];8242 -> 8379[label="",style="solid", color="black", weight=3]; 67.83/34.96 8243[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];8243 -> 8380[label="",style="solid", color="black", weight=3]; 67.83/34.96 8244[label="vuz31600",fontsize=16,color="green",shape="box"];8245[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8246[label="vuz31600",fontsize=16,color="green",shape="box"];8247[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8248[label="primQuotInt (primMinusNat (Succ vuz4090) (Succ vuz4080)) (reduce2D (primMinusNat vuz411 vuz410) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8248 -> 8381[label="",style="solid", color="black", weight=3]; 67.83/34.96 8249[label="primQuotInt (primMinusNat (Succ vuz4090) Zero) (reduce2D (primMinusNat vuz411 vuz410) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8249 -> 8382[label="",style="solid", color="black", weight=3]; 67.83/34.96 8250[label="primQuotInt (primMinusNat Zero (Succ vuz4080)) (reduce2D (primMinusNat vuz411 vuz410) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8250 -> 8383[label="",style="solid", color="black", weight=3]; 67.83/34.96 8251[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat vuz411 vuz410) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8251 -> 8384[label="",style="solid", color="black", weight=3]; 67.83/34.96 8252[label="primQuotInt (Neg (Succ vuz4140)) (reduce2D (Neg (Succ vuz4140)) (Pos vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];8252 -> 8385[label="",style="solid", color="black", weight=3]; 67.83/34.96 8253[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];8253 -> 8386[label="",style="solid", color="black", weight=3]; 67.83/34.96 9990[label="Pos vuz417",fontsize=16,color="green",shape="box"];8258[label="primQuotInt (Pos vuz416) (gcd2 False (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8258 -> 8387[label="",style="solid", color="black", weight=3]; 67.83/34.96 8259[label="primQuotInt (Pos vuz416) (gcd2 True (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8259 -> 8388[label="",style="solid", color="black", weight=3]; 67.83/34.96 8260[label="vuz31800",fontsize=16,color="green",shape="box"];8261[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8262[label="vuz31800",fontsize=16,color="green",shape="box"];8263[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8264[label="primQuotInt (primMinusNat (Succ vuz4190) (Succ vuz4180)) (reduce2D (primMinusNat vuz421 vuz420) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8264 -> 8389[label="",style="solid", color="black", weight=3]; 67.83/34.96 8265[label="primQuotInt (primMinusNat (Succ vuz4190) Zero) (reduce2D (primMinusNat vuz421 vuz420) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8265 -> 8390[label="",style="solid", color="black", weight=3]; 67.83/34.96 8266[label="primQuotInt (primMinusNat Zero (Succ vuz4180)) (reduce2D (primMinusNat vuz421 vuz420) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8266 -> 8391[label="",style="solid", color="black", weight=3]; 67.83/34.96 8267[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat vuz421 vuz420) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8267 -> 8392[label="",style="solid", color="black", weight=3]; 67.83/34.96 8268[label="primQuotInt (Neg (Succ vuz4240)) (reduce2D (Neg (Succ vuz4240)) (Pos Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8268 -> 8393[label="",style="solid", color="black", weight=3]; 67.83/34.96 8269[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8269 -> 8394[label="",style="solid", color="black", weight=3]; 67.83/34.96 9991[label="Neg vuz427",fontsize=16,color="green",shape="box"];8274[label="primQuotInt (Neg vuz426) (gcd2 False (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8274 -> 8396[label="",style="solid", color="black", weight=3]; 67.83/34.96 8275[label="primQuotInt (Neg vuz426) (gcd2 True (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8275 -> 8397[label="",style="solid", color="black", weight=3]; 67.83/34.96 9992[label="Neg vuz429",fontsize=16,color="green",shape="box"];8280[label="primQuotInt (Neg vuz428) (gcd2 False (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8280 -> 8398[label="",style="solid", color="black", weight=3]; 67.83/34.96 8281[label="primQuotInt (Neg vuz428) (gcd2 True (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8281 -> 8399[label="",style="solid", color="black", weight=3]; 67.83/34.96 8282[label="vuz31800",fontsize=16,color="green",shape="box"];8283[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8284[label="vuz31800",fontsize=16,color="green",shape="box"];8285[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8286[label="primQuotInt (primMinusNat (Succ vuz4310) (Succ vuz4300)) (reduce2D (primMinusNat vuz433 vuz432) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8286 -> 8400[label="",style="solid", color="black", weight=3]; 67.83/34.96 8287[label="primQuotInt (primMinusNat (Succ vuz4310) Zero) (reduce2D (primMinusNat vuz433 vuz432) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8287 -> 8401[label="",style="solid", color="black", weight=3]; 67.83/34.96 8288[label="primQuotInt (primMinusNat Zero (Succ vuz4300)) (reduce2D (primMinusNat vuz433 vuz432) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8288 -> 8402[label="",style="solid", color="black", weight=3]; 67.83/34.96 8289[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat vuz433 vuz432) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8289 -> 8403[label="",style="solid", color="black", weight=3]; 67.83/34.96 8290[label="primQuotInt (Neg (Succ vuz4360)) (reduce2D (Neg (Succ vuz4360)) (Neg Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8290 -> 8404[label="",style="solid", color="black", weight=3]; 67.83/34.96 8291[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8291 -> 8405[label="",style="solid", color="black", weight=3]; 67.83/34.96 8292[label="vuz31800",fontsize=16,color="green",shape="box"];8293[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8294[label="vuz31800",fontsize=16,color="green",shape="box"];8295[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8296[label="primQuotInt (primMinusNat (Succ vuz4390) (Succ vuz4380)) (reduce2D (primMinusNat vuz441 vuz440) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8296 -> 8406[label="",style="solid", color="black", weight=3]; 67.83/34.96 8297[label="primQuotInt (primMinusNat (Succ vuz4390) Zero) (reduce2D (primMinusNat vuz441 vuz440) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8297 -> 8407[label="",style="solid", color="black", weight=3]; 67.83/34.96 8298[label="primQuotInt (primMinusNat Zero (Succ vuz4380)) (reduce2D (primMinusNat vuz441 vuz440) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8298 -> 8408[label="",style="solid", color="black", weight=3]; 67.83/34.96 8299[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat vuz441 vuz440) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8299 -> 8409[label="",style="solid", color="black", weight=3]; 67.83/34.96 8300[label="primQuotInt (Neg (Succ vuz4440)) (reduce2D (Neg (Succ vuz4440)) (Pos Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8300 -> 8410[label="",style="solid", color="black", weight=3]; 67.83/34.96 8301[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8301 -> 8411[label="",style="solid", color="black", weight=3]; 67.83/34.96 9993[label="Neg vuz447",fontsize=16,color="green",shape="box"];8306[label="primQuotInt (Neg vuz446) (gcd2 False (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8306 -> 8412[label="",style="solid", color="black", weight=3]; 67.83/34.96 8307[label="primQuotInt (Neg vuz446) (gcd2 True (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8307 -> 8413[label="",style="solid", color="black", weight=3]; 67.83/34.96 9994[label="Neg vuz349",fontsize=16,color="green",shape="box"];8312[label="primQuotInt (Neg vuz348) (gcd2 False (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8312 -> 8414[label="",style="solid", color="black", weight=3]; 67.83/34.96 8313[label="primQuotInt (Neg vuz348) (gcd2 True (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8313 -> 8415[label="",style="solid", color="black", weight=3]; 67.83/34.96 8314[label="vuz31800",fontsize=16,color="green",shape="box"];8315[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8316[label="vuz31800",fontsize=16,color="green",shape="box"];8317[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8318[label="primQuotInt (primMinusNat (Succ vuz4490) (Succ vuz4480)) (reduce2D (primMinusNat vuz451 vuz450) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8318 -> 8416[label="",style="solid", color="black", weight=3]; 67.83/34.96 8319[label="primQuotInt (primMinusNat (Succ vuz4490) Zero) (reduce2D (primMinusNat vuz451 vuz450) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8319 -> 8417[label="",style="solid", color="black", weight=3]; 67.83/34.96 8320[label="primQuotInt (primMinusNat Zero (Succ vuz4480)) (reduce2D (primMinusNat vuz451 vuz450) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8320 -> 8418[label="",style="solid", color="black", weight=3]; 67.83/34.96 8321[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat vuz451 vuz450) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8321 -> 8419[label="",style="solid", color="black", weight=3]; 67.83/34.96 8322[label="primQuotInt (Neg (Succ vuz4540)) (reduce2D (Neg (Succ vuz4540)) (Neg Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8322 -> 8420[label="",style="solid", color="black", weight=3]; 67.83/34.96 8323[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8323 -> 8421[label="",style="solid", color="black", weight=3]; 67.83/34.96 9995[label="Pos vuz355",fontsize=16,color="green",shape="box"];8328[label="primQuotInt (Pos vuz354) (gcd2 False (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8328 -> 8422[label="",style="solid", color="black", weight=3]; 67.83/34.96 8329[label="primQuotInt (Pos vuz354) (gcd2 True (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8329 -> 8423[label="",style="solid", color="black", weight=3]; 67.83/34.96 8330[label="vuz31600",fontsize=16,color="green",shape="box"];8331[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8332[label="vuz31600",fontsize=16,color="green",shape="box"];8333[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8334[label="primQuotInt (primMinusNat (Succ vuz4570) (Succ vuz4560)) (reduce2D (primMinusNat vuz459 vuz458) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8334 -> 8424[label="",style="solid", color="black", weight=3]; 67.83/34.96 8335[label="primQuotInt (primMinusNat (Succ vuz4570) Zero) (reduce2D (primMinusNat vuz459 vuz458) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8335 -> 8425[label="",style="solid", color="black", weight=3]; 67.83/34.96 8336[label="primQuotInt (primMinusNat Zero (Succ vuz4560)) (reduce2D (primMinusNat vuz459 vuz458) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8336 -> 8426[label="",style="solid", color="black", weight=3]; 67.83/34.96 8337[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat vuz459 vuz458) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8337 -> 8427[label="",style="solid", color="black", weight=3]; 67.83/34.96 8338[label="primQuotInt (Neg (Succ vuz4620)) (reduce2D (Neg (Succ vuz4620)) (Neg vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8338 -> 8428[label="",style="solid", color="black", weight=3]; 67.83/34.96 8339[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8339 -> 8429[label="",style="solid", color="black", weight=3]; 67.83/34.96 8340[label="vuz31600",fontsize=16,color="green",shape="box"];8341[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8342[label="vuz31600",fontsize=16,color="green",shape="box"];8343[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8344[label="primQuotInt (primMinusNat (Succ vuz4650) (Succ vuz4640)) (reduce2D (primMinusNat vuz467 vuz466) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8344 -> 8430[label="",style="solid", color="black", weight=3]; 67.83/34.96 8345[label="primQuotInt (primMinusNat (Succ vuz4650) Zero) (reduce2D (primMinusNat vuz467 vuz466) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8345 -> 8431[label="",style="solid", color="black", weight=3]; 67.83/34.96 8346[label="primQuotInt (primMinusNat Zero (Succ vuz4640)) (reduce2D (primMinusNat vuz467 vuz466) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8346 -> 8432[label="",style="solid", color="black", weight=3]; 67.83/34.96 8347[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat vuz467 vuz466) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8347 -> 8433[label="",style="solid", color="black", weight=3]; 67.83/34.96 8348[label="primQuotInt (Neg (Succ vuz4700)) (reduce2D (Neg (Succ vuz4700)) (Pos vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8348 -> 8434[label="",style="solid", color="black", weight=3]; 67.83/34.96 8349[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8349 -> 8435[label="",style="solid", color="black", weight=3]; 67.83/34.96 9996[label="Pos vuz361",fontsize=16,color="green",shape="box"];8354[label="primQuotInt (Pos vuz360) (gcd2 False (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8354 -> 8436[label="",style="solid", color="black", weight=3]; 67.83/34.96 8355[label="primQuotInt (Pos vuz360) (gcd2 True (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8355 -> 8437[label="",style="solid", color="black", weight=3]; 67.83/34.96 8356 -> 8438[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8356[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primPlusInt (Pos vuz369) (Pos (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz368) (Pos (primMulNat vuz3180 vuz3190))) (Pos vuz367))",fontsize=16,color="magenta"];8356 -> 8439[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8356 -> 8440[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8357 -> 8447[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8357[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primPlusInt (Pos vuz369) (Neg (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz368) (Neg (primMulNat vuz3180 vuz3190))) (Pos vuz367))",fontsize=16,color="magenta"];8357 -> 8448[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8357 -> 8449[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8358 -> 8456[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8358[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primPlusInt (Neg vuz373) (Pos (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz372) (Pos (primMulNat vuz3180 vuz3190))) (Pos vuz371))",fontsize=16,color="magenta"];8358 -> 8457[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8358 -> 8458[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8359 -> 8465[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8359[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primPlusInt (Neg vuz373) (Neg (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz372) (Neg (primMulNat vuz3180 vuz3190))) (Pos vuz371))",fontsize=16,color="magenta"];8359 -> 8466[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8359 -> 8467[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8360 -> 8474[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8360[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primPlusInt (Neg vuz377) (Pos (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz376) (Pos (primMulNat vuz3180 vuz3190))) (Neg vuz375))",fontsize=16,color="magenta"];8360 -> 8475[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8360 -> 8476[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8361 -> 8483[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8361[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primPlusInt (Neg vuz377) (Neg (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz376) (Neg (primMulNat vuz3180 vuz3190))) (Neg vuz375))",fontsize=16,color="magenta"];8361 -> 8484[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8361 -> 8485[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8362 -> 8492[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8362[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primPlusInt (Pos vuz381) (Pos (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz380) (Pos (primMulNat vuz3180 vuz3190))) (Neg vuz379))",fontsize=16,color="magenta"];8362 -> 8493[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8362 -> 8494[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8363 -> 8501[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8363[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primPlusInt (Pos vuz381) (Neg (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz380) (Neg (primMulNat vuz3180 vuz3190))) (Neg vuz379))",fontsize=16,color="magenta"];8363 -> 8502[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8363 -> 8503[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8364 -> 8501[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8364[label="primQuotInt (Neg vuz382) (gcd2 (primEqInt (primPlusInt (Pos vuz385) (Neg (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz384) (Neg (primMulNat vuz3180 vuz3190))) (Neg vuz383))",fontsize=16,color="magenta"];8364 -> 8504[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8364 -> 8505[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8364 -> 8506[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8364 -> 8507[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8364 -> 8508[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8364 -> 8509[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8365 -> 8492[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8365[label="primQuotInt (Neg vuz382) (gcd2 (primEqInt (primPlusInt (Pos vuz385) (Pos (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz384) (Pos (primMulNat vuz3180 vuz3190))) (Neg vuz383))",fontsize=16,color="magenta"];8365 -> 8495[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8365 -> 8496[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8365 -> 8497[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8365 -> 8498[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8365 -> 8499[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8365 -> 8500[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8366 -> 8483[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8366[label="primQuotInt (Neg vuz386) (gcd2 (primEqInt (primPlusInt (Neg vuz389) (Neg (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz388) (Neg (primMulNat vuz3180 vuz3190))) (Neg vuz387))",fontsize=16,color="magenta"];8366 -> 8486[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8366 -> 8487[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8366 -> 8488[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8366 -> 8489[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8366 -> 8490[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8366 -> 8491[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8367 -> 8474[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8367[label="primQuotInt (Neg vuz386) (gcd2 (primEqInt (primPlusInt (Neg vuz389) (Pos (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz388) (Pos (primMulNat vuz3180 vuz3190))) (Neg vuz387))",fontsize=16,color="magenta"];8367 -> 8477[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8367 -> 8478[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8367 -> 8479[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8367 -> 8480[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8367 -> 8481[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8367 -> 8482[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8368 -> 8465[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8368[label="primQuotInt (Pos vuz390) (gcd2 (primEqInt (primPlusInt (Neg vuz393) (Neg (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz392) (Neg (primMulNat vuz3180 vuz3190))) (Pos vuz391))",fontsize=16,color="magenta"];8368 -> 8468[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8368 -> 8469[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8368 -> 8470[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8368 -> 8471[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8368 -> 8472[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8368 -> 8473[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8369 -> 8456[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8369[label="primQuotInt (Pos vuz390) (gcd2 (primEqInt (primPlusInt (Neg vuz393) (Pos (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz392) (Pos (primMulNat vuz3180 vuz3190))) (Pos vuz391))",fontsize=16,color="magenta"];8369 -> 8459[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8369 -> 8460[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8369 -> 8461[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8369 -> 8462[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8369 -> 8463[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8369 -> 8464[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8370 -> 8447[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8370[label="primQuotInt (Pos vuz394) (gcd2 (primEqInt (primPlusInt (Pos vuz397) (Neg (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz396) (Neg (primMulNat vuz3180 vuz3190))) (Pos vuz395))",fontsize=16,color="magenta"];8370 -> 8450[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8370 -> 8451[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8370 -> 8452[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8370 -> 8453[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8370 -> 8454[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8370 -> 8455[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8371 -> 8438[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8371[label="primQuotInt (Pos vuz394) (gcd2 (primEqInt (primPlusInt (Pos vuz397) (Pos (primMulNat vuz3180 vuz3190))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz396) (Pos (primMulNat vuz3180 vuz3190))) (Pos vuz395))",fontsize=16,color="magenta"];8371 -> 8441[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8371 -> 8442[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8371 -> 8443[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8371 -> 8444[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8371 -> 8445[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8371 -> 8446[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8373[label="primQuotInt (Pos vuz398) (gcd0 (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="triangle"];8373 -> 8510[label="",style="solid", color="black", weight=3]; 67.83/34.96 8374 -> 8511[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8374[label="primQuotInt (Pos vuz398) (gcd1 (Pos vuz3190 * Pos vuz3170 == fromInt (Pos Zero)) (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];8374 -> 8512[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8375 -> 7677[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8375[label="primQuotInt (primMinusNat vuz4010 vuz4000) (reduce2D (primMinusNat vuz4010 vuz4000) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];8375 -> 8513[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8375 -> 8514[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8375 -> 8515[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8375 -> 8516[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8376[label="primQuotInt (Pos (Succ vuz4010)) (reduce2D (Pos (Succ vuz4010)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8376 -> 8517[label="",style="solid", color="black", weight=3]; 67.83/34.96 8377[label="primQuotInt (Neg (Succ vuz4000)) (reduce2D (Neg (Succ vuz4000)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8377 -> 8518[label="",style="solid", color="black", weight=3]; 67.83/34.96 8378[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8378 -> 8519[label="",style="solid", color="black", weight=3]; 67.83/34.96 8379[label="primQuotInt (Neg (Succ vuz4060)) (gcd (Neg (Succ vuz4060)) (Neg vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];8379 -> 8520[label="",style="solid", color="black", weight=3]; 67.83/34.96 8380[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Neg vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];8380 -> 8521[label="",style="solid", color="black", weight=3]; 67.83/34.96 8381 -> 7691[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8381[label="primQuotInt (primMinusNat vuz4090 vuz4080) (reduce2D (primMinusNat vuz4090 vuz4080) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];8381 -> 8522[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8381 -> 8523[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8381 -> 8524[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8381 -> 8525[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8382[label="primQuotInt (Pos (Succ vuz4090)) (reduce2D (Pos (Succ vuz4090)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8382 -> 8526[label="",style="solid", color="black", weight=3]; 67.83/34.96 8383[label="primQuotInt (Neg (Succ vuz4080)) (reduce2D (Neg (Succ vuz4080)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8383 -> 8527[label="",style="solid", color="black", weight=3]; 67.83/34.96 8384[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8384 -> 8528[label="",style="solid", color="black", weight=3]; 67.83/34.96 8385[label="primQuotInt (Neg (Succ vuz4140)) (gcd (Neg (Succ vuz4140)) (Pos vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];8385 -> 8529[label="",style="solid", color="black", weight=3]; 67.83/34.96 8386[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Pos vuz3190 * Pos Zero))",fontsize=16,color="black",shape="box"];8386 -> 8530[label="",style="solid", color="black", weight=3]; 67.83/34.96 8387[label="primQuotInt (Pos vuz416) (gcd0 (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="triangle"];8387 -> 8531[label="",style="solid", color="black", weight=3]; 67.83/34.96 8388 -> 8532[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8388[label="primQuotInt (Pos vuz416) (gcd1 (Neg vuz3190 * Pos vuz3170 == fromInt (Pos Zero)) (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];8388 -> 8533[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8389 -> 7723[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8389[label="primQuotInt (primMinusNat vuz4190 vuz4180) (reduce2D (primMinusNat vuz4190 vuz4180) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];8389 -> 8534[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8389 -> 8535[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8389 -> 8536[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8389 -> 8537[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8390[label="primQuotInt (Pos (Succ vuz4190)) (reduce2D (Pos (Succ vuz4190)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8390 -> 8538[label="",style="solid", color="black", weight=3]; 67.83/34.96 8391[label="primQuotInt (Neg (Succ vuz4180)) (reduce2D (Neg (Succ vuz4180)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8391 -> 8539[label="",style="solid", color="black", weight=3]; 67.83/34.96 8392[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8392 -> 8540[label="",style="solid", color="black", weight=3]; 67.83/34.96 8393[label="primQuotInt (Neg (Succ vuz4240)) (gcd (Neg (Succ vuz4240)) (Pos Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8393 -> 8541[label="",style="solid", color="black", weight=3]; 67.83/34.96 8394[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Pos Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8394 -> 8542[label="",style="solid", color="black", weight=3]; 67.83/34.96 8396[label="primQuotInt (Neg vuz426) (gcd0 (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="triangle"];8396 -> 8543[label="",style="solid", color="black", weight=3]; 67.83/34.96 8397 -> 8544[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8397[label="primQuotInt (Neg vuz426) (gcd1 (Neg vuz3190 * Neg vuz3170 == fromInt (Pos Zero)) (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];8397 -> 8545[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8398[label="primQuotInt (Neg vuz428) (gcd0 (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="triangle"];8398 -> 8546[label="",style="solid", color="black", weight=3]; 67.83/34.96 8399 -> 8547[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8399[label="primQuotInt (Neg vuz428) (gcd1 (Pos vuz3190 * Neg vuz3170 == fromInt (Pos Zero)) (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];8399 -> 8548[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8400 -> 7773[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8400[label="primQuotInt (primMinusNat vuz4310 vuz4300) (reduce2D (primMinusNat vuz4310 vuz4300) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];8400 -> 8549[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8400 -> 8550[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8400 -> 8551[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8400 -> 8552[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8401[label="primQuotInt (Pos (Succ vuz4310)) (reduce2D (Pos (Succ vuz4310)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8401 -> 8553[label="",style="solid", color="black", weight=3]; 67.83/34.96 8402[label="primQuotInt (Neg (Succ vuz4300)) (reduce2D (Neg (Succ vuz4300)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8402 -> 8554[label="",style="solid", color="black", weight=3]; 67.83/34.96 8403[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8403 -> 8555[label="",style="solid", color="black", weight=3]; 67.83/34.96 8404[label="primQuotInt (Neg (Succ vuz4360)) (gcd (Neg (Succ vuz4360)) (Neg Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8404 -> 8556[label="",style="solid", color="black", weight=3]; 67.83/34.96 8405[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Neg Zero * Neg vuz3170))",fontsize=16,color="black",shape="box"];8405 -> 8557[label="",style="solid", color="black", weight=3]; 67.83/34.96 8406 -> 7787[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8406[label="primQuotInt (primMinusNat vuz4390 vuz4380) (reduce2D (primMinusNat vuz4390 vuz4380) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];8406 -> 8558[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8406 -> 8559[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8406 -> 8560[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8406 -> 8561[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8407[label="primQuotInt (Pos (Succ vuz4390)) (reduce2D (Pos (Succ vuz4390)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8407 -> 8562[label="",style="solid", color="black", weight=3]; 67.83/34.96 8408[label="primQuotInt (Neg (Succ vuz4380)) (reduce2D (Neg (Succ vuz4380)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8408 -> 8563[label="",style="solid", color="black", weight=3]; 67.83/34.96 8409[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8409 -> 8564[label="",style="solid", color="black", weight=3]; 67.83/34.96 8410[label="primQuotInt (Neg (Succ vuz4440)) (gcd (Neg (Succ vuz4440)) (Pos Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8410 -> 8565[label="",style="solid", color="black", weight=3]; 67.83/34.96 8411[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Pos Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8411 -> 8566[label="",style="solid", color="black", weight=3]; 67.83/34.96 8412[label="primQuotInt (Neg vuz446) (gcd0 (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="triangle"];8412 -> 8567[label="",style="solid", color="black", weight=3]; 67.83/34.96 8413 -> 8568[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8413[label="primQuotInt (Neg vuz446) (gcd1 (Neg vuz3190 * Pos vuz3170 == fromInt (Pos Zero)) (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];8413 -> 8569[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8414[label="primQuotInt (Neg vuz348) (gcd0 (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="triangle"];8414 -> 8570[label="",style="solid", color="black", weight=3]; 67.83/34.96 8415 -> 8571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8415[label="primQuotInt (Neg vuz348) (gcd1 (Pos vuz3190 * Pos vuz3170 == fromInt (Pos Zero)) (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];8415 -> 8572[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8416 -> 7824[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8416[label="primQuotInt (primMinusNat vuz4490 vuz4480) (reduce2D (primMinusNat vuz4490 vuz4480) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];8416 -> 8573[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8416 -> 8574[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8416 -> 8575[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8416 -> 8576[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8417[label="primQuotInt (Pos (Succ vuz4490)) (reduce2D (Pos (Succ vuz4490)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8417 -> 8577[label="",style="solid", color="black", weight=3]; 67.83/34.96 8418[label="primQuotInt (Neg (Succ vuz4480)) (reduce2D (Neg (Succ vuz4480)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8418 -> 8578[label="",style="solid", color="black", weight=3]; 67.83/34.96 8419[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8419 -> 8579[label="",style="solid", color="black", weight=3]; 67.83/34.96 8420[label="primQuotInt (Neg (Succ vuz4540)) (gcd (Neg (Succ vuz4540)) (Neg Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8420 -> 8580[label="",style="solid", color="black", weight=3]; 67.83/34.96 8421[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Neg Zero * Pos vuz3170))",fontsize=16,color="black",shape="box"];8421 -> 8581[label="",style="solid", color="black", weight=3]; 67.83/34.96 8422[label="primQuotInt (Pos vuz354) (gcd0 (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="triangle"];8422 -> 8582[label="",style="solid", color="black", weight=3]; 67.83/34.96 8423 -> 8583[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8423[label="primQuotInt (Pos vuz354) (gcd1 (Pos vuz3190 * Neg vuz3170 == fromInt (Pos Zero)) (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];8423 -> 8584[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8424 -> 7843[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8424[label="primQuotInt (primMinusNat vuz4570 vuz4560) (reduce2D (primMinusNat vuz4570 vuz4560) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];8424 -> 8585[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8424 -> 8586[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8424 -> 8587[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8424 -> 8588[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8425[label="primQuotInt (Pos (Succ vuz4570)) (reduce2D (Pos (Succ vuz4570)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8425 -> 8589[label="",style="solid", color="black", weight=3]; 67.83/34.96 8426[label="primQuotInt (Neg (Succ vuz4560)) (reduce2D (Neg (Succ vuz4560)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8426 -> 8590[label="",style="solid", color="black", weight=3]; 67.83/34.96 8427[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8427 -> 8591[label="",style="solid", color="black", weight=3]; 67.83/34.96 8428[label="primQuotInt (Neg (Succ vuz4620)) (gcd (Neg (Succ vuz4620)) (Neg vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8428 -> 8592[label="",style="solid", color="black", weight=3]; 67.83/34.96 8429[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Neg vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8429 -> 8593[label="",style="solid", color="black", weight=3]; 67.83/34.96 8430 -> 7857[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8430[label="primQuotInt (primMinusNat vuz4650 vuz4640) (reduce2D (primMinusNat vuz4650 vuz4640) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];8430 -> 8594[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8430 -> 8595[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8430 -> 8596[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8430 -> 8597[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8431[label="primQuotInt (Pos (Succ vuz4650)) (reduce2D (Pos (Succ vuz4650)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8431 -> 8598[label="",style="solid", color="black", weight=3]; 67.83/34.96 8432[label="primQuotInt (Neg (Succ vuz4640)) (reduce2D (Neg (Succ vuz4640)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8432 -> 8599[label="",style="solid", color="black", weight=3]; 67.83/34.96 8433[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8433 -> 8600[label="",style="solid", color="black", weight=3]; 67.83/34.96 8434[label="primQuotInt (Neg (Succ vuz4700)) (gcd (Neg (Succ vuz4700)) (Pos vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8434 -> 8601[label="",style="solid", color="black", weight=3]; 67.83/34.96 8435[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Pos vuz3190 * Neg Zero))",fontsize=16,color="black",shape="box"];8435 -> 8602[label="",style="solid", color="black", weight=3]; 67.83/34.96 8436[label="primQuotInt (Pos vuz360) (gcd0 (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="triangle"];8436 -> 8603[label="",style="solid", color="black", weight=3]; 67.83/34.96 8437 -> 8604[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8437[label="primQuotInt (Pos vuz360) (gcd1 (Neg vuz3190 * Neg vuz3170 == fromInt (Pos Zero)) (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];8437 -> 8605[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8439 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8439[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8439 -> 8606[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8439 -> 8607[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8440 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8440[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8440 -> 8608[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8440 -> 8609[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8438[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primPlusInt (Pos vuz369) (Pos vuz481)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz368) (Pos vuz480)) (Pos vuz367))",fontsize=16,color="black",shape="triangle"];8438 -> 8610[label="",style="solid", color="black", weight=3]; 67.83/34.96 8448 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8448[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8448 -> 8611[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8448 -> 8612[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8449 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8449[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8449 -> 8613[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8449 -> 8614[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8447[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primPlusInt (Pos vuz369) (Neg vuz483)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz368) (Neg vuz482)) (Pos vuz367))",fontsize=16,color="black",shape="triangle"];8447 -> 8615[label="",style="solid", color="black", weight=3]; 67.83/34.96 8457 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8457[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8457 -> 8616[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8457 -> 8617[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8458 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8458[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8458 -> 8618[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8458 -> 8619[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8456[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primPlusInt (Neg vuz373) (Pos vuz485)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz372) (Pos vuz484)) (Pos vuz371))",fontsize=16,color="black",shape="triangle"];8456 -> 8620[label="",style="solid", color="black", weight=3]; 67.83/34.96 8466 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8466[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8466 -> 8621[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8466 -> 8622[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8467 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8467[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8467 -> 8623[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8467 -> 8624[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8465[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primPlusInt (Neg vuz373) (Neg vuz487)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz372) (Neg vuz486)) (Pos vuz371))",fontsize=16,color="black",shape="triangle"];8465 -> 8625[label="",style="solid", color="black", weight=3]; 67.83/34.96 8475 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8475[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8475 -> 8626[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8475 -> 8627[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8476 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8476[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8476 -> 8628[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8476 -> 8629[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8474[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primPlusInt (Neg vuz377) (Pos vuz489)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz376) (Pos vuz488)) (Neg vuz375))",fontsize=16,color="black",shape="triangle"];8474 -> 8630[label="",style="solid", color="black", weight=3]; 67.83/34.96 8484 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8484[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8484 -> 8631[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8484 -> 8632[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8485 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8485[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8485 -> 8633[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8485 -> 8634[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8483[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primPlusInt (Neg vuz377) (Neg vuz491)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz376) (Neg vuz490)) (Neg vuz375))",fontsize=16,color="black",shape="triangle"];8483 -> 8635[label="",style="solid", color="black", weight=3]; 67.83/34.96 8493 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8493[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8493 -> 8636[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8493 -> 8637[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8494 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8494[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8494 -> 8638[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8494 -> 8639[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8492[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primPlusInt (Pos vuz381) (Pos vuz493)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz380) (Pos vuz492)) (Neg vuz379))",fontsize=16,color="black",shape="triangle"];8492 -> 8640[label="",style="solid", color="black", weight=3]; 67.83/34.96 8502 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8502[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8502 -> 8641[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8502 -> 8642[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8503 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8503[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8503 -> 8643[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8503 -> 8644[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8501[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primPlusInt (Pos vuz381) (Neg vuz495)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz380) (Neg vuz494)) (Neg vuz379))",fontsize=16,color="black",shape="triangle"];8501 -> 8645[label="",style="solid", color="black", weight=3]; 67.83/34.96 8504[label="vuz383",fontsize=16,color="green",shape="box"];8505[label="vuz384",fontsize=16,color="green",shape="box"];8506 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8506[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8506 -> 8646[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8506 -> 8647[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8507[label="vuz385",fontsize=16,color="green",shape="box"];8508 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8508[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8508 -> 8648[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8508 -> 8649[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8509[label="vuz382",fontsize=16,color="green",shape="box"];8495[label="vuz383",fontsize=16,color="green",shape="box"];8496[label="vuz384",fontsize=16,color="green",shape="box"];8497[label="vuz385",fontsize=16,color="green",shape="box"];8498 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8498[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8498 -> 8650[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8498 -> 8651[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8499[label="vuz382",fontsize=16,color="green",shape="box"];8500 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8500[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8500 -> 8652[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8500 -> 8653[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8486 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8486[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8486 -> 8654[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8486 -> 8655[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8487[label="vuz387",fontsize=16,color="green",shape="box"];8488[label="vuz388",fontsize=16,color="green",shape="box"];8489[label="vuz386",fontsize=16,color="green",shape="box"];8490[label="vuz389",fontsize=16,color="green",shape="box"];8491 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8491[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8491 -> 8656[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8491 -> 8657[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8477 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8477[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8477 -> 8658[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8477 -> 8659[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8478[label="vuz387",fontsize=16,color="green",shape="box"];8479[label="vuz388",fontsize=16,color="green",shape="box"];8480 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8480[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8480 -> 8660[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8480 -> 8661[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8481[label="vuz386",fontsize=16,color="green",shape="box"];8482[label="vuz389",fontsize=16,color="green",shape="box"];8468[label="vuz392",fontsize=16,color="green",shape="box"];8469 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8469[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8469 -> 8662[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8469 -> 8663[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8470[label="vuz393",fontsize=16,color="green",shape="box"];8471[label="vuz390",fontsize=16,color="green",shape="box"];8472[label="vuz391",fontsize=16,color="green",shape="box"];8473 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8473[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8473 -> 8664[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8473 -> 8665[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8459[label="vuz392",fontsize=16,color="green",shape="box"];8460 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8460[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8460 -> 8666[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8460 -> 8667[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8461[label="vuz393",fontsize=16,color="green",shape="box"];8462[label="vuz390",fontsize=16,color="green",shape="box"];8463[label="vuz391",fontsize=16,color="green",shape="box"];8464 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8464[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8464 -> 8668[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8464 -> 8669[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8450[label="vuz395",fontsize=16,color="green",shape="box"];8451[label="vuz397",fontsize=16,color="green",shape="box"];8452[label="vuz396",fontsize=16,color="green",shape="box"];8453 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8453[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8453 -> 8670[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8453 -> 8671[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8454 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8454[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8454 -> 8672[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8454 -> 8673[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8455[label="vuz394",fontsize=16,color="green",shape="box"];8441 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8441[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8441 -> 8674[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8441 -> 8675[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8442[label="vuz395",fontsize=16,color="green",shape="box"];8443[label="vuz397",fontsize=16,color="green",shape="box"];8444 -> 7480[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8444[label="primMulNat vuz3180 vuz3190",fontsize=16,color="magenta"];8444 -> 8676[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8444 -> 8677[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8445[label="vuz396",fontsize=16,color="green",shape="box"];8446[label="vuz394",fontsize=16,color="green",shape="box"];8510[label="primQuotInt (Pos vuz398) (gcd0Gcd' (abs (Pos vuz399)) (abs (Pos vuz3190 * Pos vuz3170)))",fontsize=16,color="black",shape="box"];8510 -> 8678[label="",style="solid", color="black", weight=3]; 67.83/34.96 8512 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8512[label="Pos vuz3190 * Pos vuz3170 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8512 -> 9997[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8511[label="primQuotInt (Pos vuz398) (gcd1 vuz496 (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11047[label="vuz496/False",fontsize=10,color="white",style="solid",shape="box"];8511 -> 11047[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11047 -> 8681[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11048[label="vuz496/True",fontsize=10,color="white",style="solid",shape="box"];8511 -> 11048[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11048 -> 8682[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8513[label="vuz4000",fontsize=16,color="green",shape="box"];8514[label="vuz4010",fontsize=16,color="green",shape="box"];8515[label="vuz4010",fontsize=16,color="green",shape="box"];8516[label="vuz4000",fontsize=16,color="green",shape="box"];8517[label="primQuotInt (Pos (Succ vuz4010)) (gcd (Pos (Succ vuz4010)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8517 -> 8683[label="",style="solid", color="black", weight=3]; 67.83/34.96 8518[label="primQuotInt (Neg (Succ vuz4000)) (gcd (Neg (Succ vuz4000)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8518 -> 8684[label="",style="solid", color="black", weight=3]; 67.83/34.96 8519[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8519 -> 8685[label="",style="solid", color="black", weight=3]; 67.83/34.96 8520 -> 7809[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8520[label="primQuotInt (Neg (Succ vuz4060)) (gcd3 (Neg (Succ vuz4060)) (Neg vuz3190 * Pos Zero))",fontsize=16,color="magenta"];8520 -> 8686[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8520 -> 8687[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8520 -> 8688[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8521 -> 7713[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8521[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Neg vuz3190 * Pos Zero))",fontsize=16,color="magenta"];8521 -> 8689[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8521 -> 8690[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8521 -> 8691[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8522[label="vuz4090",fontsize=16,color="green",shape="box"];8523[label="vuz4080",fontsize=16,color="green",shape="box"];8524[label="vuz4090",fontsize=16,color="green",shape="box"];8525[label="vuz4080",fontsize=16,color="green",shape="box"];8526[label="primQuotInt (Pos (Succ vuz4090)) (gcd (Pos (Succ vuz4090)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8526 -> 8692[label="",style="solid", color="black", weight=3]; 67.83/34.96 8527[label="primQuotInt (Neg (Succ vuz4080)) (gcd (Neg (Succ vuz4080)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8527 -> 8693[label="",style="solid", color="black", weight=3]; 67.83/34.96 8528[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8528 -> 8694[label="",style="solid", color="black", weight=3]; 67.83/34.96 8529 -> 7587[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8529[label="primQuotInt (Neg (Succ vuz4140)) (gcd3 (Neg (Succ vuz4140)) (Pos vuz3190 * Pos Zero))",fontsize=16,color="magenta"];8529 -> 8695[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8529 -> 8696[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8529 -> 8697[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8530 -> 7667[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8530[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Pos vuz3190 * Pos Zero))",fontsize=16,color="magenta"];8530 -> 8698[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8530 -> 8699[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8530 -> 8700[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8531[label="primQuotInt (Pos vuz416) (gcd0Gcd' (abs (Pos vuz417)) (abs (Neg vuz3190 * Pos vuz3170)))",fontsize=16,color="black",shape="box"];8531 -> 8701[label="",style="solid", color="black", weight=3]; 67.83/34.96 8533 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8533[label="Neg vuz3190 * Pos vuz3170 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8533 -> 9998[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8532[label="primQuotInt (Pos vuz416) (gcd1 vuz497 (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11049[label="vuz497/False",fontsize=10,color="white",style="solid",shape="box"];8532 -> 11049[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11049 -> 8704[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11050[label="vuz497/True",fontsize=10,color="white",style="solid",shape="box"];8532 -> 11050[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11050 -> 8705[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8534[label="vuz4180",fontsize=16,color="green",shape="box"];8535[label="vuz4190",fontsize=16,color="green",shape="box"];8536[label="vuz4180",fontsize=16,color="green",shape="box"];8537[label="vuz4190",fontsize=16,color="green",shape="box"];8538[label="primQuotInt (Pos (Succ vuz4190)) (gcd (Pos (Succ vuz4190)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8538 -> 8706[label="",style="solid", color="black", weight=3]; 67.83/34.96 8539[label="primQuotInt (Neg (Succ vuz4180)) (gcd (Neg (Succ vuz4180)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8539 -> 8707[label="",style="solid", color="black", weight=3]; 67.83/34.96 8540[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8540 -> 8708[label="",style="solid", color="black", weight=3]; 67.83/34.96 8541 -> 7763[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8541[label="primQuotInt (Neg (Succ vuz4240)) (gcd3 (Neg (Succ vuz4240)) (Pos Zero * Neg vuz3170))",fontsize=16,color="magenta"];8541 -> 8709[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8541 -> 8710[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8541 -> 8711[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8542 -> 7598[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8542[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Pos Zero * Neg vuz3170))",fontsize=16,color="magenta"];8542 -> 8712[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8542 -> 8713[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8542 -> 8714[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8543[label="primQuotInt (Neg vuz426) (gcd0Gcd' (abs (Neg vuz427)) (abs (Neg vuz3190 * Neg vuz3170)))",fontsize=16,color="black",shape="box"];8543 -> 8715[label="",style="solid", color="black", weight=3]; 67.83/34.96 8545 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8545[label="Neg vuz3190 * Neg vuz3170 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8545 -> 9999[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8544[label="primQuotInt (Neg vuz426) (gcd1 vuz498 (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11051[label="vuz498/False",fontsize=10,color="white",style="solid",shape="box"];8544 -> 11051[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11051 -> 8718[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11052[label="vuz498/True",fontsize=10,color="white",style="solid",shape="box"];8544 -> 11052[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11052 -> 8719[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8546[label="primQuotInt (Neg vuz428) (gcd0Gcd' (abs (Neg vuz429)) (abs (Pos vuz3190 * Neg vuz3170)))",fontsize=16,color="black",shape="box"];8546 -> 8720[label="",style="solid", color="black", weight=3]; 67.83/34.96 8548 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8548[label="Pos vuz3190 * Neg vuz3170 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8548 -> 10000[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8547[label="primQuotInt (Neg vuz428) (gcd1 vuz499 (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11053[label="vuz499/False",fontsize=10,color="white",style="solid",shape="box"];8547 -> 11053[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11053 -> 8723[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11054[label="vuz499/True",fontsize=10,color="white",style="solid",shape="box"];8547 -> 11054[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11054 -> 8724[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8549[label="vuz4310",fontsize=16,color="green",shape="box"];8550[label="vuz4300",fontsize=16,color="green",shape="box"];8551[label="vuz4300",fontsize=16,color="green",shape="box"];8552[label="vuz4310",fontsize=16,color="green",shape="box"];8553[label="primQuotInt (Pos (Succ vuz4310)) (gcd (Pos (Succ vuz4310)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8553 -> 8725[label="",style="solid", color="black", weight=3]; 67.83/34.96 8554[label="primQuotInt (Neg (Succ vuz4300)) (gcd (Neg (Succ vuz4300)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8554 -> 8726[label="",style="solid", color="black", weight=3]; 67.83/34.96 8555[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="black",shape="box"];8555 -> 8727[label="",style="solid", color="black", weight=3]; 67.83/34.96 8556 -> 7745[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8556[label="primQuotInt (Neg (Succ vuz4360)) (gcd3 (Neg (Succ vuz4360)) (Neg Zero * Neg vuz3170))",fontsize=16,color="magenta"];8556 -> 8728[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8556 -> 8729[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8556 -> 8730[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8557 -> 7613[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8557[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Neg Zero * Neg vuz3170))",fontsize=16,color="magenta"];8557 -> 8731[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8557 -> 8732[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8557 -> 8733[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8558[label="vuz4390",fontsize=16,color="green",shape="box"];8559[label="vuz4380",fontsize=16,color="green",shape="box"];8560[label="vuz4380",fontsize=16,color="green",shape="box"];8561[label="vuz4390",fontsize=16,color="green",shape="box"];8562[label="primQuotInt (Pos (Succ vuz4390)) (gcd (Pos (Succ vuz4390)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8562 -> 8734[label="",style="solid", color="black", weight=3]; 67.83/34.96 8563[label="primQuotInt (Neg (Succ vuz4380)) (gcd (Neg (Succ vuz4380)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8563 -> 8735[label="",style="solid", color="black", weight=3]; 67.83/34.96 8564[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8564 -> 8736[label="",style="solid", color="black", weight=3]; 67.83/34.96 8565 -> 7587[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8565[label="primQuotInt (Neg (Succ vuz4440)) (gcd3 (Neg (Succ vuz4440)) (Pos Zero * Pos vuz3170))",fontsize=16,color="magenta"];8565 -> 8737[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8565 -> 8738[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8565 -> 8739[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8566 -> 7667[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8566[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Pos Zero * Pos vuz3170))",fontsize=16,color="magenta"];8566 -> 8740[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8566 -> 8741[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8566 -> 8742[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8567[label="primQuotInt (Neg vuz446) (gcd0Gcd' (abs (Neg vuz447)) (abs (Neg vuz3190 * Pos vuz3170)))",fontsize=16,color="black",shape="box"];8567 -> 8743[label="",style="solid", color="black", weight=3]; 67.83/34.96 8569 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8569[label="Neg vuz3190 * Pos vuz3170 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8569 -> 10001[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8568[label="primQuotInt (Neg vuz446) (gcd1 vuz500 (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11055[label="vuz500/False",fontsize=10,color="white",style="solid",shape="box"];8568 -> 11055[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11055 -> 8746[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11056[label="vuz500/True",fontsize=10,color="white",style="solid",shape="box"];8568 -> 11056[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11056 -> 8747[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8570[label="primQuotInt (Neg vuz348) (gcd0Gcd' (abs (Neg vuz349)) (abs (Pos vuz3190 * Pos vuz3170)))",fontsize=16,color="black",shape="box"];8570 -> 8748[label="",style="solid", color="black", weight=3]; 67.83/34.96 8572 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8572[label="Pos vuz3190 * Pos vuz3170 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8572 -> 10002[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8571[label="primQuotInt (Neg vuz348) (gcd1 vuz501 (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11057[label="vuz501/False",fontsize=10,color="white",style="solid",shape="box"];8571 -> 11057[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11057 -> 8751[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11058[label="vuz501/True",fontsize=10,color="white",style="solid",shape="box"];8571 -> 11058[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11058 -> 8752[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8573[label="vuz4490",fontsize=16,color="green",shape="box"];8574[label="vuz4490",fontsize=16,color="green",shape="box"];8575[label="vuz4480",fontsize=16,color="green",shape="box"];8576[label="vuz4480",fontsize=16,color="green",shape="box"];8577[label="primQuotInt (Pos (Succ vuz4490)) (gcd (Pos (Succ vuz4490)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8577 -> 8753[label="",style="solid", color="black", weight=3]; 67.83/34.96 8578[label="primQuotInt (Neg (Succ vuz4480)) (gcd (Neg (Succ vuz4480)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8578 -> 8754[label="",style="solid", color="black", weight=3]; 67.83/34.96 8579[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="black",shape="box"];8579 -> 8755[label="",style="solid", color="black", weight=3]; 67.83/34.96 8580 -> 7809[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8580[label="primQuotInt (Neg (Succ vuz4540)) (gcd3 (Neg (Succ vuz4540)) (Neg Zero * Pos vuz3170))",fontsize=16,color="magenta"];8580 -> 8756[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8580 -> 8757[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8580 -> 8758[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8581 -> 7713[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8581[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Neg Zero * Pos vuz3170))",fontsize=16,color="magenta"];8581 -> 8759[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8581 -> 8760[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8581 -> 8761[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8582[label="primQuotInt (Pos vuz354) (gcd0Gcd' (abs (Pos vuz355)) (abs (Pos vuz3190 * Neg vuz3170)))",fontsize=16,color="black",shape="box"];8582 -> 8762[label="",style="solid", color="black", weight=3]; 67.83/34.96 8584 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8584[label="Pos vuz3190 * Neg vuz3170 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8584 -> 10003[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8583[label="primQuotInt (Pos vuz354) (gcd1 vuz502 (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11059[label="vuz502/False",fontsize=10,color="white",style="solid",shape="box"];8583 -> 11059[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11059 -> 8765[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11060[label="vuz502/True",fontsize=10,color="white",style="solid",shape="box"];8583 -> 11060[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11060 -> 8766[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8585[label="vuz4570",fontsize=16,color="green",shape="box"];8586[label="vuz4560",fontsize=16,color="green",shape="box"];8587[label="vuz4560",fontsize=16,color="green",shape="box"];8588[label="vuz4570",fontsize=16,color="green",shape="box"];8589[label="primQuotInt (Pos (Succ vuz4570)) (gcd (Pos (Succ vuz4570)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8589 -> 8767[label="",style="solid", color="black", weight=3]; 67.83/34.96 8590[label="primQuotInt (Neg (Succ vuz4560)) (gcd (Neg (Succ vuz4560)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8590 -> 8768[label="",style="solid", color="black", weight=3]; 67.83/34.96 8591[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8591 -> 8769[label="",style="solid", color="black", weight=3]; 67.83/34.96 8592 -> 7745[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8592[label="primQuotInt (Neg (Succ vuz4620)) (gcd3 (Neg (Succ vuz4620)) (Neg vuz3190 * Neg Zero))",fontsize=16,color="magenta"];8592 -> 8770[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8592 -> 8771[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8592 -> 8772[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8593 -> 7613[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8593[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Neg vuz3190 * Neg Zero))",fontsize=16,color="magenta"];8593 -> 8773[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8593 -> 8774[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8593 -> 8775[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8594[label="vuz4650",fontsize=16,color="green",shape="box"];8595[label="vuz4640",fontsize=16,color="green",shape="box"];8596[label="vuz4640",fontsize=16,color="green",shape="box"];8597[label="vuz4650",fontsize=16,color="green",shape="box"];8598[label="primQuotInt (Pos (Succ vuz4650)) (gcd (Pos (Succ vuz4650)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8598 -> 8776[label="",style="solid", color="black", weight=3]; 67.83/34.96 8599[label="primQuotInt (Neg (Succ vuz4640)) (gcd (Neg (Succ vuz4640)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8599 -> 8777[label="",style="solid", color="black", weight=3]; 67.83/34.96 8600[label="primQuotInt (Pos Zero) (gcd (Pos Zero) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="black",shape="box"];8600 -> 8778[label="",style="solid", color="black", weight=3]; 67.83/34.96 8601 -> 7763[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8601[label="primQuotInt (Neg (Succ vuz4700)) (gcd3 (Neg (Succ vuz4700)) (Pos vuz3190 * Neg Zero))",fontsize=16,color="magenta"];8601 -> 8779[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8601 -> 8780[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8601 -> 8781[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8602 -> 7598[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8602[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Pos vuz3190 * Neg Zero))",fontsize=16,color="magenta"];8602 -> 8782[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8602 -> 8783[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8602 -> 8784[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8603[label="primQuotInt (Pos vuz360) (gcd0Gcd' (abs (Pos vuz361)) (abs (Neg vuz3190 * Neg vuz3170)))",fontsize=16,color="black",shape="box"];8603 -> 8785[label="",style="solid", color="black", weight=3]; 67.83/34.96 8605 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8605[label="Neg vuz3190 * Neg vuz3170 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8605 -> 10004[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8604[label="primQuotInt (Pos vuz360) (gcd1 vuz503 (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="burlywood",shape="triangle"];11061[label="vuz503/False",fontsize=10,color="white",style="solid",shape="box"];8604 -> 11061[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11061 -> 8788[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11062[label="vuz503/True",fontsize=10,color="white",style="solid",shape="box"];8604 -> 11062[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11062 -> 8789[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8606[label="vuz3180",fontsize=16,color="green",shape="box"];8607[label="vuz3190",fontsize=16,color="green",shape="box"];8608[label="vuz3180",fontsize=16,color="green",shape="box"];8609[label="vuz3190",fontsize=16,color="green",shape="box"];8610 -> 8790[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8610[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (Pos (primPlusNat vuz369 vuz481)) (fromInt (Pos Zero))) (Pos (primPlusNat vuz369 vuz481)) (Pos vuz367))",fontsize=16,color="magenta"];8610 -> 8791[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8610 -> 8792[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8611[label="vuz3180",fontsize=16,color="green",shape="box"];8612[label="vuz3190",fontsize=16,color="green",shape="box"];8613[label="vuz3180",fontsize=16,color="green",shape="box"];8614[label="vuz3190",fontsize=16,color="green",shape="box"];8615[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primMinusNat vuz369 vuz483) (fromInt (Pos Zero))) (primMinusNat vuz369 vuz483) (Pos vuz367))",fontsize=16,color="burlywood",shape="triangle"];11063[label="vuz369/Succ vuz3690",fontsize=10,color="white",style="solid",shape="box"];8615 -> 11063[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11063 -> 8793[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11064[label="vuz369/Zero",fontsize=10,color="white",style="solid",shape="box"];8615 -> 11064[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11064 -> 8794[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8616[label="vuz3180",fontsize=16,color="green",shape="box"];8617[label="vuz3190",fontsize=16,color="green",shape="box"];8618[label="vuz3180",fontsize=16,color="green",shape="box"];8619[label="vuz3190",fontsize=16,color="green",shape="box"];8620 -> 8615[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8620[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (primMinusNat vuz485 vuz373) (fromInt (Pos Zero))) (primMinusNat vuz485 vuz373) (Pos vuz371))",fontsize=16,color="magenta"];8620 -> 8795[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8620 -> 8796[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8620 -> 8797[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8620 -> 8798[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8621[label="vuz3180",fontsize=16,color="green",shape="box"];8622[label="vuz3190",fontsize=16,color="green",shape="box"];8623[label="vuz3180",fontsize=16,color="green",shape="box"];8624[label="vuz3190",fontsize=16,color="green",shape="box"];8625 -> 8799[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8625[label="primQuotInt (Pos vuz370) (gcd2 (primEqInt (Neg (primPlusNat vuz373 vuz487)) (fromInt (Pos Zero))) (Neg (primPlusNat vuz373 vuz487)) (Pos vuz371))",fontsize=16,color="magenta"];8625 -> 8800[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8625 -> 8801[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8626[label="vuz3180",fontsize=16,color="green",shape="box"];8627[label="vuz3190",fontsize=16,color="green",shape="box"];8628[label="vuz3180",fontsize=16,color="green",shape="box"];8629[label="vuz3190",fontsize=16,color="green",shape="box"];8630[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primMinusNat vuz489 vuz377) (fromInt (Pos Zero))) (primMinusNat vuz489 vuz377) (Neg vuz375))",fontsize=16,color="burlywood",shape="triangle"];11065[label="vuz489/Succ vuz4890",fontsize=10,color="white",style="solid",shape="box"];8630 -> 11065[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11065 -> 8802[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11066[label="vuz489/Zero",fontsize=10,color="white",style="solid",shape="box"];8630 -> 11066[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11066 -> 8803[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8631[label="vuz3180",fontsize=16,color="green",shape="box"];8632[label="vuz3190",fontsize=16,color="green",shape="box"];8633[label="vuz3180",fontsize=16,color="green",shape="box"];8634[label="vuz3190",fontsize=16,color="green",shape="box"];8635 -> 8804[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8635[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (Neg (primPlusNat vuz377 vuz491)) (fromInt (Pos Zero))) (Neg (primPlusNat vuz377 vuz491)) (Neg vuz375))",fontsize=16,color="magenta"];8635 -> 8805[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8635 -> 8806[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8636[label="vuz3180",fontsize=16,color="green",shape="box"];8637[label="vuz3190",fontsize=16,color="green",shape="box"];8638[label="vuz3180",fontsize=16,color="green",shape="box"];8639[label="vuz3190",fontsize=16,color="green",shape="box"];8640 -> 8807[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8640[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (Pos (primPlusNat vuz381 vuz493)) (fromInt (Pos Zero))) (Pos (primPlusNat vuz381 vuz493)) (Neg vuz379))",fontsize=16,color="magenta"];8640 -> 8808[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8640 -> 8809[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8641[label="vuz3180",fontsize=16,color="green",shape="box"];8642[label="vuz3190",fontsize=16,color="green",shape="box"];8643[label="vuz3180",fontsize=16,color="green",shape="box"];8644[label="vuz3190",fontsize=16,color="green",shape="box"];8645 -> 8630[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8645[label="primQuotInt (Neg vuz378) (gcd2 (primEqInt (primMinusNat vuz381 vuz495) (fromInt (Pos Zero))) (primMinusNat vuz381 vuz495) (Neg vuz379))",fontsize=16,color="magenta"];8645 -> 8810[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8645 -> 8811[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8645 -> 8812[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8645 -> 8813[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8646[label="vuz3180",fontsize=16,color="green",shape="box"];8647[label="vuz3190",fontsize=16,color="green",shape="box"];8648[label="vuz3180",fontsize=16,color="green",shape="box"];8649[label="vuz3190",fontsize=16,color="green",shape="box"];8650[label="vuz3180",fontsize=16,color="green",shape="box"];8651[label="vuz3190",fontsize=16,color="green",shape="box"];8652[label="vuz3180",fontsize=16,color="green",shape="box"];8653[label="vuz3190",fontsize=16,color="green",shape="box"];8654[label="vuz3180",fontsize=16,color="green",shape="box"];8655[label="vuz3190",fontsize=16,color="green",shape="box"];8656[label="vuz3180",fontsize=16,color="green",shape="box"];8657[label="vuz3190",fontsize=16,color="green",shape="box"];8658[label="vuz3180",fontsize=16,color="green",shape="box"];8659[label="vuz3190",fontsize=16,color="green",shape="box"];8660[label="vuz3180",fontsize=16,color="green",shape="box"];8661[label="vuz3190",fontsize=16,color="green",shape="box"];8662[label="vuz3180",fontsize=16,color="green",shape="box"];8663[label="vuz3190",fontsize=16,color="green",shape="box"];8664[label="vuz3180",fontsize=16,color="green",shape="box"];8665[label="vuz3190",fontsize=16,color="green",shape="box"];8666[label="vuz3180",fontsize=16,color="green",shape="box"];8667[label="vuz3190",fontsize=16,color="green",shape="box"];8668[label="vuz3180",fontsize=16,color="green",shape="box"];8669[label="vuz3190",fontsize=16,color="green",shape="box"];8670[label="vuz3180",fontsize=16,color="green",shape="box"];8671[label="vuz3190",fontsize=16,color="green",shape="box"];8672[label="vuz3180",fontsize=16,color="green",shape="box"];8673[label="vuz3190",fontsize=16,color="green",shape="box"];8674[label="vuz3180",fontsize=16,color="green",shape="box"];8675[label="vuz3190",fontsize=16,color="green",shape="box"];8676[label="vuz3180",fontsize=16,color="green",shape="box"];8677[label="vuz3190",fontsize=16,color="green",shape="box"];8678[label="primQuotInt (Pos vuz398) (gcd0Gcd'2 (abs (Pos vuz399)) (abs (Pos vuz3190 * Pos vuz3170)))",fontsize=16,color="black",shape="box"];8678 -> 8814[label="",style="solid", color="black", weight=3]; 67.83/34.96 9997 -> 9988[label="",style="dashed", color="red", weight=0]; 67.83/34.96 9997[label="Pos vuz3190 * Pos vuz3170",fontsize=16,color="magenta"];9997 -> 10017[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 9997 -> 10018[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8681[label="primQuotInt (Pos vuz398) (gcd1 False (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8681 -> 8815[label="",style="solid", color="black", weight=3]; 67.83/34.96 8682[label="primQuotInt (Pos vuz398) (gcd1 True (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8682 -> 8816[label="",style="solid", color="black", weight=3]; 67.83/34.96 8683 -> 7713[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8683[label="primQuotInt (Pos (Succ vuz4010)) (gcd3 (Pos (Succ vuz4010)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];8683 -> 8817[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8683 -> 8818[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8683 -> 8819[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8684 -> 7809[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8684[label="primQuotInt (Neg (Succ vuz4000)) (gcd3 (Neg (Succ vuz4000)) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];8684 -> 8820[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8684 -> 8821[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8684 -> 8822[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8685 -> 7713[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8685[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Neg vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];8685 -> 8823[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8685 -> 8824[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8685 -> 8825[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8686[label="Succ vuz4060",fontsize=16,color="green",shape="box"];8687[label="Zero",fontsize=16,color="green",shape="box"];8688[label="Succ vuz4060",fontsize=16,color="green",shape="box"];8689[label="Zero",fontsize=16,color="green",shape="box"];8690[label="Zero",fontsize=16,color="green",shape="box"];8691[label="Zero",fontsize=16,color="green",shape="box"];8692 -> 7667[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8692[label="primQuotInt (Pos (Succ vuz4090)) (gcd3 (Pos (Succ vuz4090)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];8692 -> 8826[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8692 -> 8827[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8692 -> 8828[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8693 -> 7587[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8693[label="primQuotInt (Neg (Succ vuz4080)) (gcd3 (Neg (Succ vuz4080)) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];8693 -> 8829[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8693 -> 8830[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8693 -> 8831[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8694 -> 7667[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8694[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Pos vuz3190 * Pos (Succ vuz31700)))",fontsize=16,color="magenta"];8694 -> 8832[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8694 -> 8833[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8694 -> 8834[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8695[label="Succ vuz4140",fontsize=16,color="green",shape="box"];8696[label="Zero",fontsize=16,color="green",shape="box"];8697[label="Succ vuz4140",fontsize=16,color="green",shape="box"];8698[label="Zero",fontsize=16,color="green",shape="box"];8699[label="Zero",fontsize=16,color="green",shape="box"];8700[label="Zero",fontsize=16,color="green",shape="box"];8701[label="primQuotInt (Pos vuz416) (gcd0Gcd'2 (abs (Pos vuz417)) (abs (Neg vuz3190 * Pos vuz3170)))",fontsize=16,color="black",shape="box"];8701 -> 8835[label="",style="solid", color="black", weight=3]; 67.83/34.96 9998 -> 9988[label="",style="dashed", color="red", weight=0]; 67.83/34.96 9998[label="Neg vuz3190 * Pos vuz3170",fontsize=16,color="magenta"];9998 -> 10019[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 9998 -> 10020[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8704[label="primQuotInt (Pos vuz416) (gcd1 False (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8704 -> 8836[label="",style="solid", color="black", weight=3]; 67.83/34.96 8705[label="primQuotInt (Pos vuz416) (gcd1 True (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8705 -> 8837[label="",style="solid", color="black", weight=3]; 67.83/34.96 8706 -> 7598[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8706[label="primQuotInt (Pos (Succ vuz4190)) (gcd3 (Pos (Succ vuz4190)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];8706 -> 8838[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8706 -> 8839[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8706 -> 8840[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8707 -> 7763[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8707[label="primQuotInt (Neg (Succ vuz4180)) (gcd3 (Neg (Succ vuz4180)) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];8707 -> 8841[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8707 -> 8842[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8707 -> 8843[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8708 -> 7598[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8708[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Pos (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];8708 -> 8844[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8708 -> 8845[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8708 -> 8846[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8709[label="Succ vuz4240",fontsize=16,color="green",shape="box"];8710[label="Succ vuz4240",fontsize=16,color="green",shape="box"];8711[label="Zero",fontsize=16,color="green",shape="box"];8712[label="Zero",fontsize=16,color="green",shape="box"];8713[label="Zero",fontsize=16,color="green",shape="box"];8714[label="Zero",fontsize=16,color="green",shape="box"];8715[label="primQuotInt (Neg vuz426) (gcd0Gcd'2 (abs (Neg vuz427)) (abs (Neg vuz3190 * Neg vuz3170)))",fontsize=16,color="black",shape="box"];8715 -> 8847[label="",style="solid", color="black", weight=3]; 67.83/34.96 9999 -> 9988[label="",style="dashed", color="red", weight=0]; 67.83/34.96 9999[label="Neg vuz3190 * Neg vuz3170",fontsize=16,color="magenta"];9999 -> 10021[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 9999 -> 10022[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8718[label="primQuotInt (Neg vuz426) (gcd1 False (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8718 -> 8848[label="",style="solid", color="black", weight=3]; 67.83/34.96 8719[label="primQuotInt (Neg vuz426) (gcd1 True (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8719 -> 8849[label="",style="solid", color="black", weight=3]; 67.83/34.96 8720[label="primQuotInt (Neg vuz428) (gcd0Gcd'2 (abs (Neg vuz429)) (abs (Pos vuz3190 * Neg vuz3170)))",fontsize=16,color="black",shape="box"];8720 -> 8850[label="",style="solid", color="black", weight=3]; 67.83/34.96 10000 -> 9988[label="",style="dashed", color="red", weight=0]; 67.83/34.96 10000[label="Pos vuz3190 * Neg vuz3170",fontsize=16,color="magenta"];10000 -> 10023[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 10000 -> 10024[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8723[label="primQuotInt (Neg vuz428) (gcd1 False (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8723 -> 8851[label="",style="solid", color="black", weight=3]; 67.83/34.96 8724[label="primQuotInt (Neg vuz428) (gcd1 True (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8724 -> 8852[label="",style="solid", color="black", weight=3]; 67.83/34.96 8725 -> 7613[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8725[label="primQuotInt (Pos (Succ vuz4310)) (gcd3 (Pos (Succ vuz4310)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];8725 -> 8853[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8725 -> 8854[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8725 -> 8855[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8726 -> 7745[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8726[label="primQuotInt (Neg (Succ vuz4300)) (gcd3 (Neg (Succ vuz4300)) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];8726 -> 8856[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8726 -> 8857[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8726 -> 8858[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8727 -> 7613[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8727[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Neg (Succ vuz31900) * Neg vuz3170))",fontsize=16,color="magenta"];8727 -> 8859[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8727 -> 8860[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8727 -> 8861[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8728[label="Succ vuz4360",fontsize=16,color="green",shape="box"];8729[label="Zero",fontsize=16,color="green",shape="box"];8730[label="Succ vuz4360",fontsize=16,color="green",shape="box"];8731[label="Zero",fontsize=16,color="green",shape="box"];8732[label="Zero",fontsize=16,color="green",shape="box"];8733[label="Zero",fontsize=16,color="green",shape="box"];8734 -> 7667[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8734[label="primQuotInt (Pos (Succ vuz4390)) (gcd3 (Pos (Succ vuz4390)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];8734 -> 8862[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8734 -> 8863[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8734 -> 8864[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8735 -> 7587[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8735[label="primQuotInt (Neg (Succ vuz4380)) (gcd3 (Neg (Succ vuz4380)) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];8735 -> 8865[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8735 -> 8866[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8735 -> 8867[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8736 -> 7667[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8736[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Pos (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];8736 -> 8868[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8736 -> 8869[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8736 -> 8870[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8737[label="Succ vuz4440",fontsize=16,color="green",shape="box"];8738[label="Zero",fontsize=16,color="green",shape="box"];8739[label="Succ vuz4440",fontsize=16,color="green",shape="box"];8740[label="Zero",fontsize=16,color="green",shape="box"];8741[label="Zero",fontsize=16,color="green",shape="box"];8742[label="Zero",fontsize=16,color="green",shape="box"];8743[label="primQuotInt (Neg vuz446) (gcd0Gcd'2 (abs (Neg vuz447)) (abs (Neg vuz3190 * Pos vuz3170)))",fontsize=16,color="black",shape="box"];8743 -> 8871[label="",style="solid", color="black", weight=3]; 67.83/34.96 10001 -> 9988[label="",style="dashed", color="red", weight=0]; 67.83/34.96 10001[label="Neg vuz3190 * Pos vuz3170",fontsize=16,color="magenta"];10001 -> 10025[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 10001 -> 10026[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8746[label="primQuotInt (Neg vuz446) (gcd1 False (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8746 -> 8872[label="",style="solid", color="black", weight=3]; 67.83/34.96 8747[label="primQuotInt (Neg vuz446) (gcd1 True (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8747 -> 8873[label="",style="solid", color="black", weight=3]; 67.83/34.96 8748[label="primQuotInt (Neg vuz348) (gcd0Gcd'2 (abs (Neg vuz349)) (abs (Pos vuz3190 * Pos vuz3170)))",fontsize=16,color="black",shape="box"];8748 -> 8874[label="",style="solid", color="black", weight=3]; 67.83/34.96 10002 -> 9988[label="",style="dashed", color="red", weight=0]; 67.83/34.96 10002[label="Pos vuz3190 * Pos vuz3170",fontsize=16,color="magenta"];10002 -> 10027[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 10002 -> 10028[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8751[label="primQuotInt (Neg vuz348) (gcd1 False (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8751 -> 8875[label="",style="solid", color="black", weight=3]; 67.83/34.96 8752[label="primQuotInt (Neg vuz348) (gcd1 True (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="black",shape="box"];8752 -> 8876[label="",style="solid", color="black", weight=3]; 67.83/34.96 8753 -> 7713[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8753[label="primQuotInt (Pos (Succ vuz4490)) (gcd3 (Pos (Succ vuz4490)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];8753 -> 8877[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8753 -> 8878[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8753 -> 8879[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8754 -> 7809[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8754[label="primQuotInt (Neg (Succ vuz4480)) (gcd3 (Neg (Succ vuz4480)) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];8754 -> 8880[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8754 -> 8881[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8754 -> 8882[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8755 -> 7713[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8755[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Neg (Succ vuz31900) * Pos vuz3170))",fontsize=16,color="magenta"];8755 -> 8883[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8755 -> 8884[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8755 -> 8885[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8756[label="Succ vuz4540",fontsize=16,color="green",shape="box"];8757[label="Zero",fontsize=16,color="green",shape="box"];8758[label="Succ vuz4540",fontsize=16,color="green",shape="box"];8759[label="Zero",fontsize=16,color="green",shape="box"];8760[label="Zero",fontsize=16,color="green",shape="box"];8761[label="Zero",fontsize=16,color="green",shape="box"];8762[label="primQuotInt (Pos vuz354) (gcd0Gcd'2 (abs (Pos vuz355)) (abs (Pos vuz3190 * Neg vuz3170)))",fontsize=16,color="black",shape="box"];8762 -> 8886[label="",style="solid", color="black", weight=3]; 67.83/34.96 10003 -> 9988[label="",style="dashed", color="red", weight=0]; 67.83/34.96 10003[label="Pos vuz3190 * Neg vuz3170",fontsize=16,color="magenta"];10003 -> 10029[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 10003 -> 10030[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8765[label="primQuotInt (Pos vuz354) (gcd1 False (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8765 -> 8887[label="",style="solid", color="black", weight=3]; 67.83/34.96 8766[label="primQuotInt (Pos vuz354) (gcd1 True (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8766 -> 8888[label="",style="solid", color="black", weight=3]; 67.83/34.96 8767 -> 7613[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8767[label="primQuotInt (Pos (Succ vuz4570)) (gcd3 (Pos (Succ vuz4570)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];8767 -> 8889[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8767 -> 8890[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8767 -> 8891[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8768 -> 7745[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8768[label="primQuotInt (Neg (Succ vuz4560)) (gcd3 (Neg (Succ vuz4560)) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];8768 -> 8892[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8768 -> 8893[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8768 -> 8894[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8769 -> 7613[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8769[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Neg vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];8769 -> 8895[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8769 -> 8896[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8769 -> 8897[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8770[label="Succ vuz4620",fontsize=16,color="green",shape="box"];8771[label="Zero",fontsize=16,color="green",shape="box"];8772[label="Succ vuz4620",fontsize=16,color="green",shape="box"];8773[label="Zero",fontsize=16,color="green",shape="box"];8774[label="Zero",fontsize=16,color="green",shape="box"];8775[label="Zero",fontsize=16,color="green",shape="box"];8776 -> 7598[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8776[label="primQuotInt (Pos (Succ vuz4650)) (gcd3 (Pos (Succ vuz4650)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];8776 -> 8898[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8776 -> 8899[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8776 -> 8900[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8777 -> 7763[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8777[label="primQuotInt (Neg (Succ vuz4640)) (gcd3 (Neg (Succ vuz4640)) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];8777 -> 8901[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8777 -> 8902[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8777 -> 8903[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8778 -> 7598[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8778[label="primQuotInt (Pos Zero) (gcd3 (Pos Zero) (Pos vuz3190 * Neg (Succ vuz31700)))",fontsize=16,color="magenta"];8778 -> 8904[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8778 -> 8905[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8778 -> 8906[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8779[label="Succ vuz4700",fontsize=16,color="green",shape="box"];8780[label="Succ vuz4700",fontsize=16,color="green",shape="box"];8781[label="Zero",fontsize=16,color="green",shape="box"];8782[label="Zero",fontsize=16,color="green",shape="box"];8783[label="Zero",fontsize=16,color="green",shape="box"];8784[label="Zero",fontsize=16,color="green",shape="box"];8785[label="primQuotInt (Pos vuz360) (gcd0Gcd'2 (abs (Pos vuz361)) (abs (Neg vuz3190 * Neg vuz3170)))",fontsize=16,color="black",shape="box"];8785 -> 8907[label="",style="solid", color="black", weight=3]; 67.83/34.96 10004 -> 9988[label="",style="dashed", color="red", weight=0]; 67.83/34.96 10004[label="Neg vuz3190 * Neg vuz3170",fontsize=16,color="magenta"];10004 -> 10031[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 10004 -> 10032[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8788[label="primQuotInt (Pos vuz360) (gcd1 False (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8788 -> 8908[label="",style="solid", color="black", weight=3]; 67.83/34.96 8789[label="primQuotInt (Pos vuz360) (gcd1 True (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="black",shape="box"];8789 -> 8909[label="",style="solid", color="black", weight=3]; 67.83/34.96 8791 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8791[label="primPlusNat vuz369 vuz481",fontsize=16,color="magenta"];8791 -> 8910[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8791 -> 8911[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8792 -> 7479[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8792[label="primEqInt (Pos (primPlusNat vuz369 vuz481)) (fromInt (Pos Zero))",fontsize=16,color="magenta"];8792 -> 8912[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8790[label="primQuotInt (Pos vuz366) (gcd2 vuz504 (Pos vuz505) (Pos vuz367))",fontsize=16,color="burlywood",shape="triangle"];11067[label="vuz504/False",fontsize=10,color="white",style="solid",shape="box"];8790 -> 11067[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11067 -> 8913[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11068[label="vuz504/True",fontsize=10,color="white",style="solid",shape="box"];8790 -> 11068[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11068 -> 8914[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8793[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primMinusNat (Succ vuz3690) vuz483) (fromInt (Pos Zero))) (primMinusNat (Succ vuz3690) vuz483) (Pos vuz367))",fontsize=16,color="burlywood",shape="box"];11069[label="vuz483/Succ vuz4830",fontsize=10,color="white",style="solid",shape="box"];8793 -> 11069[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11069 -> 8915[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11070[label="vuz483/Zero",fontsize=10,color="white",style="solid",shape="box"];8793 -> 11070[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11070 -> 8916[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8794[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primMinusNat Zero vuz483) (fromInt (Pos Zero))) (primMinusNat Zero vuz483) (Pos vuz367))",fontsize=16,color="burlywood",shape="box"];11071[label="vuz483/Succ vuz4830",fontsize=10,color="white",style="solid",shape="box"];8794 -> 11071[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11071 -> 8917[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11072[label="vuz483/Zero",fontsize=10,color="white",style="solid",shape="box"];8794 -> 11072[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11072 -> 8918[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8795[label="vuz371",fontsize=16,color="green",shape="box"];8796[label="vuz485",fontsize=16,color="green",shape="box"];8797[label="vuz373",fontsize=16,color="green",shape="box"];8798[label="vuz370",fontsize=16,color="green",shape="box"];8800 -> 7498[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8800[label="primEqInt (Neg (primPlusNat vuz373 vuz487)) (fromInt (Pos Zero))",fontsize=16,color="magenta"];8800 -> 8919[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8801 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8801[label="primPlusNat vuz373 vuz487",fontsize=16,color="magenta"];8801 -> 8920[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8801 -> 8921[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8799[label="primQuotInt (Pos vuz370) (gcd2 vuz507 (Neg vuz508) (Pos vuz371))",fontsize=16,color="burlywood",shape="triangle"];11073[label="vuz507/False",fontsize=10,color="white",style="solid",shape="box"];8799 -> 11073[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11073 -> 8922[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11074[label="vuz507/True",fontsize=10,color="white",style="solid",shape="box"];8799 -> 11074[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11074 -> 8923[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8802[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primMinusNat (Succ vuz4890) vuz377) (fromInt (Pos Zero))) (primMinusNat (Succ vuz4890) vuz377) (Neg vuz375))",fontsize=16,color="burlywood",shape="box"];11075[label="vuz377/Succ vuz3770",fontsize=10,color="white",style="solid",shape="box"];8802 -> 11075[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11075 -> 8924[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11076[label="vuz377/Zero",fontsize=10,color="white",style="solid",shape="box"];8802 -> 11076[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11076 -> 8925[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8803[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primMinusNat Zero vuz377) (fromInt (Pos Zero))) (primMinusNat Zero vuz377) (Neg vuz375))",fontsize=16,color="burlywood",shape="box"];11077[label="vuz377/Succ vuz3770",fontsize=10,color="white",style="solid",shape="box"];8803 -> 11077[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11077 -> 8926[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11078[label="vuz377/Zero",fontsize=10,color="white",style="solid",shape="box"];8803 -> 11078[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11078 -> 8927[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8805 -> 7498[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8805[label="primEqInt (Neg (primPlusNat vuz377 vuz491)) (fromInt (Pos Zero))",fontsize=16,color="magenta"];8805 -> 8928[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8806 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8806[label="primPlusNat vuz377 vuz491",fontsize=16,color="magenta"];8806 -> 8929[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8806 -> 8930[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8804[label="primQuotInt (Neg vuz374) (gcd2 vuz510 (Neg vuz511) (Neg vuz375))",fontsize=16,color="burlywood",shape="triangle"];11079[label="vuz510/False",fontsize=10,color="white",style="solid",shape="box"];8804 -> 11079[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11079 -> 8931[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11080[label="vuz510/True",fontsize=10,color="white",style="solid",shape="box"];8804 -> 11080[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11080 -> 8932[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8808 -> 7479[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8808[label="primEqInt (Pos (primPlusNat vuz381 vuz493)) (fromInt (Pos Zero))",fontsize=16,color="magenta"];8808 -> 8933[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8809 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8809[label="primPlusNat vuz381 vuz493",fontsize=16,color="magenta"];8809 -> 8934[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8809 -> 8935[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8807[label="primQuotInt (Neg vuz378) (gcd2 vuz513 (Pos vuz514) (Neg vuz379))",fontsize=16,color="burlywood",shape="triangle"];11081[label="vuz513/False",fontsize=10,color="white",style="solid",shape="box"];8807 -> 11081[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11081 -> 8936[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11082[label="vuz513/True",fontsize=10,color="white",style="solid",shape="box"];8807 -> 11082[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11082 -> 8937[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8810[label="vuz379",fontsize=16,color="green",shape="box"];8811[label="vuz381",fontsize=16,color="green",shape="box"];8812[label="vuz378",fontsize=16,color="green",shape="box"];8813[label="vuz495",fontsize=16,color="green",shape="box"];8814 -> 9854[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8814[label="primQuotInt (Pos vuz398) (gcd0Gcd'1 (abs (Pos vuz3190 * Pos vuz3170) == fromInt (Pos Zero)) (abs (Pos vuz399)) (abs (Pos vuz3190 * Pos vuz3170)))",fontsize=16,color="magenta"];8814 -> 9855[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8814 -> 9856[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8814 -> 9857[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8814 -> 9858[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 10017[label="Pos vuz3170",fontsize=16,color="green",shape="box"];10018[label="Pos vuz3190",fontsize=16,color="green",shape="box"];8815 -> 8373[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8815[label="primQuotInt (Pos vuz398) (gcd0 (Pos vuz399) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];8816[label="primQuotInt (Pos vuz398) (error [])",fontsize=16,color="black",shape="triangle"];8816 -> 8939[label="",style="solid", color="black", weight=3]; 67.83/34.96 8817[label="Succ vuz4010",fontsize=16,color="green",shape="box"];8818[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8819[label="Succ vuz4010",fontsize=16,color="green",shape="box"];8820[label="Succ vuz4000",fontsize=16,color="green",shape="box"];8821[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8822[label="Succ vuz4000",fontsize=16,color="green",shape="box"];8823[label="Zero",fontsize=16,color="green",shape="box"];8824[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8825[label="Zero",fontsize=16,color="green",shape="box"];8826[label="Succ vuz4090",fontsize=16,color="green",shape="box"];8827[label="Succ vuz4090",fontsize=16,color="green",shape="box"];8828[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8829[label="Succ vuz4080",fontsize=16,color="green",shape="box"];8830[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8831[label="Succ vuz4080",fontsize=16,color="green",shape="box"];8832[label="Zero",fontsize=16,color="green",shape="box"];8833[label="Zero",fontsize=16,color="green",shape="box"];8834[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8835 -> 9854[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8835[label="primQuotInt (Pos vuz416) (gcd0Gcd'1 (abs (Neg vuz3190 * Pos vuz3170) == fromInt (Pos Zero)) (abs (Pos vuz417)) (abs (Neg vuz3190 * Pos vuz3170)))",fontsize=16,color="magenta"];8835 -> 9859[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8835 -> 9860[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8835 -> 9861[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 10019[label="Pos vuz3170",fontsize=16,color="green",shape="box"];10020[label="Neg vuz3190",fontsize=16,color="green",shape="box"];8836 -> 8387[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8836[label="primQuotInt (Pos vuz416) (gcd0 (Pos vuz417) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];8837 -> 8816[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8837[label="primQuotInt (Pos vuz416) (error [])",fontsize=16,color="magenta"];8837 -> 8941[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8838[label="Succ vuz4190",fontsize=16,color="green",shape="box"];8839[label="Succ vuz4190",fontsize=16,color="green",shape="box"];8840[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8841[label="Succ vuz4180",fontsize=16,color="green",shape="box"];8842[label="Succ vuz4180",fontsize=16,color="green",shape="box"];8843[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8844[label="Zero",fontsize=16,color="green",shape="box"];8845[label="Zero",fontsize=16,color="green",shape="box"];8846[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8847 -> 10039[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8847[label="primQuotInt (Neg vuz426) (gcd0Gcd'1 (abs (Neg vuz3190 * Neg vuz3170) == fromInt (Pos Zero)) (abs (Neg vuz427)) (abs (Neg vuz3190 * Neg vuz3170)))",fontsize=16,color="magenta"];8847 -> 10040[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8847 -> 10041[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8847 -> 10042[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8847 -> 10043[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 10021[label="Neg vuz3170",fontsize=16,color="green",shape="box"];10022[label="Neg vuz3190",fontsize=16,color="green",shape="box"];8848 -> 8396[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8848[label="primQuotInt (Neg vuz426) (gcd0 (Neg vuz427) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];8849[label="primQuotInt (Neg vuz426) (error [])",fontsize=16,color="black",shape="triangle"];8849 -> 8943[label="",style="solid", color="black", weight=3]; 67.83/34.96 8850 -> 10039[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8850[label="primQuotInt (Neg vuz428) (gcd0Gcd'1 (abs (Pos vuz3190 * Neg vuz3170) == fromInt (Pos Zero)) (abs (Neg vuz429)) (abs (Pos vuz3190 * Neg vuz3170)))",fontsize=16,color="magenta"];8850 -> 10044[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8850 -> 10045[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8850 -> 10046[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 10023[label="Neg vuz3170",fontsize=16,color="green",shape="box"];10024[label="Pos vuz3190",fontsize=16,color="green",shape="box"];8851 -> 8398[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8851[label="primQuotInt (Neg vuz428) (gcd0 (Neg vuz429) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];8852 -> 8849[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8852[label="primQuotInt (Neg vuz428) (error [])",fontsize=16,color="magenta"];8852 -> 8945[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8853[label="Succ vuz4310",fontsize=16,color="green",shape="box"];8854[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8855[label="Succ vuz4310",fontsize=16,color="green",shape="box"];8856[label="Succ vuz4300",fontsize=16,color="green",shape="box"];8857[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8858[label="Succ vuz4300",fontsize=16,color="green",shape="box"];8859[label="Zero",fontsize=16,color="green",shape="box"];8860[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8861[label="Zero",fontsize=16,color="green",shape="box"];8862[label="Succ vuz4390",fontsize=16,color="green",shape="box"];8863[label="Succ vuz4390",fontsize=16,color="green",shape="box"];8864[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8865[label="Succ vuz4380",fontsize=16,color="green",shape="box"];8866[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8867[label="Succ vuz4380",fontsize=16,color="green",shape="box"];8868[label="Zero",fontsize=16,color="green",shape="box"];8869[label="Zero",fontsize=16,color="green",shape="box"];8870[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8871 -> 10039[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8871[label="primQuotInt (Neg vuz446) (gcd0Gcd'1 (abs (Neg vuz3190 * Pos vuz3170) == fromInt (Pos Zero)) (abs (Neg vuz447)) (abs (Neg vuz3190 * Pos vuz3170)))",fontsize=16,color="magenta"];8871 -> 10047[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8871 -> 10048[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8871 -> 10049[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8871 -> 10050[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 10025[label="Pos vuz3170",fontsize=16,color="green",shape="box"];10026[label="Neg vuz3190",fontsize=16,color="green",shape="box"];8872 -> 8412[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8872[label="primQuotInt (Neg vuz446) (gcd0 (Neg vuz447) (Neg vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];8873 -> 8849[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8873[label="primQuotInt (Neg vuz446) (error [])",fontsize=16,color="magenta"];8873 -> 8947[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8874 -> 10039[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8874[label="primQuotInt (Neg vuz348) (gcd0Gcd'1 (abs (Pos vuz3190 * Pos vuz3170) == fromInt (Pos Zero)) (abs (Neg vuz349)) (abs (Pos vuz3190 * Pos vuz3170)))",fontsize=16,color="magenta"];8874 -> 10051[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8874 -> 10052[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8874 -> 10053[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8874 -> 10054[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 10027[label="Pos vuz3170",fontsize=16,color="green",shape="box"];10028[label="Pos vuz3190",fontsize=16,color="green",shape="box"];8875 -> 8414[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8875[label="primQuotInt (Neg vuz348) (gcd0 (Neg vuz349) (Pos vuz3190 * Pos vuz3170))",fontsize=16,color="magenta"];8876 -> 8849[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8876[label="primQuotInt (Neg vuz348) (error [])",fontsize=16,color="magenta"];8876 -> 8949[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8877[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8878[label="Succ vuz4490",fontsize=16,color="green",shape="box"];8879[label="Succ vuz4490",fontsize=16,color="green",shape="box"];8880[label="Succ vuz4480",fontsize=16,color="green",shape="box"];8881[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8882[label="Succ vuz4480",fontsize=16,color="green",shape="box"];8883[label="Succ vuz31900",fontsize=16,color="green",shape="box"];8884[label="Zero",fontsize=16,color="green",shape="box"];8885[label="Zero",fontsize=16,color="green",shape="box"];8886 -> 9854[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8886[label="primQuotInt (Pos vuz354) (gcd0Gcd'1 (abs (Pos vuz3190 * Neg vuz3170) == fromInt (Pos Zero)) (abs (Pos vuz355)) (abs (Pos vuz3190 * Neg vuz3170)))",fontsize=16,color="magenta"];8886 -> 9862[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8886 -> 9863[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8886 -> 9864[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8886 -> 9865[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 10029[label="Neg vuz3170",fontsize=16,color="green",shape="box"];10030[label="Pos vuz3190",fontsize=16,color="green",shape="box"];8887 -> 8422[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8887[label="primQuotInt (Pos vuz354) (gcd0 (Pos vuz355) (Pos vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];8888 -> 8816[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8888[label="primQuotInt (Pos vuz354) (error [])",fontsize=16,color="magenta"];8888 -> 8951[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8889[label="Succ vuz4570",fontsize=16,color="green",shape="box"];8890[label="Succ vuz4570",fontsize=16,color="green",shape="box"];8891[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8892[label="Succ vuz4560",fontsize=16,color="green",shape="box"];8893[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8894[label="Succ vuz4560",fontsize=16,color="green",shape="box"];8895[label="Zero",fontsize=16,color="green",shape="box"];8896[label="Zero",fontsize=16,color="green",shape="box"];8897[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8898[label="Succ vuz4650",fontsize=16,color="green",shape="box"];8899[label="Succ vuz4650",fontsize=16,color="green",shape="box"];8900[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8901[label="Succ vuz4640",fontsize=16,color="green",shape="box"];8902[label="Succ vuz4640",fontsize=16,color="green",shape="box"];8903[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8904[label="Zero",fontsize=16,color="green",shape="box"];8905[label="Zero",fontsize=16,color="green",shape="box"];8906[label="Succ vuz31700",fontsize=16,color="green",shape="box"];8907 -> 9854[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8907[label="primQuotInt (Pos vuz360) (gcd0Gcd'1 (abs (Neg vuz3190 * Neg vuz3170) == fromInt (Pos Zero)) (abs (Pos vuz361)) (abs (Neg vuz3190 * Neg vuz3170)))",fontsize=16,color="magenta"];8907 -> 9866[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8907 -> 9867[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8907 -> 9868[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8907 -> 9869[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 10031[label="Neg vuz3170",fontsize=16,color="green",shape="box"];10032[label="Neg vuz3190",fontsize=16,color="green",shape="box"];8908 -> 8436[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8908[label="primQuotInt (Pos vuz360) (gcd0 (Pos vuz361) (Neg vuz3190 * Neg vuz3170))",fontsize=16,color="magenta"];8909 -> 8816[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8909[label="primQuotInt (Pos vuz360) (error [])",fontsize=16,color="magenta"];8909 -> 8953[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8910[label="vuz369",fontsize=16,color="green",shape="box"];8911[label="vuz481",fontsize=16,color="green",shape="box"];8912 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8912[label="primPlusNat vuz369 vuz481",fontsize=16,color="magenta"];8912 -> 8954[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8912 -> 8955[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7479[label="primEqInt (Pos vuz325) (fromInt (Pos Zero))",fontsize=16,color="burlywood",shape="triangle"];11083[label="vuz325/Succ vuz3250",fontsize=10,color="white",style="solid",shape="box"];7479 -> 11083[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11083 -> 7494[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11084[label="vuz325/Zero",fontsize=10,color="white",style="solid",shape="box"];7479 -> 11084[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11084 -> 7495[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8913[label="primQuotInt (Pos vuz366) (gcd2 False (Pos vuz505) (Pos vuz367))",fontsize=16,color="black",shape="box"];8913 -> 8956[label="",style="solid", color="black", weight=3]; 67.83/34.96 8914[label="primQuotInt (Pos vuz366) (gcd2 True (Pos vuz505) (Pos vuz367))",fontsize=16,color="black",shape="box"];8914 -> 8957[label="",style="solid", color="black", weight=3]; 67.83/34.96 8915[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primMinusNat (Succ vuz3690) (Succ vuz4830)) (fromInt (Pos Zero))) (primMinusNat (Succ vuz3690) (Succ vuz4830)) (Pos vuz367))",fontsize=16,color="black",shape="box"];8915 -> 8958[label="",style="solid", color="black", weight=3]; 67.83/34.96 8916[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primMinusNat (Succ vuz3690) Zero) (fromInt (Pos Zero))) (primMinusNat (Succ vuz3690) Zero) (Pos vuz367))",fontsize=16,color="black",shape="box"];8916 -> 8959[label="",style="solid", color="black", weight=3]; 67.83/34.96 8917[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primMinusNat Zero (Succ vuz4830)) (fromInt (Pos Zero))) (primMinusNat Zero (Succ vuz4830)) (Pos vuz367))",fontsize=16,color="black",shape="box"];8917 -> 8960[label="",style="solid", color="black", weight=3]; 67.83/34.96 8918[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primMinusNat Zero Zero) (fromInt (Pos Zero))) (primMinusNat Zero Zero) (Pos vuz367))",fontsize=16,color="black",shape="box"];8918 -> 8961[label="",style="solid", color="black", weight=3]; 67.83/34.96 8919 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8919[label="primPlusNat vuz373 vuz487",fontsize=16,color="magenta"];8919 -> 8962[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8919 -> 8963[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 7498[label="primEqInt (Neg vuz326) (fromInt (Pos Zero))",fontsize=16,color="burlywood",shape="triangle"];11085[label="vuz326/Succ vuz3260",fontsize=10,color="white",style="solid",shape="box"];7498 -> 11085[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11085 -> 7512[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11086[label="vuz326/Zero",fontsize=10,color="white",style="solid",shape="box"];7498 -> 11086[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11086 -> 7513[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 8920[label="vuz373",fontsize=16,color="green",shape="box"];8921[label="vuz487",fontsize=16,color="green",shape="box"];8922[label="primQuotInt (Pos vuz370) (gcd2 False (Neg vuz508) (Pos vuz371))",fontsize=16,color="black",shape="box"];8922 -> 8964[label="",style="solid", color="black", weight=3]; 67.83/34.96 8923[label="primQuotInt (Pos vuz370) (gcd2 True (Neg vuz508) (Pos vuz371))",fontsize=16,color="black",shape="box"];8923 -> 8965[label="",style="solid", color="black", weight=3]; 67.83/34.96 8924[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primMinusNat (Succ vuz4890) (Succ vuz3770)) (fromInt (Pos Zero))) (primMinusNat (Succ vuz4890) (Succ vuz3770)) (Neg vuz375))",fontsize=16,color="black",shape="box"];8924 -> 8966[label="",style="solid", color="black", weight=3]; 67.83/34.96 8925[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primMinusNat (Succ vuz4890) Zero) (fromInt (Pos Zero))) (primMinusNat (Succ vuz4890) Zero) (Neg vuz375))",fontsize=16,color="black",shape="box"];8925 -> 8967[label="",style="solid", color="black", weight=3]; 67.83/34.96 8926[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primMinusNat Zero (Succ vuz3770)) (fromInt (Pos Zero))) (primMinusNat Zero (Succ vuz3770)) (Neg vuz375))",fontsize=16,color="black",shape="box"];8926 -> 8968[label="",style="solid", color="black", weight=3]; 67.83/34.96 8927[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primMinusNat Zero Zero) (fromInt (Pos Zero))) (primMinusNat Zero Zero) (Neg vuz375))",fontsize=16,color="black",shape="box"];8927 -> 8969[label="",style="solid", color="black", weight=3]; 67.83/34.96 8928 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8928[label="primPlusNat vuz377 vuz491",fontsize=16,color="magenta"];8928 -> 8970[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8928 -> 8971[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8929[label="vuz377",fontsize=16,color="green",shape="box"];8930[label="vuz491",fontsize=16,color="green",shape="box"];8931[label="primQuotInt (Neg vuz374) (gcd2 False (Neg vuz511) (Neg vuz375))",fontsize=16,color="black",shape="box"];8931 -> 8972[label="",style="solid", color="black", weight=3]; 67.83/34.96 8932[label="primQuotInt (Neg vuz374) (gcd2 True (Neg vuz511) (Neg vuz375))",fontsize=16,color="black",shape="box"];8932 -> 8973[label="",style="solid", color="black", weight=3]; 67.83/34.96 8933 -> 7571[label="",style="dashed", color="red", weight=0]; 67.83/34.96 8933[label="primPlusNat vuz381 vuz493",fontsize=16,color="magenta"];8933 -> 8974[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8933 -> 8975[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 8934[label="vuz381",fontsize=16,color="green",shape="box"];8935[label="vuz493",fontsize=16,color="green",shape="box"];8936[label="primQuotInt (Neg vuz378) (gcd2 False (Pos vuz514) (Neg vuz379))",fontsize=16,color="black",shape="box"];8936 -> 8976[label="",style="solid", color="black", weight=3]; 67.83/34.96 8937[label="primQuotInt (Neg vuz378) (gcd2 True (Pos vuz514) (Neg vuz379))",fontsize=16,color="black",shape="box"];8937 -> 8977[label="",style="solid", color="black", weight=3]; 67.83/34.96 9855 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.96 9855[label="abs (Pos vuz3190 * Pos vuz3170) == fromInt (Pos Zero)",fontsize=16,color="magenta"];9855 -> 10005[label="",style="dashed", color="magenta", weight=3]; 67.83/34.96 9856[label="vuz398",fontsize=16,color="green",shape="box"];9857[label="abs (Pos vuz399)",fontsize=16,color="black",shape="triangle"];9857 -> 10033[label="",style="solid", color="black", weight=3]; 67.83/34.96 9858 -> 9366[label="",style="dashed", color="red", weight=0]; 67.83/34.96 9858[label="abs (Pos vuz3190 * Pos vuz3170)",fontsize=16,color="magenta"];9854[label="primQuotInt (Pos vuz416) (gcd0Gcd'1 vuz550 vuz549 vuz542)",fontsize=16,color="burlywood",shape="triangle"];11087[label="vuz550/False",fontsize=10,color="white",style="solid",shape="box"];9854 -> 11087[label="",style="solid", color="burlywood", weight=9]; 67.83/34.96 11087 -> 10034[label="",style="solid", color="burlywood", weight=3]; 67.83/34.96 11088[label="vuz550/True",fontsize=10,color="white",style="solid",shape="box"];9854 -> 11088[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11088 -> 10035[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 8939[label="error []",fontsize=16,color="red",shape="box"];9859 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9859[label="abs (Neg vuz3190 * Pos vuz3170) == fromInt (Pos Zero)",fontsize=16,color="magenta"];9859 -> 10006[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9860 -> 9857[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9860[label="abs (Pos vuz417)",fontsize=16,color="magenta"];9860 -> 10036[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9861 -> 9369[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9861[label="abs (Neg vuz3190 * Pos vuz3170)",fontsize=16,color="magenta"];8941[label="vuz416",fontsize=16,color="green",shape="box"];10040[label="vuz426",fontsize=16,color="green",shape="box"];10041 -> 9376[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10041[label="abs (Neg vuz3190 * Neg vuz3170)",fontsize=16,color="magenta"];10042[label="abs (Neg vuz427)",fontsize=16,color="black",shape="triangle"];10042 -> 10172[label="",style="solid", color="black", weight=3]; 67.83/34.97 10043 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10043[label="abs (Neg vuz3190 * Neg vuz3170) == fromInt (Pos Zero)",fontsize=16,color="magenta"];10043 -> 10173[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10039[label="primQuotInt (Neg vuz428) (gcd0Gcd'1 vuz553 vuz552 vuz544)",fontsize=16,color="burlywood",shape="triangle"];11089[label="vuz553/False",fontsize=10,color="white",style="solid",shape="box"];10039 -> 11089[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11089 -> 10174[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11090[label="vuz553/True",fontsize=10,color="white",style="solid",shape="box"];10039 -> 11090[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11090 -> 10175[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 8943[label="error []",fontsize=16,color="red",shape="box"];10044 -> 9372[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10044[label="abs (Pos vuz3190 * Neg vuz3170)",fontsize=16,color="magenta"];10045 -> 10042[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10045[label="abs (Neg vuz429)",fontsize=16,color="magenta"];10045 -> 10176[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10046 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10046[label="abs (Pos vuz3190 * Neg vuz3170) == fromInt (Pos Zero)",fontsize=16,color="magenta"];10046 -> 10177[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8945[label="vuz428",fontsize=16,color="green",shape="box"];10047[label="vuz446",fontsize=16,color="green",shape="box"];10048 -> 9369[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10048[label="abs (Neg vuz3190 * Pos vuz3170)",fontsize=16,color="magenta"];10049 -> 10042[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10049[label="abs (Neg vuz447)",fontsize=16,color="magenta"];10049 -> 10178[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10050 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10050[label="abs (Neg vuz3190 * Pos vuz3170) == fromInt (Pos Zero)",fontsize=16,color="magenta"];10050 -> 10179[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8947[label="vuz446",fontsize=16,color="green",shape="box"];10051[label="vuz348",fontsize=16,color="green",shape="box"];10052 -> 9366[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10052[label="abs (Pos vuz3190 * Pos vuz3170)",fontsize=16,color="magenta"];10053 -> 10042[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10053[label="abs (Neg vuz349)",fontsize=16,color="magenta"];10053 -> 10180[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10054 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10054[label="abs (Pos vuz3190 * Pos vuz3170) == fromInt (Pos Zero)",fontsize=16,color="magenta"];10054 -> 10181[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8949[label="vuz348",fontsize=16,color="green",shape="box"];9862 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9862[label="abs (Pos vuz3190 * Neg vuz3170) == fromInt (Pos Zero)",fontsize=16,color="magenta"];9862 -> 10007[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9863[label="vuz354",fontsize=16,color="green",shape="box"];9864 -> 9857[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9864[label="abs (Pos vuz355)",fontsize=16,color="magenta"];9864 -> 10037[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9865 -> 9372[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9865[label="abs (Pos vuz3190 * Neg vuz3170)",fontsize=16,color="magenta"];8951[label="vuz354",fontsize=16,color="green",shape="box"];9866 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9866[label="abs (Neg vuz3190 * Neg vuz3170) == fromInt (Pos Zero)",fontsize=16,color="magenta"];9866 -> 10008[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9867[label="vuz360",fontsize=16,color="green",shape="box"];9868 -> 9857[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9868[label="abs (Pos vuz361)",fontsize=16,color="magenta"];9868 -> 10038[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9869 -> 9376[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9869[label="abs (Neg vuz3190 * Neg vuz3170)",fontsize=16,color="magenta"];8953[label="vuz360",fontsize=16,color="green",shape="box"];8954[label="vuz369",fontsize=16,color="green",shape="box"];8955[label="vuz481",fontsize=16,color="green",shape="box"];7494[label="primEqInt (Pos (Succ vuz3250)) (fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];7494 -> 7519[label="",style="solid", color="black", weight=3]; 67.83/34.97 7495[label="primEqInt (Pos Zero) (fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];7495 -> 7520[label="",style="solid", color="black", weight=3]; 67.83/34.97 8956[label="primQuotInt (Pos vuz366) (gcd0 (Pos vuz505) (Pos vuz367))",fontsize=16,color="black",shape="triangle"];8956 -> 8986[label="",style="solid", color="black", weight=3]; 67.83/34.97 8957 -> 8987[label="",style="dashed", color="red", weight=0]; 67.83/34.97 8957[label="primQuotInt (Pos vuz366) (gcd1 (Pos vuz367 == fromInt (Pos Zero)) (Pos vuz505) (Pos vuz367))",fontsize=16,color="magenta"];8957 -> 8988[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8958 -> 8615[label="",style="dashed", color="red", weight=0]; 67.83/34.97 8958[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (primMinusNat vuz3690 vuz4830) (fromInt (Pos Zero))) (primMinusNat vuz3690 vuz4830) (Pos vuz367))",fontsize=16,color="magenta"];8958 -> 8989[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8958 -> 8990[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8959 -> 8790[label="",style="dashed", color="red", weight=0]; 67.83/34.97 8959[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (Pos (Succ vuz3690)) (fromInt (Pos Zero))) (Pos (Succ vuz3690)) (Pos vuz367))",fontsize=16,color="magenta"];8959 -> 8991[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8959 -> 8992[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8960 -> 8799[label="",style="dashed", color="red", weight=0]; 67.83/34.97 8960[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (Neg (Succ vuz4830)) (fromInt (Pos Zero))) (Neg (Succ vuz4830)) (Pos vuz367))",fontsize=16,color="magenta"];8960 -> 8993[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8960 -> 8994[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8960 -> 8995[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8960 -> 8996[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8961 -> 8790[label="",style="dashed", color="red", weight=0]; 67.83/34.97 8961[label="primQuotInt (Pos vuz366) (gcd2 (primEqInt (Pos Zero) (fromInt (Pos Zero))) (Pos Zero) (Pos vuz367))",fontsize=16,color="magenta"];8961 -> 8997[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8961 -> 8998[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8962[label="vuz373",fontsize=16,color="green",shape="box"];8963[label="vuz487",fontsize=16,color="green",shape="box"];7512[label="primEqInt (Neg (Succ vuz3260)) (fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];7512 -> 7526[label="",style="solid", color="black", weight=3]; 67.83/34.97 7513[label="primEqInt (Neg Zero) (fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];7513 -> 7527[label="",style="solid", color="black", weight=3]; 67.83/34.97 8964[label="primQuotInt (Pos vuz370) (gcd0 (Neg vuz508) (Pos vuz371))",fontsize=16,color="black",shape="triangle"];8964 -> 8999[label="",style="solid", color="black", weight=3]; 67.83/34.97 8965 -> 9000[label="",style="dashed", color="red", weight=0]; 67.83/34.97 8965[label="primQuotInt (Pos vuz370) (gcd1 (Pos vuz371 == fromInt (Pos Zero)) (Neg vuz508) (Pos vuz371))",fontsize=16,color="magenta"];8965 -> 9001[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8966 -> 8630[label="",style="dashed", color="red", weight=0]; 67.83/34.97 8966[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (primMinusNat vuz4890 vuz3770) (fromInt (Pos Zero))) (primMinusNat vuz4890 vuz3770) (Neg vuz375))",fontsize=16,color="magenta"];8966 -> 9002[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8966 -> 9003[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8967 -> 8807[label="",style="dashed", color="red", weight=0]; 67.83/34.97 8967[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (Pos (Succ vuz4890)) (fromInt (Pos Zero))) (Pos (Succ vuz4890)) (Neg vuz375))",fontsize=16,color="magenta"];8967 -> 9004[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8967 -> 9005[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8967 -> 9006[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8967 -> 9007[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8968 -> 8804[label="",style="dashed", color="red", weight=0]; 67.83/34.97 8968[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (Neg (Succ vuz3770)) (fromInt (Pos Zero))) (Neg (Succ vuz3770)) (Neg vuz375))",fontsize=16,color="magenta"];8968 -> 9008[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8968 -> 9009[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8969 -> 8807[label="",style="dashed", color="red", weight=0]; 67.83/34.97 8969[label="primQuotInt (Neg vuz374) (gcd2 (primEqInt (Pos Zero) (fromInt (Pos Zero))) (Pos Zero) (Neg vuz375))",fontsize=16,color="magenta"];8969 -> 9010[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8969 -> 9011[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8969 -> 9012[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8969 -> 9013[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8970[label="vuz377",fontsize=16,color="green",shape="box"];8971[label="vuz491",fontsize=16,color="green",shape="box"];8972[label="primQuotInt (Neg vuz374) (gcd0 (Neg vuz511) (Neg vuz375))",fontsize=16,color="black",shape="triangle"];8972 -> 9014[label="",style="solid", color="black", weight=3]; 67.83/34.97 8973 -> 9015[label="",style="dashed", color="red", weight=0]; 67.83/34.97 8973[label="primQuotInt (Neg vuz374) (gcd1 (Neg vuz375 == fromInt (Pos Zero)) (Neg vuz511) (Neg vuz375))",fontsize=16,color="magenta"];8973 -> 9016[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8974[label="vuz381",fontsize=16,color="green",shape="box"];8975[label="vuz493",fontsize=16,color="green",shape="box"];8976[label="primQuotInt (Neg vuz378) (gcd0 (Pos vuz514) (Neg vuz379))",fontsize=16,color="black",shape="triangle"];8976 -> 9017[label="",style="solid", color="black", weight=3]; 67.83/34.97 8977 -> 9018[label="",style="dashed", color="red", weight=0]; 67.83/34.97 8977[label="primQuotInt (Neg vuz378) (gcd1 (Neg vuz379 == fromInt (Pos Zero)) (Pos vuz514) (Neg vuz379))",fontsize=16,color="magenta"];8977 -> 9019[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10005 -> 9366[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10005[label="abs (Pos vuz3190 * Pos vuz3170)",fontsize=16,color="magenta"];10033[label="absReal (Pos vuz399)",fontsize=16,color="black",shape="box"];10033 -> 10182[label="",style="solid", color="black", weight=3]; 67.83/34.97 9366[label="abs (Pos vuz3190 * Pos vuz3170)",fontsize=16,color="black",shape="triangle"];9366 -> 9585[label="",style="solid", color="black", weight=3]; 67.83/34.97 10034[label="primQuotInt (Pos vuz416) (gcd0Gcd'1 False vuz549 vuz542)",fontsize=16,color="black",shape="box"];10034 -> 10183[label="",style="solid", color="black", weight=3]; 67.83/34.97 10035[label="primQuotInt (Pos vuz416) (gcd0Gcd'1 True vuz549 vuz542)",fontsize=16,color="black",shape="box"];10035 -> 10184[label="",style="solid", color="black", weight=3]; 67.83/34.97 10006 -> 9369[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10006[label="abs (Neg vuz3190 * Pos vuz3170)",fontsize=16,color="magenta"];10036[label="vuz417",fontsize=16,color="green",shape="box"];9369[label="abs (Neg vuz3190 * Pos vuz3170)",fontsize=16,color="black",shape="triangle"];9369 -> 9588[label="",style="solid", color="black", weight=3]; 67.83/34.97 9376[label="abs (Neg vuz3190 * Neg vuz3170)",fontsize=16,color="black",shape="triangle"];9376 -> 9590[label="",style="solid", color="black", weight=3]; 67.83/34.97 10172[label="absReal (Neg vuz427)",fontsize=16,color="black",shape="box"];10172 -> 10202[label="",style="solid", color="black", weight=3]; 67.83/34.97 10173 -> 9376[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10173[label="abs (Neg vuz3190 * Neg vuz3170)",fontsize=16,color="magenta"];10174[label="primQuotInt (Neg vuz428) (gcd0Gcd'1 False vuz552 vuz544)",fontsize=16,color="black",shape="box"];10174 -> 10203[label="",style="solid", color="black", weight=3]; 67.83/34.97 10175[label="primQuotInt (Neg vuz428) (gcd0Gcd'1 True vuz552 vuz544)",fontsize=16,color="black",shape="box"];10175 -> 10204[label="",style="solid", color="black", weight=3]; 67.83/34.97 9372[label="abs (Pos vuz3190 * Neg vuz3170)",fontsize=16,color="black",shape="triangle"];9372 -> 9589[label="",style="solid", color="black", weight=3]; 67.83/34.97 10176[label="vuz429",fontsize=16,color="green",shape="box"];10177 -> 9372[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10177[label="abs (Pos vuz3190 * Neg vuz3170)",fontsize=16,color="magenta"];10178[label="vuz447",fontsize=16,color="green",shape="box"];10179 -> 9369[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10179[label="abs (Neg vuz3190 * Pos vuz3170)",fontsize=16,color="magenta"];10180[label="vuz349",fontsize=16,color="green",shape="box"];10181 -> 9366[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10181[label="abs (Pos vuz3190 * Pos vuz3170)",fontsize=16,color="magenta"];10007 -> 9372[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10007[label="abs (Pos vuz3190 * Neg vuz3170)",fontsize=16,color="magenta"];10037[label="vuz355",fontsize=16,color="green",shape="box"];10008 -> 9376[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10008[label="abs (Neg vuz3190 * Neg vuz3170)",fontsize=16,color="magenta"];10038[label="vuz361",fontsize=16,color="green",shape="box"];8986[label="primQuotInt (Pos vuz366) (gcd0Gcd' (abs (Pos vuz505)) (abs (Pos vuz367)))",fontsize=16,color="black",shape="box"];8986 -> 9028[label="",style="solid", color="black", weight=3]; 67.83/34.97 8988 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.97 8988[label="Pos vuz367 == fromInt (Pos Zero)",fontsize=16,color="magenta"];8988 -> 10009[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8987[label="primQuotInt (Pos vuz366) (gcd1 vuz516 (Pos vuz505) (Pos vuz367))",fontsize=16,color="burlywood",shape="triangle"];11091[label="vuz516/False",fontsize=10,color="white",style="solid",shape="box"];8987 -> 11091[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11091 -> 9030[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11092[label="vuz516/True",fontsize=10,color="white",style="solid",shape="box"];8987 -> 11092[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11092 -> 9031[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 8989[label="vuz3690",fontsize=16,color="green",shape="box"];8990[label="vuz4830",fontsize=16,color="green",shape="box"];8991[label="Succ vuz3690",fontsize=16,color="green",shape="box"];8992 -> 7479[label="",style="dashed", color="red", weight=0]; 67.83/34.97 8992[label="primEqInt (Pos (Succ vuz3690)) (fromInt (Pos Zero))",fontsize=16,color="magenta"];8992 -> 9032[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8993 -> 7498[label="",style="dashed", color="red", weight=0]; 67.83/34.97 8993[label="primEqInt (Neg (Succ vuz4830)) (fromInt (Pos Zero))",fontsize=16,color="magenta"];8993 -> 9033[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8994[label="Succ vuz4830",fontsize=16,color="green",shape="box"];8995[label="vuz366",fontsize=16,color="green",shape="box"];8996[label="vuz367",fontsize=16,color="green",shape="box"];8997[label="Zero",fontsize=16,color="green",shape="box"];8998 -> 7479[label="",style="dashed", color="red", weight=0]; 67.83/34.97 8998[label="primEqInt (Pos Zero) (fromInt (Pos Zero))",fontsize=16,color="magenta"];8998 -> 9034[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 8999[label="primQuotInt (Pos vuz370) (gcd0Gcd' (abs (Neg vuz508)) (abs (Pos vuz371)))",fontsize=16,color="black",shape="box"];8999 -> 9035[label="",style="solid", color="black", weight=3]; 67.83/34.97 9001 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9001[label="Pos vuz371 == fromInt (Pos Zero)",fontsize=16,color="magenta"];9001 -> 10010[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9000[label="primQuotInt (Pos vuz370) (gcd1 vuz517 (Neg vuz508) (Pos vuz371))",fontsize=16,color="burlywood",shape="triangle"];11093[label="vuz517/False",fontsize=10,color="white",style="solid",shape="box"];9000 -> 11093[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11093 -> 9037[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11094[label="vuz517/True",fontsize=10,color="white",style="solid",shape="box"];9000 -> 11094[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11094 -> 9038[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 9002[label="vuz4890",fontsize=16,color="green",shape="box"];9003[label="vuz3770",fontsize=16,color="green",shape="box"];9004[label="vuz375",fontsize=16,color="green",shape="box"];9005 -> 7479[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9005[label="primEqInt (Pos (Succ vuz4890)) (fromInt (Pos Zero))",fontsize=16,color="magenta"];9005 -> 9039[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9006[label="Succ vuz4890",fontsize=16,color="green",shape="box"];9007[label="vuz374",fontsize=16,color="green",shape="box"];9008 -> 7498[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9008[label="primEqInt (Neg (Succ vuz3770)) (fromInt (Pos Zero))",fontsize=16,color="magenta"];9008 -> 9040[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9009[label="Succ vuz3770",fontsize=16,color="green",shape="box"];9010[label="vuz375",fontsize=16,color="green",shape="box"];9011 -> 7479[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9011[label="primEqInt (Pos Zero) (fromInt (Pos Zero))",fontsize=16,color="magenta"];9011 -> 9041[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9012[label="Zero",fontsize=16,color="green",shape="box"];9013[label="vuz374",fontsize=16,color="green",shape="box"];9014[label="primQuotInt (Neg vuz374) (gcd0Gcd' (abs (Neg vuz511)) (abs (Neg vuz375)))",fontsize=16,color="black",shape="box"];9014 -> 9042[label="",style="solid", color="black", weight=3]; 67.83/34.97 9016 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9016[label="Neg vuz375 == fromInt (Pos Zero)",fontsize=16,color="magenta"];9016 -> 10011[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9015[label="primQuotInt (Neg vuz374) (gcd1 vuz518 (Neg vuz511) (Neg vuz375))",fontsize=16,color="burlywood",shape="triangle"];11095[label="vuz518/False",fontsize=10,color="white",style="solid",shape="box"];9015 -> 11095[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11095 -> 9044[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11096[label="vuz518/True",fontsize=10,color="white",style="solid",shape="box"];9015 -> 11096[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11096 -> 9045[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 9017[label="primQuotInt (Neg vuz378) (gcd0Gcd' (abs (Pos vuz514)) (abs (Neg vuz379)))",fontsize=16,color="black",shape="box"];9017 -> 9046[label="",style="solid", color="black", weight=3]; 67.83/34.97 9019 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9019[label="Neg vuz379 == fromInt (Pos Zero)",fontsize=16,color="magenta"];9019 -> 10012[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9018[label="primQuotInt (Neg vuz378) (gcd1 vuz519 (Pos vuz514) (Neg vuz379))",fontsize=16,color="burlywood",shape="triangle"];11097[label="vuz519/False",fontsize=10,color="white",style="solid",shape="box"];9018 -> 11097[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11097 -> 9048[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11098[label="vuz519/True",fontsize=10,color="white",style="solid",shape="box"];9018 -> 11098[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11098 -> 9049[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10182[label="absReal2 (Pos vuz399)",fontsize=16,color="black",shape="box"];10182 -> 10205[label="",style="solid", color="black", weight=3]; 67.83/34.97 9585[label="absReal (Pos vuz3190 * Pos vuz3170)",fontsize=16,color="black",shape="box"];9585 -> 9817[label="",style="solid", color="black", weight=3]; 67.83/34.97 10183[label="primQuotInt (Pos vuz416) (gcd0Gcd'0 vuz549 vuz542)",fontsize=16,color="black",shape="box"];10183 -> 10206[label="",style="solid", color="black", weight=3]; 67.83/34.97 10184[label="primQuotInt (Pos vuz416) vuz549",fontsize=16,color="burlywood",shape="triangle"];11099[label="vuz549/Pos vuz5490",fontsize=10,color="white",style="solid",shape="box"];10184 -> 11099[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11099 -> 10207[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11100[label="vuz549/Neg vuz5490",fontsize=10,color="white",style="solid",shape="box"];10184 -> 11100[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11100 -> 10208[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 9588[label="absReal (Neg vuz3190 * Pos vuz3170)",fontsize=16,color="black",shape="box"];9588 -> 9822[label="",style="solid", color="black", weight=3]; 67.83/34.97 9590[label="absReal (Neg vuz3190 * Neg vuz3170)",fontsize=16,color="black",shape="box"];9590 -> 9824[label="",style="solid", color="black", weight=3]; 67.83/34.97 10202[label="absReal2 (Neg vuz427)",fontsize=16,color="black",shape="box"];10202 -> 10246[label="",style="solid", color="black", weight=3]; 67.83/34.97 10203[label="primQuotInt (Neg vuz428) (gcd0Gcd'0 vuz552 vuz544)",fontsize=16,color="black",shape="box"];10203 -> 10247[label="",style="solid", color="black", weight=3]; 67.83/34.97 10204[label="primQuotInt (Neg vuz428) vuz552",fontsize=16,color="burlywood",shape="triangle"];11101[label="vuz552/Pos vuz5520",fontsize=10,color="white",style="solid",shape="box"];10204 -> 11101[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11101 -> 10248[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11102[label="vuz552/Neg vuz5520",fontsize=10,color="white",style="solid",shape="box"];10204 -> 11102[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11102 -> 10249[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 9589[label="absReal (Pos vuz3190 * Neg vuz3170)",fontsize=16,color="black",shape="box"];9589 -> 9823[label="",style="solid", color="black", weight=3]; 67.83/34.97 9028[label="primQuotInt (Pos vuz366) (gcd0Gcd'2 (abs (Pos vuz505)) (abs (Pos vuz367)))",fontsize=16,color="black",shape="box"];9028 -> 9058[label="",style="solid", color="black", weight=3]; 67.83/34.97 10009[label="Pos vuz367",fontsize=16,color="green",shape="box"];9030[label="primQuotInt (Pos vuz366) (gcd1 False (Pos vuz505) (Pos vuz367))",fontsize=16,color="black",shape="box"];9030 -> 9059[label="",style="solid", color="black", weight=3]; 67.83/34.97 9031[label="primQuotInt (Pos vuz366) (gcd1 True (Pos vuz505) (Pos vuz367))",fontsize=16,color="black",shape="box"];9031 -> 9060[label="",style="solid", color="black", weight=3]; 67.83/34.97 9032[label="Succ vuz3690",fontsize=16,color="green",shape="box"];9033[label="Succ vuz4830",fontsize=16,color="green",shape="box"];9034[label="Zero",fontsize=16,color="green",shape="box"];9035[label="primQuotInt (Pos vuz370) (gcd0Gcd'2 (abs (Neg vuz508)) (abs (Pos vuz371)))",fontsize=16,color="black",shape="box"];9035 -> 9061[label="",style="solid", color="black", weight=3]; 67.83/34.97 10010[label="Pos vuz371",fontsize=16,color="green",shape="box"];9037[label="primQuotInt (Pos vuz370) (gcd1 False (Neg vuz508) (Pos vuz371))",fontsize=16,color="black",shape="box"];9037 -> 9062[label="",style="solid", color="black", weight=3]; 67.83/34.97 9038[label="primQuotInt (Pos vuz370) (gcd1 True (Neg vuz508) (Pos vuz371))",fontsize=16,color="black",shape="box"];9038 -> 9063[label="",style="solid", color="black", weight=3]; 67.83/34.97 9039[label="Succ vuz4890",fontsize=16,color="green",shape="box"];9040[label="Succ vuz3770",fontsize=16,color="green",shape="box"];9041[label="Zero",fontsize=16,color="green",shape="box"];9042[label="primQuotInt (Neg vuz374) (gcd0Gcd'2 (abs (Neg vuz511)) (abs (Neg vuz375)))",fontsize=16,color="black",shape="box"];9042 -> 9064[label="",style="solid", color="black", weight=3]; 67.83/34.97 10011[label="Neg vuz375",fontsize=16,color="green",shape="box"];9044[label="primQuotInt (Neg vuz374) (gcd1 False (Neg vuz511) (Neg vuz375))",fontsize=16,color="black",shape="box"];9044 -> 9065[label="",style="solid", color="black", weight=3]; 67.83/34.97 9045[label="primQuotInt (Neg vuz374) (gcd1 True (Neg vuz511) (Neg vuz375))",fontsize=16,color="black",shape="box"];9045 -> 9066[label="",style="solid", color="black", weight=3]; 67.83/34.97 9046[label="primQuotInt (Neg vuz378) (gcd0Gcd'2 (abs (Pos vuz514)) (abs (Neg vuz379)))",fontsize=16,color="black",shape="box"];9046 -> 9067[label="",style="solid", color="black", weight=3]; 67.83/34.97 10012[label="Neg vuz379",fontsize=16,color="green",shape="box"];9048[label="primQuotInt (Neg vuz378) (gcd1 False (Pos vuz514) (Neg vuz379))",fontsize=16,color="black",shape="box"];9048 -> 9068[label="",style="solid", color="black", weight=3]; 67.83/34.97 9049[label="primQuotInt (Neg vuz378) (gcd1 True (Pos vuz514) (Neg vuz379))",fontsize=16,color="black",shape="box"];9049 -> 9069[label="",style="solid", color="black", weight=3]; 67.83/34.97 10205 -> 10185[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10205[label="absReal1 (Pos vuz399) (Pos vuz399 >= fromInt (Pos Zero))",fontsize=16,color="magenta"];10205 -> 10250[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10205 -> 10251[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9817[label="absReal2 (Pos vuz3190 * Pos vuz3170)",fontsize=16,color="black",shape="box"];9817 -> 9834[label="",style="solid", color="black", weight=3]; 67.83/34.97 10206 -> 10184[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10206[label="primQuotInt (Pos vuz416) (gcd0Gcd' vuz542 (vuz549 `rem` vuz542))",fontsize=16,color="magenta"];10206 -> 10252[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10207[label="primQuotInt (Pos vuz416) (Pos vuz5490)",fontsize=16,color="burlywood",shape="box"];11103[label="vuz5490/Succ vuz54900",fontsize=10,color="white",style="solid",shape="box"];10207 -> 11103[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11103 -> 10253[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11104[label="vuz5490/Zero",fontsize=10,color="white",style="solid",shape="box"];10207 -> 11104[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11104 -> 10254[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10208[label="primQuotInt (Pos vuz416) (Neg vuz5490)",fontsize=16,color="burlywood",shape="box"];11105[label="vuz5490/Succ vuz54900",fontsize=10,color="white",style="solid",shape="box"];10208 -> 11105[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11105 -> 10255[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11106[label="vuz5490/Zero",fontsize=10,color="white",style="solid",shape="box"];10208 -> 11106[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11106 -> 10256[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 9822[label="absReal2 (Neg vuz3190 * Pos vuz3170)",fontsize=16,color="black",shape="box"];9822 -> 9839[label="",style="solid", color="black", weight=3]; 67.83/34.97 9824[label="absReal2 (Neg vuz3190 * Neg vuz3170)",fontsize=16,color="black",shape="box"];9824 -> 9841[label="",style="solid", color="black", weight=3]; 67.83/34.97 10246 -> 10185[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10246[label="absReal1 (Neg vuz427) (Neg vuz427 >= fromInt (Pos Zero))",fontsize=16,color="magenta"];10246 -> 10266[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10246 -> 10267[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10247 -> 10204[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10247[label="primQuotInt (Neg vuz428) (gcd0Gcd' vuz544 (vuz552 `rem` vuz544))",fontsize=16,color="magenta"];10247 -> 10268[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10248[label="primQuotInt (Neg vuz428) (Pos vuz5520)",fontsize=16,color="burlywood",shape="box"];11107[label="vuz5520/Succ vuz55200",fontsize=10,color="white",style="solid",shape="box"];10248 -> 11107[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11107 -> 10269[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11108[label="vuz5520/Zero",fontsize=10,color="white",style="solid",shape="box"];10248 -> 11108[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11108 -> 10270[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10249[label="primQuotInt (Neg vuz428) (Neg vuz5520)",fontsize=16,color="burlywood",shape="box"];11109[label="vuz5520/Succ vuz55200",fontsize=10,color="white",style="solid",shape="box"];10249 -> 11109[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11109 -> 10271[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11110[label="vuz5520/Zero",fontsize=10,color="white",style="solid",shape="box"];10249 -> 11110[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11110 -> 10272[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 9823[label="absReal2 (Pos vuz3190 * Neg vuz3170)",fontsize=16,color="black",shape="box"];9823 -> 9840[label="",style="solid", color="black", weight=3]; 67.83/34.97 9058 -> 9854[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9058[label="primQuotInt (Pos vuz366) (gcd0Gcd'1 (abs (Pos vuz367) == fromInt (Pos Zero)) (abs (Pos vuz505)) (abs (Pos vuz367)))",fontsize=16,color="magenta"];9058 -> 9887[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9058 -> 9888[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9058 -> 9889[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9058 -> 9890[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9059 -> 8956[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9059[label="primQuotInt (Pos vuz366) (gcd0 (Pos vuz505) (Pos vuz367))",fontsize=16,color="magenta"];9060 -> 8816[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9060[label="primQuotInt (Pos vuz366) (error [])",fontsize=16,color="magenta"];9060 -> 9079[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9061 -> 9854[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9061[label="primQuotInt (Pos vuz370) (gcd0Gcd'1 (abs (Pos vuz371) == fromInt (Pos Zero)) (abs (Neg vuz508)) (abs (Pos vuz371)))",fontsize=16,color="magenta"];9061 -> 9891[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9061 -> 9892[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9061 -> 9893[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9061 -> 9894[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9062 -> 8964[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9062[label="primQuotInt (Pos vuz370) (gcd0 (Neg vuz508) (Pos vuz371))",fontsize=16,color="magenta"];9063 -> 8816[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9063[label="primQuotInt (Pos vuz370) (error [])",fontsize=16,color="magenta"];9063 -> 9081[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9064 -> 10039[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9064[label="primQuotInt (Neg vuz374) (gcd0Gcd'1 (abs (Neg vuz375) == fromInt (Pos Zero)) (abs (Neg vuz511)) (abs (Neg vuz375)))",fontsize=16,color="magenta"];9064 -> 10072[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9064 -> 10073[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9064 -> 10074[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9064 -> 10075[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9065 -> 8972[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9065[label="primQuotInt (Neg vuz374) (gcd0 (Neg vuz511) (Neg vuz375))",fontsize=16,color="magenta"];9066 -> 8849[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9066[label="primQuotInt (Neg vuz374) (error [])",fontsize=16,color="magenta"];9066 -> 9083[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9067 -> 10039[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9067[label="primQuotInt (Neg vuz378) (gcd0Gcd'1 (abs (Neg vuz379) == fromInt (Pos Zero)) (abs (Pos vuz514)) (abs (Neg vuz379)))",fontsize=16,color="magenta"];9067 -> 10076[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9067 -> 10077[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9067 -> 10078[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9067 -> 10079[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9068 -> 8976[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9068[label="primQuotInt (Neg vuz378) (gcd0 (Pos vuz514) (Neg vuz379))",fontsize=16,color="magenta"];9069 -> 8849[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9069[label="primQuotInt (Neg vuz378) (error [])",fontsize=16,color="magenta"];9069 -> 9085[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10250[label="Pos vuz399",fontsize=16,color="green",shape="box"];10251[label="Pos vuz399",fontsize=16,color="green",shape="box"];10185[label="absReal1 vuz554 (vuz555 >= fromInt (Pos Zero))",fontsize=16,color="black",shape="triangle"];10185 -> 10223[label="",style="solid", color="black", weight=3]; 67.83/34.97 9834 -> 10185[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9834[label="absReal1 (Pos vuz3190 * Pos vuz3170) (Pos vuz3190 * Pos vuz3170 >= fromInt (Pos Zero))",fontsize=16,color="magenta"];9834 -> 10186[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9834 -> 10187[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10252[label="gcd0Gcd' vuz542 (vuz549 `rem` vuz542)",fontsize=16,color="black",shape="triangle"];10252 -> 10273[label="",style="solid", color="black", weight=3]; 67.83/34.97 10253[label="primQuotInt (Pos vuz416) (Pos (Succ vuz54900))",fontsize=16,color="black",shape="box"];10253 -> 10274[label="",style="solid", color="black", weight=3]; 67.83/34.97 10254[label="primQuotInt (Pos vuz416) (Pos Zero)",fontsize=16,color="black",shape="box"];10254 -> 10275[label="",style="solid", color="black", weight=3]; 67.83/34.97 10255[label="primQuotInt (Pos vuz416) (Neg (Succ vuz54900))",fontsize=16,color="black",shape="box"];10255 -> 10276[label="",style="solid", color="black", weight=3]; 67.83/34.97 10256[label="primQuotInt (Pos vuz416) (Neg Zero)",fontsize=16,color="black",shape="box"];10256 -> 10277[label="",style="solid", color="black", weight=3]; 67.83/34.97 9839 -> 10185[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9839[label="absReal1 (Neg vuz3190 * Pos vuz3170) (Neg vuz3190 * Pos vuz3170 >= fromInt (Pos Zero))",fontsize=16,color="magenta"];9839 -> 10188[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9839 -> 10189[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9841 -> 10185[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9841[label="absReal1 (Neg vuz3190 * Neg vuz3170) (Neg vuz3190 * Neg vuz3170 >= fromInt (Pos Zero))",fontsize=16,color="magenta"];9841 -> 10190[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9841 -> 10191[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10266[label="Neg vuz427",fontsize=16,color="green",shape="box"];10267[label="Neg vuz427",fontsize=16,color="green",shape="box"];10268 -> 10252[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10268[label="gcd0Gcd' vuz544 (vuz552 `rem` vuz544)",fontsize=16,color="magenta"];10268 -> 10283[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10268 -> 10284[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10269[label="primQuotInt (Neg vuz428) (Pos (Succ vuz55200))",fontsize=16,color="black",shape="box"];10269 -> 10285[label="",style="solid", color="black", weight=3]; 67.83/34.97 10270[label="primQuotInt (Neg vuz428) (Pos Zero)",fontsize=16,color="black",shape="box"];10270 -> 10286[label="",style="solid", color="black", weight=3]; 67.83/34.97 10271[label="primQuotInt (Neg vuz428) (Neg (Succ vuz55200))",fontsize=16,color="black",shape="box"];10271 -> 10287[label="",style="solid", color="black", weight=3]; 67.83/34.97 10272[label="primQuotInt (Neg vuz428) (Neg Zero)",fontsize=16,color="black",shape="box"];10272 -> 10288[label="",style="solid", color="black", weight=3]; 67.83/34.97 9840 -> 10185[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9840[label="absReal1 (Pos vuz3190 * Neg vuz3170) (Pos vuz3190 * Neg vuz3170 >= fromInt (Pos Zero))",fontsize=16,color="magenta"];9840 -> 10192[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9840 -> 10193[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9887 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9887[label="abs (Pos vuz367) == fromInt (Pos Zero)",fontsize=16,color="magenta"];9887 -> 10013[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9888[label="vuz366",fontsize=16,color="green",shape="box"];9889 -> 9857[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9889[label="abs (Pos vuz505)",fontsize=16,color="magenta"];9889 -> 10209[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9890 -> 9857[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9890[label="abs (Pos vuz367)",fontsize=16,color="magenta"];9890 -> 10210[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9079[label="vuz366",fontsize=16,color="green",shape="box"];9891 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9891[label="abs (Pos vuz371) == fromInt (Pos Zero)",fontsize=16,color="magenta"];9891 -> 10014[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9892[label="vuz370",fontsize=16,color="green",shape="box"];9893 -> 10042[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9893[label="abs (Neg vuz508)",fontsize=16,color="magenta"];9893 -> 10211[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9894 -> 9857[label="",style="dashed", color="red", weight=0]; 67.83/34.97 9894[label="abs (Pos vuz371)",fontsize=16,color="magenta"];9894 -> 10212[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9081[label="vuz370",fontsize=16,color="green",shape="box"];10072[label="vuz374",fontsize=16,color="green",shape="box"];10073 -> 10042[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10073[label="abs (Neg vuz375)",fontsize=16,color="magenta"];10073 -> 10213[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10074 -> 10042[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10074[label="abs (Neg vuz511)",fontsize=16,color="magenta"];10074 -> 10214[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10075 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10075[label="abs (Neg vuz375) == fromInt (Pos Zero)",fontsize=16,color="magenta"];10075 -> 10215[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9083[label="vuz374",fontsize=16,color="green",shape="box"];10076[label="vuz378",fontsize=16,color="green",shape="box"];10077 -> 10042[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10077[label="abs (Neg vuz379)",fontsize=16,color="magenta"];10077 -> 10216[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10078 -> 9857[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10078[label="abs (Pos vuz514)",fontsize=16,color="magenta"];10078 -> 10217[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10079 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10079[label="abs (Neg vuz379) == fromInt (Pos Zero)",fontsize=16,color="magenta"];10079 -> 10218[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 9085[label="vuz378",fontsize=16,color="green",shape="box"];10223[label="absReal1 vuz554 (compare vuz555 (fromInt (Pos Zero)) /= LT)",fontsize=16,color="black",shape="box"];10223 -> 10259[label="",style="solid", color="black", weight=3]; 67.83/34.97 10186 -> 9988[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10186[label="Pos vuz3190 * Pos vuz3170",fontsize=16,color="magenta"];10186 -> 10219[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10186 -> 10220[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10187 -> 9988[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10187[label="Pos vuz3190 * Pos vuz3170",fontsize=16,color="magenta"];10187 -> 10221[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10187 -> 10222[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10273[label="gcd0Gcd'2 vuz542 (vuz549 `rem` vuz542)",fontsize=16,color="black",shape="box"];10273 -> 10289[label="",style="solid", color="black", weight=3]; 67.83/34.97 10274[label="Pos (primDivNatS vuz416 (Succ vuz54900))",fontsize=16,color="green",shape="box"];10274 -> 10290[label="",style="dashed", color="green", weight=3]; 67.83/34.97 10275[label="error []",fontsize=16,color="black",shape="triangle"];10275 -> 10291[label="",style="solid", color="black", weight=3]; 67.83/34.97 10276[label="Neg (primDivNatS vuz416 (Succ vuz54900))",fontsize=16,color="green",shape="box"];10276 -> 10292[label="",style="dashed", color="green", weight=3]; 67.83/34.97 10277 -> 10275[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10277[label="error []",fontsize=16,color="magenta"];10188 -> 9988[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10188[label="Neg vuz3190 * Pos vuz3170",fontsize=16,color="magenta"];10188 -> 10224[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10188 -> 10225[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10189 -> 9988[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10189[label="Neg vuz3190 * Pos vuz3170",fontsize=16,color="magenta"];10189 -> 10226[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10189 -> 10227[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10190 -> 9988[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10190[label="Neg vuz3190 * Neg vuz3170",fontsize=16,color="magenta"];10190 -> 10228[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10190 -> 10229[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10191 -> 9988[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10191[label="Neg vuz3190 * Neg vuz3170",fontsize=16,color="magenta"];10191 -> 10230[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10191 -> 10231[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10283[label="vuz552",fontsize=16,color="green",shape="box"];10284[label="vuz544",fontsize=16,color="green",shape="box"];10285[label="Neg (primDivNatS vuz428 (Succ vuz55200))",fontsize=16,color="green",shape="box"];10285 -> 10295[label="",style="dashed", color="green", weight=3]; 67.83/34.97 10286 -> 10275[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10286[label="error []",fontsize=16,color="magenta"];10287[label="Pos (primDivNatS vuz428 (Succ vuz55200))",fontsize=16,color="green",shape="box"];10287 -> 10296[label="",style="dashed", color="green", weight=3]; 67.83/34.97 10288 -> 10275[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10288[label="error []",fontsize=16,color="magenta"];10192 -> 9988[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10192[label="Pos vuz3190 * Neg vuz3170",fontsize=16,color="magenta"];10192 -> 10232[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10192 -> 10233[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10193 -> 9988[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10193[label="Pos vuz3190 * Neg vuz3170",fontsize=16,color="magenta"];10193 -> 10234[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10193 -> 10235[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10013 -> 9857[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10013[label="abs (Pos vuz367)",fontsize=16,color="magenta"];10013 -> 10236[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10209[label="vuz505",fontsize=16,color="green",shape="box"];10210[label="vuz367",fontsize=16,color="green",shape="box"];10014 -> 9857[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10014[label="abs (Pos vuz371)",fontsize=16,color="magenta"];10014 -> 10237[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10211[label="vuz508",fontsize=16,color="green",shape="box"];10212[label="vuz371",fontsize=16,color="green",shape="box"];10213[label="vuz375",fontsize=16,color="green",shape="box"];10214[label="vuz511",fontsize=16,color="green",shape="box"];10215 -> 10042[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10215[label="abs (Neg vuz375)",fontsize=16,color="magenta"];10215 -> 10257[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10216[label="vuz379",fontsize=16,color="green",shape="box"];10217[label="vuz514",fontsize=16,color="green",shape="box"];10218 -> 10042[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10218[label="abs (Neg vuz379)",fontsize=16,color="magenta"];10218 -> 10258[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10259[label="absReal1 vuz554 (not (compare vuz555 (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];10259 -> 10278[label="",style="solid", color="black", weight=3]; 67.83/34.97 10219[label="Pos vuz3170",fontsize=16,color="green",shape="box"];10220[label="Pos vuz3190",fontsize=16,color="green",shape="box"];10221[label="Pos vuz3170",fontsize=16,color="green",shape="box"];10222[label="Pos vuz3190",fontsize=16,color="green",shape="box"];10289 -> 10297[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10289[label="gcd0Gcd'1 (vuz549 `rem` vuz542 == fromInt (Pos Zero)) vuz542 (vuz549 `rem` vuz542)",fontsize=16,color="magenta"];10289 -> 10298[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10290[label="primDivNatS vuz416 (Succ vuz54900)",fontsize=16,color="burlywood",shape="triangle"];11111[label="vuz416/Succ vuz4160",fontsize=10,color="white",style="solid",shape="box"];10290 -> 11111[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11111 -> 10299[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11112[label="vuz416/Zero",fontsize=10,color="white",style="solid",shape="box"];10290 -> 11112[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11112 -> 10300[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10291[label="error []",fontsize=16,color="red",shape="box"];10292 -> 10290[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10292[label="primDivNatS vuz416 (Succ vuz54900)",fontsize=16,color="magenta"];10292 -> 10301[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10224[label="Pos vuz3170",fontsize=16,color="green",shape="box"];10225[label="Neg vuz3190",fontsize=16,color="green",shape="box"];10226[label="Pos vuz3170",fontsize=16,color="green",shape="box"];10227[label="Neg vuz3190",fontsize=16,color="green",shape="box"];10228[label="Neg vuz3170",fontsize=16,color="green",shape="box"];10229[label="Neg vuz3190",fontsize=16,color="green",shape="box"];10230[label="Neg vuz3170",fontsize=16,color="green",shape="box"];10231[label="Neg vuz3190",fontsize=16,color="green",shape="box"];10295 -> 10290[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10295[label="primDivNatS vuz428 (Succ vuz55200)",fontsize=16,color="magenta"];10295 -> 10302[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10295 -> 10303[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10296 -> 10290[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10296[label="primDivNatS vuz428 (Succ vuz55200)",fontsize=16,color="magenta"];10296 -> 10304[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10296 -> 10305[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10232[label="Neg vuz3170",fontsize=16,color="green",shape="box"];10233[label="Pos vuz3190",fontsize=16,color="green",shape="box"];10234[label="Neg vuz3170",fontsize=16,color="green",shape="box"];10235[label="Pos vuz3190",fontsize=16,color="green",shape="box"];10236[label="vuz367",fontsize=16,color="green",shape="box"];10237[label="vuz371",fontsize=16,color="green",shape="box"];10257[label="vuz375",fontsize=16,color="green",shape="box"];10258[label="vuz379",fontsize=16,color="green",shape="box"];10278[label="absReal1 vuz554 (not (primCmpInt vuz555 (fromInt (Pos Zero)) == LT))",fontsize=16,color="burlywood",shape="box"];11113[label="vuz555/Pos vuz5550",fontsize=10,color="white",style="solid",shape="box"];10278 -> 11113[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11113 -> 10293[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11114[label="vuz555/Neg vuz5550",fontsize=10,color="white",style="solid",shape="box"];10278 -> 11114[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11114 -> 10294[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10298 -> 9987[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10298[label="vuz549 `rem` vuz542 == fromInt (Pos Zero)",fontsize=16,color="magenta"];10298 -> 10306[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10297[label="gcd0Gcd'1 vuz556 vuz542 (vuz549 `rem` vuz542)",fontsize=16,color="burlywood",shape="triangle"];11115[label="vuz556/False",fontsize=10,color="white",style="solid",shape="box"];10297 -> 11115[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11115 -> 10307[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11116[label="vuz556/True",fontsize=10,color="white",style="solid",shape="box"];10297 -> 11116[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11116 -> 10308[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10299[label="primDivNatS (Succ vuz4160) (Succ vuz54900)",fontsize=16,color="black",shape="box"];10299 -> 10313[label="",style="solid", color="black", weight=3]; 67.83/34.97 10300[label="primDivNatS Zero (Succ vuz54900)",fontsize=16,color="black",shape="box"];10300 -> 10314[label="",style="solid", color="black", weight=3]; 67.83/34.97 10301[label="vuz54900",fontsize=16,color="green",shape="box"];10302[label="vuz428",fontsize=16,color="green",shape="box"];10303[label="vuz55200",fontsize=16,color="green",shape="box"];10304[label="vuz428",fontsize=16,color="green",shape="box"];10305[label="vuz55200",fontsize=16,color="green",shape="box"];10293[label="absReal1 vuz554 (not (primCmpInt (Pos vuz5550) (fromInt (Pos Zero)) == LT))",fontsize=16,color="burlywood",shape="box"];11117[label="vuz5550/Succ vuz55500",fontsize=10,color="white",style="solid",shape="box"];10293 -> 11117[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11117 -> 10309[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11118[label="vuz5550/Zero",fontsize=10,color="white",style="solid",shape="box"];10293 -> 11118[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11118 -> 10310[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10294[label="absReal1 vuz554 (not (primCmpInt (Neg vuz5550) (fromInt (Pos Zero)) == LT))",fontsize=16,color="burlywood",shape="box"];11119[label="vuz5550/Succ vuz55500",fontsize=10,color="white",style="solid",shape="box"];10294 -> 11119[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11119 -> 10311[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11120[label="vuz5550/Zero",fontsize=10,color="white",style="solid",shape="box"];10294 -> 11120[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11120 -> 10312[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10306[label="vuz549 `rem` vuz542",fontsize=16,color="black",shape="triangle"];10306 -> 10315[label="",style="solid", color="black", weight=3]; 67.83/34.97 10307[label="gcd0Gcd'1 False vuz542 (vuz549 `rem` vuz542)",fontsize=16,color="black",shape="box"];10307 -> 10316[label="",style="solid", color="black", weight=3]; 67.83/34.97 10308[label="gcd0Gcd'1 True vuz542 (vuz549 `rem` vuz542)",fontsize=16,color="black",shape="box"];10308 -> 10317[label="",style="solid", color="black", weight=3]; 67.83/34.97 10313[label="primDivNatS0 vuz4160 vuz54900 (primGEqNatS vuz4160 vuz54900)",fontsize=16,color="burlywood",shape="box"];11121[label="vuz4160/Succ vuz41600",fontsize=10,color="white",style="solid",shape="box"];10313 -> 11121[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11121 -> 10322[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11122[label="vuz4160/Zero",fontsize=10,color="white",style="solid",shape="box"];10313 -> 11122[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11122 -> 10323[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10314[label="Zero",fontsize=16,color="green",shape="box"];10309[label="absReal1 vuz554 (not (primCmpInt (Pos (Succ vuz55500)) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];10309 -> 10318[label="",style="solid", color="black", weight=3]; 67.83/34.97 10310[label="absReal1 vuz554 (not (primCmpInt (Pos Zero) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];10310 -> 10319[label="",style="solid", color="black", weight=3]; 67.83/34.97 10311[label="absReal1 vuz554 (not (primCmpInt (Neg (Succ vuz55500)) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];10311 -> 10320[label="",style="solid", color="black", weight=3]; 67.83/34.97 10312[label="absReal1 vuz554 (not (primCmpInt (Neg Zero) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];10312 -> 10321[label="",style="solid", color="black", weight=3]; 67.83/34.97 10315[label="primRemInt vuz549 vuz542",fontsize=16,color="burlywood",shape="box"];11123[label="vuz549/Pos vuz5490",fontsize=10,color="white",style="solid",shape="box"];10315 -> 11123[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11123 -> 10324[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11124[label="vuz549/Neg vuz5490",fontsize=10,color="white",style="solid",shape="box"];10315 -> 11124[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11124 -> 10325[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10316 -> 10326[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10316[label="gcd0Gcd'0 vuz542 (vuz549 `rem` vuz542)",fontsize=16,color="magenta"];10316 -> 10327[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10317[label="vuz542",fontsize=16,color="green",shape="box"];10322[label="primDivNatS0 (Succ vuz41600) vuz54900 (primGEqNatS (Succ vuz41600) vuz54900)",fontsize=16,color="burlywood",shape="box"];11125[label="vuz54900/Succ vuz549000",fontsize=10,color="white",style="solid",shape="box"];10322 -> 11125[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11125 -> 10328[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11126[label="vuz54900/Zero",fontsize=10,color="white",style="solid",shape="box"];10322 -> 11126[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11126 -> 10329[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10323[label="primDivNatS0 Zero vuz54900 (primGEqNatS Zero vuz54900)",fontsize=16,color="burlywood",shape="box"];11127[label="vuz54900/Succ vuz549000",fontsize=10,color="white",style="solid",shape="box"];10323 -> 11127[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11127 -> 10330[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11128[label="vuz54900/Zero",fontsize=10,color="white",style="solid",shape="box"];10323 -> 11128[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11128 -> 10331[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10318[label="absReal1 vuz554 (not (primCmpInt (Pos (Succ vuz55500)) (Pos Zero) == LT))",fontsize=16,color="black",shape="box"];10318 -> 10332[label="",style="solid", color="black", weight=3]; 67.83/34.97 10319[label="absReal1 vuz554 (not (primCmpInt (Pos Zero) (Pos Zero) == LT))",fontsize=16,color="black",shape="box"];10319 -> 10333[label="",style="solid", color="black", weight=3]; 67.83/34.97 10320[label="absReal1 vuz554 (not (primCmpInt (Neg (Succ vuz55500)) (Pos Zero) == LT))",fontsize=16,color="black",shape="box"];10320 -> 10334[label="",style="solid", color="black", weight=3]; 67.83/34.97 10321[label="absReal1 vuz554 (not (primCmpInt (Neg Zero) (Pos Zero) == LT))",fontsize=16,color="black",shape="box"];10321 -> 10335[label="",style="solid", color="black", weight=3]; 67.83/34.97 10324[label="primRemInt (Pos vuz5490) vuz542",fontsize=16,color="burlywood",shape="box"];11129[label="vuz542/Pos vuz5420",fontsize=10,color="white",style="solid",shape="box"];10324 -> 11129[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11129 -> 10336[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11130[label="vuz542/Neg vuz5420",fontsize=10,color="white",style="solid",shape="box"];10324 -> 11130[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11130 -> 10337[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10325[label="primRemInt (Neg vuz5490) vuz542",fontsize=16,color="burlywood",shape="box"];11131[label="vuz542/Pos vuz5420",fontsize=10,color="white",style="solid",shape="box"];10325 -> 11131[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11131 -> 10338[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11132[label="vuz542/Neg vuz5420",fontsize=10,color="white",style="solid",shape="box"];10325 -> 11132[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11132 -> 10339[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10327 -> 10306[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10327[label="vuz549 `rem` vuz542",fontsize=16,color="magenta"];10326[label="gcd0Gcd'0 vuz542 vuz557",fontsize=16,color="black",shape="triangle"];10326 -> 10340[label="",style="solid", color="black", weight=3]; 67.83/34.97 10328[label="primDivNatS0 (Succ vuz41600) (Succ vuz549000) (primGEqNatS (Succ vuz41600) (Succ vuz549000))",fontsize=16,color="black",shape="box"];10328 -> 10341[label="",style="solid", color="black", weight=3]; 67.83/34.97 10329[label="primDivNatS0 (Succ vuz41600) Zero (primGEqNatS (Succ vuz41600) Zero)",fontsize=16,color="black",shape="box"];10329 -> 10342[label="",style="solid", color="black", weight=3]; 67.83/34.97 10330[label="primDivNatS0 Zero (Succ vuz549000) (primGEqNatS Zero (Succ vuz549000))",fontsize=16,color="black",shape="box"];10330 -> 10343[label="",style="solid", color="black", weight=3]; 67.83/34.97 10331[label="primDivNatS0 Zero Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];10331 -> 10344[label="",style="solid", color="black", weight=3]; 67.83/34.97 10332[label="absReal1 vuz554 (not (primCmpNat (Succ vuz55500) Zero == LT))",fontsize=16,color="black",shape="box"];10332 -> 10345[label="",style="solid", color="black", weight=3]; 67.83/34.97 10333[label="absReal1 vuz554 (not (EQ == LT))",fontsize=16,color="black",shape="triangle"];10333 -> 10346[label="",style="solid", color="black", weight=3]; 67.83/34.97 10334[label="absReal1 vuz554 (not (LT == LT))",fontsize=16,color="black",shape="box"];10334 -> 10347[label="",style="solid", color="black", weight=3]; 67.83/34.97 10335 -> 10333[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10335[label="absReal1 vuz554 (not (EQ == LT))",fontsize=16,color="magenta"];10336[label="primRemInt (Pos vuz5490) (Pos vuz5420)",fontsize=16,color="burlywood",shape="box"];11133[label="vuz5420/Succ vuz54200",fontsize=10,color="white",style="solid",shape="box"];10336 -> 11133[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11133 -> 10348[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11134[label="vuz5420/Zero",fontsize=10,color="white",style="solid",shape="box"];10336 -> 11134[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11134 -> 10349[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10337[label="primRemInt (Pos vuz5490) (Neg vuz5420)",fontsize=16,color="burlywood",shape="box"];11135[label="vuz5420/Succ vuz54200",fontsize=10,color="white",style="solid",shape="box"];10337 -> 11135[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11135 -> 10350[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11136[label="vuz5420/Zero",fontsize=10,color="white",style="solid",shape="box"];10337 -> 11136[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11136 -> 10351[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10338[label="primRemInt (Neg vuz5490) (Pos vuz5420)",fontsize=16,color="burlywood",shape="box"];11137[label="vuz5420/Succ vuz54200",fontsize=10,color="white",style="solid",shape="box"];10338 -> 11137[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11137 -> 10352[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11138[label="vuz5420/Zero",fontsize=10,color="white",style="solid",shape="box"];10338 -> 11138[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11138 -> 10353[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10339[label="primRemInt (Neg vuz5490) (Neg vuz5420)",fontsize=16,color="burlywood",shape="box"];11139[label="vuz5420/Succ vuz54200",fontsize=10,color="white",style="solid",shape="box"];10339 -> 11139[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11139 -> 10354[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11140[label="vuz5420/Zero",fontsize=10,color="white",style="solid",shape="box"];10339 -> 11140[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11140 -> 10355[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10340 -> 10252[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10340[label="gcd0Gcd' vuz557 (vuz542 `rem` vuz557)",fontsize=16,color="magenta"];10340 -> 10356[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10340 -> 10357[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10341 -> 10629[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10341[label="primDivNatS0 (Succ vuz41600) (Succ vuz549000) (primGEqNatS vuz41600 vuz549000)",fontsize=16,color="magenta"];10341 -> 10630[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10341 -> 10631[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10341 -> 10632[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10341 -> 10633[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10342[label="primDivNatS0 (Succ vuz41600) Zero True",fontsize=16,color="black",shape="box"];10342 -> 10360[label="",style="solid", color="black", weight=3]; 67.83/34.97 10343[label="primDivNatS0 Zero (Succ vuz549000) False",fontsize=16,color="black",shape="box"];10343 -> 10361[label="",style="solid", color="black", weight=3]; 67.83/34.97 10344[label="primDivNatS0 Zero Zero True",fontsize=16,color="black",shape="box"];10344 -> 10362[label="",style="solid", color="black", weight=3]; 67.83/34.97 10345[label="absReal1 vuz554 (not (GT == LT))",fontsize=16,color="black",shape="box"];10345 -> 10363[label="",style="solid", color="black", weight=3]; 67.83/34.97 10346[label="absReal1 vuz554 (not False)",fontsize=16,color="black",shape="triangle"];10346 -> 10364[label="",style="solid", color="black", weight=3]; 67.83/34.97 10347[label="absReal1 vuz554 (not True)",fontsize=16,color="black",shape="box"];10347 -> 10365[label="",style="solid", color="black", weight=3]; 67.83/34.97 10348[label="primRemInt (Pos vuz5490) (Pos (Succ vuz54200))",fontsize=16,color="black",shape="box"];10348 -> 10366[label="",style="solid", color="black", weight=3]; 67.83/34.97 10349[label="primRemInt (Pos vuz5490) (Pos Zero)",fontsize=16,color="black",shape="box"];10349 -> 10367[label="",style="solid", color="black", weight=3]; 67.83/34.97 10350[label="primRemInt (Pos vuz5490) (Neg (Succ vuz54200))",fontsize=16,color="black",shape="box"];10350 -> 10368[label="",style="solid", color="black", weight=3]; 67.83/34.97 10351[label="primRemInt (Pos vuz5490) (Neg Zero)",fontsize=16,color="black",shape="box"];10351 -> 10369[label="",style="solid", color="black", weight=3]; 67.83/34.97 10352[label="primRemInt (Neg vuz5490) (Pos (Succ vuz54200))",fontsize=16,color="black",shape="box"];10352 -> 10370[label="",style="solid", color="black", weight=3]; 67.83/34.97 10353[label="primRemInt (Neg vuz5490) (Pos Zero)",fontsize=16,color="black",shape="box"];10353 -> 10371[label="",style="solid", color="black", weight=3]; 67.83/34.97 10354[label="primRemInt (Neg vuz5490) (Neg (Succ vuz54200))",fontsize=16,color="black",shape="box"];10354 -> 10372[label="",style="solid", color="black", weight=3]; 67.83/34.97 10355[label="primRemInt (Neg vuz5490) (Neg Zero)",fontsize=16,color="black",shape="box"];10355 -> 10373[label="",style="solid", color="black", weight=3]; 67.83/34.97 10356[label="vuz542",fontsize=16,color="green",shape="box"];10357[label="vuz557",fontsize=16,color="green",shape="box"];10630[label="vuz41600",fontsize=16,color="green",shape="box"];10631[label="vuz41600",fontsize=16,color="green",shape="box"];10632[label="vuz549000",fontsize=16,color="green",shape="box"];10633[label="vuz549000",fontsize=16,color="green",shape="box"];10629[label="primDivNatS0 (Succ vuz574) (Succ vuz575) (primGEqNatS vuz576 vuz577)",fontsize=16,color="burlywood",shape="triangle"];11141[label="vuz576/Succ vuz5760",fontsize=10,color="white",style="solid",shape="box"];10629 -> 11141[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11141 -> 10662[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11142[label="vuz576/Zero",fontsize=10,color="white",style="solid",shape="box"];10629 -> 11142[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11142 -> 10663[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10360[label="Succ (primDivNatS (primMinusNatS (Succ vuz41600) Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];10360 -> 10378[label="",style="dashed", color="green", weight=3]; 67.83/34.97 10361[label="Zero",fontsize=16,color="green",shape="box"];10362[label="Succ (primDivNatS (primMinusNatS Zero Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];10362 -> 10379[label="",style="dashed", color="green", weight=3]; 67.83/34.97 10363 -> 10346[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10363[label="absReal1 vuz554 (not False)",fontsize=16,color="magenta"];10364[label="absReal1 vuz554 True",fontsize=16,color="black",shape="box"];10364 -> 10380[label="",style="solid", color="black", weight=3]; 67.83/34.97 10365[label="absReal1 vuz554 False",fontsize=16,color="black",shape="box"];10365 -> 10381[label="",style="solid", color="black", weight=3]; 67.83/34.97 10366[label="Pos (primModNatS vuz5490 (Succ vuz54200))",fontsize=16,color="green",shape="box"];10366 -> 10382[label="",style="dashed", color="green", weight=3]; 67.83/34.97 10367 -> 10275[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10367[label="error []",fontsize=16,color="magenta"];10368[label="Pos (primModNatS vuz5490 (Succ vuz54200))",fontsize=16,color="green",shape="box"];10368 -> 10383[label="",style="dashed", color="green", weight=3]; 67.83/34.97 10369 -> 10275[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10369[label="error []",fontsize=16,color="magenta"];10370[label="Neg (primModNatS vuz5490 (Succ vuz54200))",fontsize=16,color="green",shape="box"];10370 -> 10384[label="",style="dashed", color="green", weight=3]; 67.83/34.97 10371 -> 10275[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10371[label="error []",fontsize=16,color="magenta"];10372[label="Neg (primModNatS vuz5490 (Succ vuz54200))",fontsize=16,color="green",shape="box"];10372 -> 10385[label="",style="dashed", color="green", weight=3]; 67.83/34.97 10373 -> 10275[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10373[label="error []",fontsize=16,color="magenta"];10662[label="primDivNatS0 (Succ vuz574) (Succ vuz575) (primGEqNatS (Succ vuz5760) vuz577)",fontsize=16,color="burlywood",shape="box"];11143[label="vuz577/Succ vuz5770",fontsize=10,color="white",style="solid",shape="box"];10662 -> 11143[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11143 -> 10670[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11144[label="vuz577/Zero",fontsize=10,color="white",style="solid",shape="box"];10662 -> 11144[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11144 -> 10671[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10663[label="primDivNatS0 (Succ vuz574) (Succ vuz575) (primGEqNatS Zero vuz577)",fontsize=16,color="burlywood",shape="box"];11145[label="vuz577/Succ vuz5770",fontsize=10,color="white",style="solid",shape="box"];10663 -> 11145[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11145 -> 10672[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11146[label="vuz577/Zero",fontsize=10,color="white",style="solid",shape="box"];10663 -> 11146[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11146 -> 10673[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10378 -> 10290[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10378[label="primDivNatS (primMinusNatS (Succ vuz41600) Zero) (Succ Zero)",fontsize=16,color="magenta"];10378 -> 10390[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10378 -> 10391[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10379 -> 10290[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10379[label="primDivNatS (primMinusNatS Zero Zero) (Succ Zero)",fontsize=16,color="magenta"];10379 -> 10392[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10379 -> 10393[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10380[label="vuz554",fontsize=16,color="green",shape="box"];10381[label="absReal0 vuz554 otherwise",fontsize=16,color="black",shape="box"];10381 -> 10394[label="",style="solid", color="black", weight=3]; 67.83/34.97 10382[label="primModNatS vuz5490 (Succ vuz54200)",fontsize=16,color="burlywood",shape="triangle"];11147[label="vuz5490/Succ vuz54900",fontsize=10,color="white",style="solid",shape="box"];10382 -> 11147[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11147 -> 10395[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11148[label="vuz5490/Zero",fontsize=10,color="white",style="solid",shape="box"];10382 -> 11148[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11148 -> 10396[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10383 -> 10382[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10383[label="primModNatS vuz5490 (Succ vuz54200)",fontsize=16,color="magenta"];10383 -> 10397[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10384 -> 10382[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10384[label="primModNatS vuz5490 (Succ vuz54200)",fontsize=16,color="magenta"];10384 -> 10398[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10385 -> 10382[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10385[label="primModNatS vuz5490 (Succ vuz54200)",fontsize=16,color="magenta"];10385 -> 10399[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10385 -> 10400[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10670[label="primDivNatS0 (Succ vuz574) (Succ vuz575) (primGEqNatS (Succ vuz5760) (Succ vuz5770))",fontsize=16,color="black",shape="box"];10670 -> 10682[label="",style="solid", color="black", weight=3]; 67.83/34.97 10671[label="primDivNatS0 (Succ vuz574) (Succ vuz575) (primGEqNatS (Succ vuz5760) Zero)",fontsize=16,color="black",shape="box"];10671 -> 10683[label="",style="solid", color="black", weight=3]; 67.83/34.97 10672[label="primDivNatS0 (Succ vuz574) (Succ vuz575) (primGEqNatS Zero (Succ vuz5770))",fontsize=16,color="black",shape="box"];10672 -> 10684[label="",style="solid", color="black", weight=3]; 67.83/34.97 10673[label="primDivNatS0 (Succ vuz574) (Succ vuz575) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];10673 -> 10685[label="",style="solid", color="black", weight=3]; 67.83/34.97 10390[label="primMinusNatS (Succ vuz41600) Zero",fontsize=16,color="black",shape="triangle"];10390 -> 10406[label="",style="solid", color="black", weight=3]; 67.83/34.97 10391[label="Zero",fontsize=16,color="green",shape="box"];10392[label="primMinusNatS Zero Zero",fontsize=16,color="black",shape="triangle"];10392 -> 10407[label="",style="solid", color="black", weight=3]; 67.83/34.97 10393[label="Zero",fontsize=16,color="green",shape="box"];10394[label="absReal0 vuz554 True",fontsize=16,color="black",shape="box"];10394 -> 10408[label="",style="solid", color="black", weight=3]; 67.83/34.97 10395[label="primModNatS (Succ vuz54900) (Succ vuz54200)",fontsize=16,color="black",shape="box"];10395 -> 10409[label="",style="solid", color="black", weight=3]; 67.83/34.97 10396[label="primModNatS Zero (Succ vuz54200)",fontsize=16,color="black",shape="box"];10396 -> 10410[label="",style="solid", color="black", weight=3]; 67.83/34.97 10397[label="vuz54200",fontsize=16,color="green",shape="box"];10398[label="vuz5490",fontsize=16,color="green",shape="box"];10399[label="vuz5490",fontsize=16,color="green",shape="box"];10400[label="vuz54200",fontsize=16,color="green",shape="box"];10682 -> 10629[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10682[label="primDivNatS0 (Succ vuz574) (Succ vuz575) (primGEqNatS vuz5760 vuz5770)",fontsize=16,color="magenta"];10682 -> 10692[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10682 -> 10693[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10683[label="primDivNatS0 (Succ vuz574) (Succ vuz575) True",fontsize=16,color="black",shape="triangle"];10683 -> 10694[label="",style="solid", color="black", weight=3]; 67.83/34.97 10684[label="primDivNatS0 (Succ vuz574) (Succ vuz575) False",fontsize=16,color="black",shape="box"];10684 -> 10695[label="",style="solid", color="black", weight=3]; 67.83/34.97 10685 -> 10683[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10685[label="primDivNatS0 (Succ vuz574) (Succ vuz575) True",fontsize=16,color="magenta"];10406[label="Succ vuz41600",fontsize=16,color="green",shape="box"];10407[label="Zero",fontsize=16,color="green",shape="box"];10408 -> 7115[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10408[label="`negate` vuz554",fontsize=16,color="magenta"];10408 -> 10417[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10409[label="primModNatS0 vuz54900 vuz54200 (primGEqNatS vuz54900 vuz54200)",fontsize=16,color="burlywood",shape="box"];11149[label="vuz54900/Succ vuz549000",fontsize=10,color="white",style="solid",shape="box"];10409 -> 11149[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11149 -> 10418[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11150[label="vuz54900/Zero",fontsize=10,color="white",style="solid",shape="box"];10409 -> 11150[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11150 -> 10419[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10410[label="Zero",fontsize=16,color="green",shape="box"];10692[label="vuz5760",fontsize=16,color="green",shape="box"];10693[label="vuz5770",fontsize=16,color="green",shape="box"];10694[label="Succ (primDivNatS (primMinusNatS (Succ vuz574) (Succ vuz575)) (Succ (Succ vuz575)))",fontsize=16,color="green",shape="box"];10694 -> 10700[label="",style="dashed", color="green", weight=3]; 67.83/34.97 10695[label="Zero",fontsize=16,color="green",shape="box"];10417[label="vuz554",fontsize=16,color="green",shape="box"];10418[label="primModNatS0 (Succ vuz549000) vuz54200 (primGEqNatS (Succ vuz549000) vuz54200)",fontsize=16,color="burlywood",shape="box"];11151[label="vuz54200/Succ vuz542000",fontsize=10,color="white",style="solid",shape="box"];10418 -> 11151[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11151 -> 10428[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11152[label="vuz54200/Zero",fontsize=10,color="white",style="solid",shape="box"];10418 -> 11152[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11152 -> 10429[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10419[label="primModNatS0 Zero vuz54200 (primGEqNatS Zero vuz54200)",fontsize=16,color="burlywood",shape="box"];11153[label="vuz54200/Succ vuz542000",fontsize=10,color="white",style="solid",shape="box"];10419 -> 11153[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11153 -> 10430[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11154[label="vuz54200/Zero",fontsize=10,color="white",style="solid",shape="box"];10419 -> 11154[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11154 -> 10431[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10700 -> 10290[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10700[label="primDivNatS (primMinusNatS (Succ vuz574) (Succ vuz575)) (Succ (Succ vuz575))",fontsize=16,color="magenta"];10700 -> 10704[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10700 -> 10705[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10428[label="primModNatS0 (Succ vuz549000) (Succ vuz542000) (primGEqNatS (Succ vuz549000) (Succ vuz542000))",fontsize=16,color="black",shape="box"];10428 -> 10439[label="",style="solid", color="black", weight=3]; 67.83/34.97 10429[label="primModNatS0 (Succ vuz549000) Zero (primGEqNatS (Succ vuz549000) Zero)",fontsize=16,color="black",shape="box"];10429 -> 10440[label="",style="solid", color="black", weight=3]; 67.83/34.97 10430[label="primModNatS0 Zero (Succ vuz542000) (primGEqNatS Zero (Succ vuz542000))",fontsize=16,color="black",shape="box"];10430 -> 10441[label="",style="solid", color="black", weight=3]; 67.83/34.97 10431[label="primModNatS0 Zero Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];10431 -> 10442[label="",style="solid", color="black", weight=3]; 67.83/34.97 10704[label="primMinusNatS (Succ vuz574) (Succ vuz575)",fontsize=16,color="black",shape="box"];10704 -> 10709[label="",style="solid", color="black", weight=3]; 67.83/34.97 10705[label="Succ vuz575",fontsize=16,color="green",shape="box"];10439 -> 10769[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10439[label="primModNatS0 (Succ vuz549000) (Succ vuz542000) (primGEqNatS vuz549000 vuz542000)",fontsize=16,color="magenta"];10439 -> 10770[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10439 -> 10771[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10439 -> 10772[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10439 -> 10773[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10440[label="primModNatS0 (Succ vuz549000) Zero True",fontsize=16,color="black",shape="box"];10440 -> 10452[label="",style="solid", color="black", weight=3]; 67.83/34.97 10441[label="primModNatS0 Zero (Succ vuz542000) False",fontsize=16,color="black",shape="box"];10441 -> 10453[label="",style="solid", color="black", weight=3]; 67.83/34.97 10442[label="primModNatS0 Zero Zero True",fontsize=16,color="black",shape="box"];10442 -> 10454[label="",style="solid", color="black", weight=3]; 67.83/34.97 10709[label="primMinusNatS vuz574 vuz575",fontsize=16,color="burlywood",shape="triangle"];11155[label="vuz574/Succ vuz5740",fontsize=10,color="white",style="solid",shape="box"];10709 -> 11155[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11155 -> 10712[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11156[label="vuz574/Zero",fontsize=10,color="white",style="solid",shape="box"];10709 -> 11156[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11156 -> 10713[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10770[label="vuz549000",fontsize=16,color="green",shape="box"];10771[label="vuz542000",fontsize=16,color="green",shape="box"];10772[label="vuz549000",fontsize=16,color="green",shape="box"];10773[label="vuz542000",fontsize=16,color="green",shape="box"];10769[label="primModNatS0 (Succ vuz594) (Succ vuz595) (primGEqNatS vuz596 vuz597)",fontsize=16,color="burlywood",shape="triangle"];11157[label="vuz596/Succ vuz5960",fontsize=10,color="white",style="solid",shape="box"];10769 -> 11157[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11157 -> 10802[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11158[label="vuz596/Zero",fontsize=10,color="white",style="solid",shape="box"];10769 -> 11158[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11158 -> 10803[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10452 -> 10382[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10452[label="primModNatS (primMinusNatS (Succ vuz549000) Zero) (Succ Zero)",fontsize=16,color="magenta"];10452 -> 10467[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10452 -> 10468[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10453[label="Succ Zero",fontsize=16,color="green",shape="box"];10454 -> 10382[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10454[label="primModNatS (primMinusNatS Zero Zero) (Succ Zero)",fontsize=16,color="magenta"];10454 -> 10469[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10454 -> 10470[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10712[label="primMinusNatS (Succ vuz5740) vuz575",fontsize=16,color="burlywood",shape="box"];11159[label="vuz575/Succ vuz5750",fontsize=10,color="white",style="solid",shape="box"];10712 -> 11159[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11159 -> 10745[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11160[label="vuz575/Zero",fontsize=10,color="white",style="solid",shape="box"];10712 -> 11160[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11160 -> 10746[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10713[label="primMinusNatS Zero vuz575",fontsize=16,color="burlywood",shape="box"];11161[label="vuz575/Succ vuz5750",fontsize=10,color="white",style="solid",shape="box"];10713 -> 11161[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11161 -> 10747[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11162[label="vuz575/Zero",fontsize=10,color="white",style="solid",shape="box"];10713 -> 11162[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11162 -> 10748[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10802[label="primModNatS0 (Succ vuz594) (Succ vuz595) (primGEqNatS (Succ vuz5960) vuz597)",fontsize=16,color="burlywood",shape="box"];11163[label="vuz597/Succ vuz5970",fontsize=10,color="white",style="solid",shape="box"];10802 -> 11163[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11163 -> 10804[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11164[label="vuz597/Zero",fontsize=10,color="white",style="solid",shape="box"];10802 -> 11164[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11164 -> 10805[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10803[label="primModNatS0 (Succ vuz594) (Succ vuz595) (primGEqNatS Zero vuz597)",fontsize=16,color="burlywood",shape="box"];11165[label="vuz597/Succ vuz5970",fontsize=10,color="white",style="solid",shape="box"];10803 -> 11165[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11165 -> 10806[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 11166[label="vuz597/Zero",fontsize=10,color="white",style="solid",shape="box"];10803 -> 11166[label="",style="solid", color="burlywood", weight=9]; 67.83/34.97 11166 -> 10807[label="",style="solid", color="burlywood", weight=3]; 67.83/34.97 10467 -> 10390[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10467[label="primMinusNatS (Succ vuz549000) Zero",fontsize=16,color="magenta"];10467 -> 10482[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10468[label="Zero",fontsize=16,color="green",shape="box"];10469 -> 10392[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10469[label="primMinusNatS Zero Zero",fontsize=16,color="magenta"];10470[label="Zero",fontsize=16,color="green",shape="box"];10745[label="primMinusNatS (Succ vuz5740) (Succ vuz5750)",fontsize=16,color="black",shape="box"];10745 -> 10755[label="",style="solid", color="black", weight=3]; 67.83/34.97 10746[label="primMinusNatS (Succ vuz5740) Zero",fontsize=16,color="black",shape="box"];10746 -> 10756[label="",style="solid", color="black", weight=3]; 67.83/34.97 10747[label="primMinusNatS Zero (Succ vuz5750)",fontsize=16,color="black",shape="box"];10747 -> 10757[label="",style="solid", color="black", weight=3]; 67.83/34.97 10748[label="primMinusNatS Zero Zero",fontsize=16,color="black",shape="box"];10748 -> 10758[label="",style="solid", color="black", weight=3]; 67.83/34.97 10804[label="primModNatS0 (Succ vuz594) (Succ vuz595) (primGEqNatS (Succ vuz5960) (Succ vuz5970))",fontsize=16,color="black",shape="box"];10804 -> 10808[label="",style="solid", color="black", weight=3]; 67.83/34.97 10805[label="primModNatS0 (Succ vuz594) (Succ vuz595) (primGEqNatS (Succ vuz5960) Zero)",fontsize=16,color="black",shape="box"];10805 -> 10809[label="",style="solid", color="black", weight=3]; 67.83/34.97 10806[label="primModNatS0 (Succ vuz594) (Succ vuz595) (primGEqNatS Zero (Succ vuz5970))",fontsize=16,color="black",shape="box"];10806 -> 10810[label="",style="solid", color="black", weight=3]; 67.83/34.97 10807[label="primModNatS0 (Succ vuz594) (Succ vuz595) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];10807 -> 10811[label="",style="solid", color="black", weight=3]; 67.83/34.97 10482[label="vuz549000",fontsize=16,color="green",shape="box"];10755 -> 10709[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10755[label="primMinusNatS vuz5740 vuz5750",fontsize=16,color="magenta"];10755 -> 10765[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10755 -> 10766[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10756[label="Succ vuz5740",fontsize=16,color="green",shape="box"];10757[label="Zero",fontsize=16,color="green",shape="box"];10758[label="Zero",fontsize=16,color="green",shape="box"];10808 -> 10769[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10808[label="primModNatS0 (Succ vuz594) (Succ vuz595) (primGEqNatS vuz5960 vuz5970)",fontsize=16,color="magenta"];10808 -> 10812[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10808 -> 10813[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10809[label="primModNatS0 (Succ vuz594) (Succ vuz595) True",fontsize=16,color="black",shape="triangle"];10809 -> 10814[label="",style="solid", color="black", weight=3]; 67.83/34.97 10810[label="primModNatS0 (Succ vuz594) (Succ vuz595) False",fontsize=16,color="black",shape="box"];10810 -> 10815[label="",style="solid", color="black", weight=3]; 67.83/34.97 10811 -> 10809[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10811[label="primModNatS0 (Succ vuz594) (Succ vuz595) True",fontsize=16,color="magenta"];10765[label="vuz5740",fontsize=16,color="green",shape="box"];10766[label="vuz5750",fontsize=16,color="green",shape="box"];10812[label="vuz5970",fontsize=16,color="green",shape="box"];10813[label="vuz5960",fontsize=16,color="green",shape="box"];10814 -> 10382[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10814[label="primModNatS (primMinusNatS (Succ vuz594) (Succ vuz595)) (Succ (Succ vuz595))",fontsize=16,color="magenta"];10814 -> 10816[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10814 -> 10817[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10815[label="Succ (Succ vuz594)",fontsize=16,color="green",shape="box"];10816 -> 10709[label="",style="dashed", color="red", weight=0]; 67.83/34.97 10816[label="primMinusNatS (Succ vuz594) (Succ vuz595)",fontsize=16,color="magenta"];10816 -> 10818[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10816 -> 10819[label="",style="dashed", color="magenta", weight=3]; 67.83/34.97 10817[label="Succ vuz595",fontsize=16,color="green",shape="box"];10818[label="Succ vuz594",fontsize=16,color="green",shape="box"];10819[label="Succ vuz595",fontsize=16,color="green",shape="box"];} 67.83/34.97 67.83/34.97 ---------------------------------------- 67.83/34.97 67.83/34.97 (489) 67.83/34.97 TRUE 67.83/34.99 EOF