111.52/78.45 MAYBE 111.52/78.45 proof of /export/starexec/sandbox/benchmark/theBenchmark.hs 111.52/78.45 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 111.52/78.45 111.52/78.45 111.52/78.45 H-Termination with start terms of the given HASKELL could not be shown: 111.52/78.45 111.52/78.45 (0) HASKELL 111.52/78.45 (1) IFR [EQUIVALENT, 0 ms] 111.52/78.45 (2) HASKELL 111.52/78.45 (3) BR [EQUIVALENT, 0 ms] 111.52/78.45 (4) HASKELL 111.52/78.45 (5) COR [EQUIVALENT, 0 ms] 111.52/78.45 (6) HASKELL 111.52/78.45 (7) LetRed [EQUIVALENT, 0 ms] 111.52/78.45 (8) HASKELL 111.52/78.45 (9) NumRed [SOUND, 0 ms] 111.52/78.45 (10) HASKELL 111.52/78.45 (11) Narrow [SOUND, 0 ms] 111.52/78.45 (12) AND 111.52/78.45 (13) QDP 111.52/78.45 (14) MNOCProof [EQUIVALENT, 0 ms] 111.52/78.45 (15) QDP 111.52/78.45 (16) InductionCalculusProof [EQUIVALENT, 0 ms] 111.52/78.45 (17) QDP 111.52/78.45 (18) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (19) QDP 111.52/78.45 (20) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (21) AND 111.52/78.45 (22) QDP 111.52/78.45 (23) UsableRulesProof [EQUIVALENT, 0 ms] 111.52/78.45 (24) QDP 111.52/78.45 (25) QReductionProof [EQUIVALENT, 0 ms] 111.52/78.45 (26) QDP 111.52/78.45 (27) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (28) QDP 111.52/78.45 (29) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (30) AND 111.52/78.45 (31) QDP 111.52/78.45 (32) UsableRulesProof [EQUIVALENT, 0 ms] 111.52/78.45 (33) QDP 111.52/78.45 (34) QReductionProof [EQUIVALENT, 0 ms] 111.52/78.45 (35) QDP 111.52/78.45 (36) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (37) QDP 111.52/78.45 (38) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (39) QDP 111.52/78.45 (40) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (41) QDP 111.52/78.45 (42) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (43) QDP 111.52/78.45 (44) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (45) QDP 111.52/78.45 (46) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (47) QDP 111.52/78.45 (48) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (49) QDP 111.52/78.45 (50) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (51) QDP 111.52/78.45 (52) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (53) QDP 111.52/78.45 (54) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (55) QDP 111.52/78.45 (56) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (57) QDP 111.52/78.45 (58) QDPSizeChangeProof [EQUIVALENT, 0 ms] 111.52/78.45 (59) YES 111.52/78.45 (60) QDP 111.52/78.45 (61) UsableRulesProof [EQUIVALENT, 0 ms] 111.52/78.45 (62) QDP 111.52/78.45 (63) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (64) QDP 111.52/78.45 (65) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (66) AND 111.52/78.45 (67) QDP 111.52/78.45 (68) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (69) QDP 111.52/78.45 (70) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (71) QDP 111.52/78.45 (72) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (73) QDP 111.52/78.45 (74) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (75) QDP 111.52/78.45 (76) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (77) QDP 111.52/78.45 (78) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (79) QDP 111.52/78.45 (80) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (81) QDP 111.52/78.45 (82) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (83) QDP 111.52/78.45 (84) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (85) QDP 111.52/78.45 (86) QDPOrderProof [EQUIVALENT, 0 ms] 111.52/78.45 (87) QDP 111.52/78.45 (88) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (89) TRUE 111.52/78.45 (90) QDP 111.52/78.45 (91) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (92) QDP 111.52/78.45 (93) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (94) AND 111.52/78.45 (95) QDP 111.52/78.45 (96) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (97) QDP 111.52/78.45 (98) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (99) QDP 111.52/78.45 (100) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (101) QDP 111.52/78.45 (102) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (103) QDP 111.52/78.45 (104) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (105) QDP 111.52/78.45 (106) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (107) QDP 111.52/78.45 (108) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (109) QDP 111.52/78.45 (110) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (111) QDP 111.52/78.45 (112) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (113) QDP 111.52/78.45 (114) QDPOrderProof [EQUIVALENT, 0 ms] 111.52/78.45 (115) QDP 111.52/78.45 (116) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (117) TRUE 111.52/78.45 (118) QDP 111.52/78.45 (119) InductionCalculusProof [EQUIVALENT, 0 ms] 111.52/78.45 (120) QDP 111.52/78.45 (121) QDP 111.52/78.45 (122) UsableRulesProof [EQUIVALENT, 0 ms] 111.52/78.45 (123) QDP 111.52/78.45 (124) QReductionProof [EQUIVALENT, 0 ms] 111.52/78.45 (125) QDP 111.52/78.45 (126) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (127) QDP 111.52/78.45 (128) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (129) AND 111.52/78.45 (130) QDP 111.52/78.45 (131) UsableRulesProof [EQUIVALENT, 0 ms] 111.52/78.45 (132) QDP 111.52/78.45 (133) QReductionProof [EQUIVALENT, 0 ms] 111.52/78.45 (134) QDP 111.52/78.45 (135) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (136) QDP 111.52/78.45 (137) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (138) AND 111.52/78.45 (139) QDP 111.52/78.45 (140) UsableRulesProof [EQUIVALENT, 0 ms] 111.52/78.45 (141) QDP 111.52/78.45 (142) QReductionProof [EQUIVALENT, 0 ms] 111.52/78.45 (143) QDP 111.52/78.45 (144) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (145) QDP 111.52/78.45 (146) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (147) QDP 111.52/78.45 (148) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (149) QDP 111.52/78.45 (150) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (151) QDP 111.52/78.45 (152) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (153) QDP 111.52/78.45 (154) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (155) QDP 111.52/78.45 (156) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (157) QDP 111.52/78.45 (158) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (159) QDP 111.52/78.45 (160) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (161) QDP 111.52/78.45 (162) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (163) QDP 111.52/78.45 (164) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (165) QDP 111.52/78.45 (166) MRRProof [EQUIVALENT, 0 ms] 111.52/78.45 (167) QDP 111.52/78.45 (168) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (169) TRUE 111.52/78.45 (170) QDP 111.52/78.45 (171) UsableRulesProof [EQUIVALENT, 0 ms] 111.52/78.45 (172) QDP 111.52/78.45 (173) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (174) QDP 111.52/78.45 (175) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (176) AND 111.52/78.45 (177) QDP 111.52/78.45 (178) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (179) QDP 111.52/78.45 (180) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (181) QDP 111.52/78.45 (182) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (183) QDP 111.52/78.45 (184) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (185) QDP 111.52/78.45 (186) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (187) QDP 111.52/78.45 (188) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (189) QDP 111.52/78.45 (190) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (191) QDP 111.52/78.45 (192) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (193) QDP 111.52/78.45 (194) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (195) QDP 111.52/78.45 (196) QDPOrderProof [EQUIVALENT, 0 ms] 111.52/78.45 (197) QDP 111.52/78.45 (198) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (199) TRUE 111.52/78.45 (200) QDP 111.52/78.45 (201) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (202) QDP 111.52/78.45 (203) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (204) AND 111.52/78.45 (205) QDP 111.52/78.45 (206) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (207) QDP 111.52/78.45 (208) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (209) QDP 111.52/78.45 (210) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (211) QDP 111.52/78.45 (212) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (213) QDP 111.52/78.45 (214) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (215) QDP 111.52/78.45 (216) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (217) QDP 111.52/78.45 (218) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (219) QDP 111.52/78.45 (220) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (221) QDP 111.52/78.45 (222) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (223) QDP 111.52/78.45 (224) QDPOrderProof [EQUIVALENT, 0 ms] 111.52/78.45 (225) QDP 111.52/78.45 (226) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (227) TRUE 111.52/78.45 (228) QDP 111.52/78.45 (229) InductionCalculusProof [EQUIVALENT, 0 ms] 111.52/78.45 (230) QDP 111.52/78.45 (231) QDP 111.52/78.45 (232) UsableRulesProof [EQUIVALENT, 0 ms] 111.52/78.45 (233) QDP 111.52/78.45 (234) QReductionProof [EQUIVALENT, 0 ms] 111.52/78.45 (235) QDP 111.52/78.45 (236) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (237) QDP 111.52/78.45 (238) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (239) QDP 111.52/78.45 (240) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (241) QDP 111.52/78.45 (242) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (243) QDP 111.52/78.45 (244) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (245) QDP 111.52/78.45 (246) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (247) QDP 111.52/78.45 (248) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (249) AND 111.52/78.45 (250) QDP 111.52/78.45 (251) UsableRulesProof [EQUIVALENT, 0 ms] 111.52/78.45 (252) QDP 111.52/78.45 (253) QReductionProof [EQUIVALENT, 0 ms] 111.52/78.45 (254) QDP 111.52/78.45 (255) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (256) QDP 111.52/78.45 (257) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (258) QDP 111.52/78.45 (259) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (260) QDP 111.52/78.45 (261) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (262) QDP 111.52/78.45 (263) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (264) QDP 111.52/78.45 (265) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (266) QDP 111.52/78.45 (267) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (268) QDP 111.52/78.45 (269) TransformationProof [EQUIVALENT, 0 ms] 111.52/78.45 (270) QDP 111.52/78.45 (271) DependencyGraphProof [EQUIVALENT, 0 ms] 111.52/78.45 (272) QDP 111.52/78.45 (273) QDPSizeChangeProof [EQUIVALENT, 0 ms] 111.52/78.45 (274) YES 111.52/78.45 (275) QDP 113.88/79.10 (276) UsableRulesProof [EQUIVALENT, 0 ms] 113.88/79.10 (277) QDP 113.88/79.10 (278) QReductionProof [EQUIVALENT, 0 ms] 113.88/79.10 (279) QDP 113.88/79.10 (280) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (281) QDP 113.88/79.10 (282) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (283) QDP 113.88/79.10 (284) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (285) QDP 113.88/79.10 (286) DependencyGraphProof [EQUIVALENT, 0 ms] 113.88/79.10 (287) QDP 113.88/79.10 (288) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (289) QDP 113.88/79.10 (290) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (291) QDP 113.88/79.10 (292) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (293) QDP 113.88/79.10 (294) DependencyGraphProof [EQUIVALENT, 0 ms] 113.88/79.10 (295) QDP 113.88/79.10 (296) QDPSizeChangeProof [EQUIVALENT, 1 ms] 113.88/79.10 (297) YES 113.88/79.10 (298) QDP 113.88/79.10 (299) UsableRulesProof [EQUIVALENT, 0 ms] 113.88/79.10 (300) QDP 113.88/79.10 (301) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (302) QDP 113.88/79.10 (303) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (304) QDP 113.88/79.10 (305) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (306) QDP 113.88/79.10 (307) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (308) QDP 113.88/79.10 (309) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (310) QDP 113.88/79.10 (311) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (312) QDP 113.88/79.10 (313) DependencyGraphProof [EQUIVALENT, 0 ms] 113.88/79.10 (314) QDP 113.88/79.10 (315) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (316) QDP 113.88/79.10 (317) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (318) QDP 113.88/79.10 (319) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (320) QDP 113.88/79.10 (321) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (322) QDP 113.88/79.10 (323) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (324) QDP 113.88/79.10 (325) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (326) QDP 113.88/79.10 (327) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (328) QDP 113.88/79.10 (329) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (330) QDP 113.88/79.10 (331) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (332) QDP 113.88/79.10 (333) DependencyGraphProof [EQUIVALENT, 0 ms] 113.88/79.10 (334) QDP 113.88/79.10 (335) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (336) QDP 113.88/79.10 (337) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (338) QDP 113.88/79.10 (339) DependencyGraphProof [EQUIVALENT, 0 ms] 113.88/79.10 (340) AND 113.88/79.10 (341) QDP 113.88/79.10 (342) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (343) QDP 113.88/79.10 (344) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (345) QDP 113.88/79.10 (346) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (347) QDP 113.88/79.10 (348) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (349) QDP 113.88/79.10 (350) DependencyGraphProof [EQUIVALENT, 0 ms] 113.88/79.10 (351) QDP 113.88/79.10 (352) QDPOrderProof [EQUIVALENT, 94 ms] 113.88/79.10 (353) QDP 113.88/79.10 (354) DependencyGraphProof [EQUIVALENT, 0 ms] 113.88/79.10 (355) TRUE 113.88/79.10 (356) QDP 113.88/79.10 (357) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (358) QDP 113.88/79.10 (359) DependencyGraphProof [EQUIVALENT, 0 ms] 113.88/79.10 (360) QDP 113.88/79.10 (361) QDPOrderProof [EQUIVALENT, 95 ms] 113.88/79.10 (362) QDP 113.88/79.10 (363) DependencyGraphProof [EQUIVALENT, 0 ms] 113.88/79.10 (364) TRUE 113.88/79.10 (365) QDP 113.88/79.10 (366) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (367) QDP 113.88/79.10 (368) DependencyGraphProof [EQUIVALENT, 0 ms] 113.88/79.10 (369) AND 113.88/79.10 (370) QDP 113.88/79.10 (371) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (372) QDP 113.88/79.10 (373) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (374) QDP 113.88/79.10 (375) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (376) QDP 113.88/79.10 (377) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (378) QDP 113.88/79.10 (379) QDPOrderProof [EQUIVALENT, 16 ms] 113.88/79.10 (380) QDP 113.88/79.10 (381) DependencyGraphProof [EQUIVALENT, 0 ms] 113.88/79.10 (382) TRUE 113.88/79.10 (383) QDP 113.88/79.10 (384) QDPOrderProof [EQUIVALENT, 17 ms] 113.88/79.10 (385) QDP 113.88/79.10 (386) DependencyGraphProof [EQUIVALENT, 0 ms] 113.88/79.10 (387) TRUE 113.88/79.10 (388) QDP 113.88/79.10 (389) InductionCalculusProof [EQUIVALENT, 0 ms] 113.88/79.10 (390) QDP 113.88/79.10 (391) QDP 113.88/79.10 (392) QDPSizeChangeProof [EQUIVALENT, 0 ms] 113.88/79.10 (393) YES 113.88/79.10 (394) QDP 113.88/79.10 (395) QDPSizeChangeProof [EQUIVALENT, 0 ms] 113.88/79.10 (396) YES 113.88/79.10 (397) QDP 113.88/79.10 (398) QDPSizeChangeProof [EQUIVALENT, 0 ms] 113.88/79.10 (399) YES 113.88/79.10 (400) QDP 113.88/79.10 (401) DependencyGraphProof [EQUIVALENT, 0 ms] 113.88/79.10 (402) AND 113.88/79.10 (403) QDP 113.88/79.10 (404) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (405) QDP 113.88/79.10 (406) TransformationProof [EQUIVALENT, 0 ms] 113.88/79.10 (407) QDP 113.88/79.10 (408) QDPSizeChangeProof [EQUIVALENT, 0 ms] 113.88/79.10 (409) YES 113.88/79.10 (410) QDP 113.88/79.10 (411) MRRProof [EQUIVALENT, 0 ms] 113.88/79.10 (412) QDP 113.88/79.10 (413) PisEmptyProof [EQUIVALENT, 0 ms] 113.88/79.10 (414) YES 113.88/79.10 (415) QDP 113.88/79.10 (416) DependencyGraphProof [EQUIVALENT, 0 ms] 113.88/79.10 (417) AND 113.88/79.10 (418) QDP 113.88/79.10 (419) MRRProof [EQUIVALENT, 0 ms] 113.88/79.10 (420) QDP 113.88/79.10 (421) PisEmptyProof [EQUIVALENT, 0 ms] 113.88/79.10 (422) YES 113.88/79.10 (423) QDP 113.88/79.10 (424) QDPSizeChangeProof [EQUIVALENT, 0 ms] 113.88/79.10 (425) YES 113.88/79.10 (426) QDP 113.88/79.10 (427) QDPSizeChangeProof [EQUIVALENT, 0 ms] 113.88/79.10 (428) YES 113.88/79.10 (429) QDP 113.88/79.10 (430) QDPSizeChangeProof [EQUIVALENT, 0 ms] 113.88/79.10 (431) YES 113.88/79.10 (432) QDP 113.88/79.10 (433) QDPSizeChangeProof [EQUIVALENT, 0 ms] 113.88/79.10 (434) YES 113.88/79.10 (435) QDP 113.88/79.10 (436) QDPSizeChangeProof [EQUIVALENT, 0 ms] 113.88/79.10 (437) YES 113.88/79.10 (438) Narrow [COMPLETE, 0 ms] 113.88/79.10 (439) TRUE 113.88/79.10 113.88/79.10 113.88/79.10 ---------------------------------------- 113.88/79.10 113.88/79.10 (0) 113.88/79.10 Obligation: 113.88/79.10 mainModule Main 113.88/79.10 module Main where { 113.88/79.10 import qualified Prelude; 113.88/79.10 } 113.88/79.10 113.88/79.10 ---------------------------------------- 113.88/79.10 113.88/79.10 (1) IFR (EQUIVALENT) 113.88/79.10 If Reductions: 113.88/79.10 The following If expression 113.88/79.10 "if primGEqNatS x y then Succ (primDivNatS (primMinusNatS x y) (Succ y)) else Zero" 113.88/79.10 is transformed to 113.88/79.10 "primDivNatS0 x y True = Succ (primDivNatS (primMinusNatS x y) (Succ y)); 113.88/79.10 primDivNatS0 x y False = Zero; 113.88/79.10 " 113.88/79.10 The following If expression 113.88/79.10 "if primGEqNatS x y then primModNatS (primMinusNatS x y) (Succ y) else Succ x" 113.88/79.10 is transformed to 113.88/79.10 "primModNatS0 x y True = primModNatS (primMinusNatS x y) (Succ y); 113.88/79.10 primModNatS0 x y False = Succ x; 113.88/79.10 " 113.88/79.10 113.88/79.10 ---------------------------------------- 113.88/79.10 113.88/79.10 (2) 113.88/79.10 Obligation: 113.88/79.10 mainModule Main 113.88/79.10 module Main where { 113.88/79.10 import qualified Prelude; 113.88/79.10 } 113.88/79.10 113.88/79.10 ---------------------------------------- 113.88/79.10 113.88/79.10 (3) BR (EQUIVALENT) 113.88/79.10 Replaced joker patterns by fresh variables and removed binding patterns. 113.88/79.10 ---------------------------------------- 113.88/79.10 113.88/79.10 (4) 113.88/79.10 Obligation: 113.88/79.10 mainModule Main 113.88/79.10 module Main where { 113.88/79.10 import qualified Prelude; 113.88/79.10 } 113.88/79.10 113.88/79.10 ---------------------------------------- 113.88/79.10 113.88/79.10 (5) COR (EQUIVALENT) 113.88/79.10 Cond Reductions: 113.88/79.10 The following Function with conditions 113.88/79.10 "absReal x|x >= 0x|otherwise`negate` x; 113.88/79.10 " 113.88/79.10 is transformed to 113.88/79.10 "absReal x = absReal2 x; 113.88/79.10 " 113.88/79.10 "absReal1 x True = x; 113.88/79.10 absReal1 x False = absReal0 x otherwise; 113.88/79.10 " 113.88/79.10 "absReal0 x True = `negate` x; 113.88/79.10 " 113.88/79.10 "absReal2 x = absReal1 x (x >= 0); 113.88/79.10 " 113.88/79.10 The following Function with conditions 113.88/79.10 "gcd' x 0 = x; 113.88/79.10 gcd' x y = gcd' y (x `rem` y); 113.88/79.10 " 113.88/79.10 is transformed to 113.88/79.10 "gcd' x xz = gcd'2 x xz; 113.88/79.10 gcd' x y = gcd'0 x y; 113.88/79.10 " 113.88/79.10 "gcd'0 x y = gcd' y (x `rem` y); 113.88/79.10 " 113.88/79.10 "gcd'1 True x xz = x; 113.88/79.10 gcd'1 yu yv yw = gcd'0 yv yw; 113.88/79.10 " 113.88/79.10 "gcd'2 x xz = gcd'1 (xz == 0) x xz; 113.88/79.10 gcd'2 yx yy = gcd'0 yx yy; 113.88/79.10 " 113.88/79.10 The following Function with conditions 113.88/79.10 "gcd 0 0 = error []; 113.88/79.10 gcd x y = gcd' (abs x) (abs y) where { 113.88/79.10 gcd' x 0 = x; 113.88/79.10 gcd' x y = gcd' y (x `rem` y); 113.88/79.10 } 113.88/79.10 ; 113.88/79.10 " 113.88/79.10 is transformed to 113.88/79.10 "gcd yz zu = gcd3 yz zu; 113.88/79.10 gcd x y = gcd0 x y; 113.88/79.10 " 113.88/79.10 "gcd0 x y = gcd' (abs x) (abs y) where { 113.88/79.10 gcd' x xz = gcd'2 x xz; 113.88/79.10 gcd' x y = gcd'0 x y; 113.88/79.10 ; 113.88/79.10 gcd'0 x y = gcd' y (x `rem` y); 113.88/79.10 ; 113.88/79.10 gcd'1 True x xz = x; 113.88/79.10 gcd'1 yu yv yw = gcd'0 yv yw; 113.88/79.10 ; 113.88/79.10 gcd'2 x xz = gcd'1 (xz == 0) x xz; 113.88/79.10 gcd'2 yx yy = gcd'0 yx yy; 113.88/79.10 } 113.88/79.10 ; 113.88/79.10 " 113.88/79.10 "gcd1 True yz zu = error []; 113.88/79.10 gcd1 zv zw zx = gcd0 zw zx; 113.88/79.10 " 113.88/79.10 "gcd2 True yz zu = gcd1 (zu == 0) yz zu; 113.88/79.10 gcd2 zy zz vuu = gcd0 zz vuu; 113.88/79.10 " 113.88/79.10 "gcd3 yz zu = gcd2 (yz == 0) yz zu; 113.88/79.10 gcd3 vuv vuw = gcd0 vuv vuw; 113.88/79.10 " 113.88/79.10 The following Function with conditions 113.88/79.10 "undefined |Falseundefined; 113.88/79.10 " 113.88/79.10 is transformed to 113.88/79.10 "undefined = undefined1; 113.88/79.10 " 113.88/79.10 "undefined0 True = undefined; 113.88/79.10 " 113.88/79.10 "undefined1 = undefined0 False; 113.88/79.10 " 113.88/79.10 The following Function with conditions 113.88/79.10 "reduce x y|y == 0error []|otherwisex `quot` d :% (y `quot` d) where { 113.88/79.10 d = gcd x y; 113.88/79.10 } 113.88/79.10 ; 113.88/79.10 " 113.88/79.10 is transformed to 113.88/79.10 "reduce x y = reduce2 x y; 113.88/79.10 " 113.88/79.10 "reduce2 x y = reduce1 x y (y == 0) where { 113.88/79.10 d = gcd x y; 113.88/79.10 ; 113.88/79.10 reduce0 x y True = x `quot` d :% (y `quot` d); 113.88/79.10 ; 113.88/79.10 reduce1 x y True = error []; 113.88/79.10 reduce1 x y False = reduce0 x y otherwise; 113.88/79.10 } 113.88/79.10 ; 113.88/79.10 " 113.88/79.10 113.88/79.10 ---------------------------------------- 113.88/79.10 113.88/79.10 (6) 113.88/79.10 Obligation: 113.88/79.10 mainModule Main 113.88/79.10 module Main where { 113.88/79.10 import qualified Prelude; 113.88/79.10 } 113.88/79.10 113.88/79.10 ---------------------------------------- 113.88/79.10 113.88/79.10 (7) LetRed (EQUIVALENT) 113.88/79.10 Let/Where Reductions: 113.88/79.10 The bindings of the following Let/Where expression 113.88/79.10 "gcd' (abs x) (abs y) where { 113.88/79.10 gcd' x xz = gcd'2 x xz; 113.88/79.10 gcd' x y = gcd'0 x y; 113.88/79.10 ; 113.88/79.10 gcd'0 x y = gcd' y (x `rem` y); 113.88/79.10 ; 113.88/79.10 gcd'1 True x xz = x; 113.88/79.10 gcd'1 yu yv yw = gcd'0 yv yw; 113.88/79.10 ; 113.88/79.10 gcd'2 x xz = gcd'1 (xz == 0) x xz; 113.88/79.10 gcd'2 yx yy = gcd'0 yx yy; 113.88/79.10 } 113.88/79.10 " 113.88/79.10 are unpacked to the following functions on top level 113.88/79.10 "gcd0Gcd'1 True x xz = x; 113.88/79.10 gcd0Gcd'1 yu yv yw = gcd0Gcd'0 yv yw; 113.88/79.10 " 113.88/79.10 "gcd0Gcd' x xz = gcd0Gcd'2 x xz; 113.88/79.10 gcd0Gcd' x y = gcd0Gcd'0 x y; 113.88/79.10 " 113.88/79.10 "gcd0Gcd'2 x xz = gcd0Gcd'1 (xz == 0) x xz; 113.88/79.10 gcd0Gcd'2 yx yy = gcd0Gcd'0 yx yy; 113.88/79.10 " 113.88/79.10 "gcd0Gcd'0 x y = gcd0Gcd' y (x `rem` y); 113.88/79.10 " 113.88/79.10 The bindings of the following Let/Where expression 113.88/79.10 "reduce1 x y (y == 0) where { 113.88/79.10 d = gcd x y; 113.88/79.10 ; 113.88/79.10 reduce0 x y True = x `quot` d :% (y `quot` d); 113.88/79.10 ; 113.88/79.10 reduce1 x y True = error []; 113.88/79.10 reduce1 x y False = reduce0 x y otherwise; 113.88/79.10 } 113.88/79.10 " 113.88/79.10 are unpacked to the following functions on top level 113.88/79.10 "reduce2Reduce1 vux vuy x y True = error []; 113.88/79.10 reduce2Reduce1 vux vuy x y False = reduce2Reduce0 vux vuy x y otherwise; 113.88/79.10 " 113.88/79.10 "reduce2Reduce0 vux vuy x y True = x `quot` reduce2D vux vuy :% (y `quot` reduce2D vux vuy); 113.88/79.10 " 113.88/79.10 "reduce2D vux vuy = gcd vux vuy; 113.88/79.10 " 113.88/79.10 113.88/79.10 ---------------------------------------- 113.88/79.10 113.88/79.10 (8) 113.88/79.10 Obligation: 113.88/79.10 mainModule Main 113.88/79.10 module Main where { 113.88/79.10 import qualified Prelude; 113.88/79.10 } 113.88/79.10 113.88/79.10 ---------------------------------------- 113.88/79.10 113.88/79.10 (9) NumRed (SOUND) 113.88/79.10 Num Reduction:All numbers are transformed to their corresponding representation with Succ, Pred and Zero. 113.88/79.10 ---------------------------------------- 113.88/79.10 113.88/79.10 (10) 113.88/79.10 Obligation: 113.88/79.10 mainModule Main 113.88/79.10 module Main where { 113.88/79.10 import qualified Prelude; 113.88/79.10 } 113.88/79.10 113.88/79.10 ---------------------------------------- 113.88/79.10 113.88/79.10 (11) Narrow (SOUND) 113.88/79.10 Haskell To QDPs 113.88/79.10 113.88/79.10 digraph dp_graph { 113.88/79.10 node [outthreshold=100, inthreshold=100];1[label="(+)",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 113.88/79.10 3[label="(+) vuz3",fontsize=16,color="grey",shape="box"];3 -> 4[label="",style="dashed", color="grey", weight=3]; 113.88/79.10 4[label="(+) vuz3 vuz4",fontsize=16,color="burlywood",shape="triangle"];4833[label="vuz3/vuz30 :% vuz31",fontsize=10,color="white",style="solid",shape="box"];4 -> 4833[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4833 -> 5[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 5[label="(+) vuz30 :% vuz31 vuz4",fontsize=16,color="burlywood",shape="box"];4834[label="vuz4/vuz40 :% vuz41",fontsize=10,color="white",style="solid",shape="box"];5 -> 4834[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4834 -> 6[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 6[label="(+) vuz30 :% vuz31 vuz40 :% vuz41",fontsize=16,color="black",shape="box"];6 -> 7[label="",style="solid", color="black", weight=3]; 113.88/79.10 7[label="reduce (vuz30 * vuz41 + vuz40 * vuz31) (vuz31 * vuz41)",fontsize=16,color="black",shape="box"];7 -> 8[label="",style="solid", color="black", weight=3]; 113.88/79.10 8[label="reduce2 (vuz30 * vuz41 + vuz40 * vuz31) (vuz31 * vuz41)",fontsize=16,color="black",shape="box"];8 -> 9[label="",style="solid", color="black", weight=3]; 113.88/79.10 9[label="reduce2Reduce1 (vuz30 * vuz41 + vuz40 * vuz31) (vuz31 * vuz41) (vuz30 * vuz41 + vuz40 * vuz31) (vuz31 * vuz41) (vuz31 * vuz41 == fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];9 -> 10[label="",style="solid", color="black", weight=3]; 113.88/79.10 10[label="reduce2Reduce1 (vuz30 * vuz41 + vuz40 * vuz31) (vuz31 * vuz41) (vuz30 * vuz41 + vuz40 * vuz31) (vuz31 * vuz41) (primEqInt (vuz31 * vuz41) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];10 -> 11[label="",style="solid", color="black", weight=3]; 113.88/79.10 11[label="reduce2Reduce1 (vuz30 * vuz41 + vuz40 * vuz31) (primMulInt vuz31 vuz41) (vuz30 * vuz41 + vuz40 * vuz31) (primMulInt vuz31 vuz41) (primEqInt (primMulInt vuz31 vuz41) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4835[label="vuz31/Pos vuz310",fontsize=10,color="white",style="solid",shape="box"];11 -> 4835[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4835 -> 12[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4836[label="vuz31/Neg vuz310",fontsize=10,color="white",style="solid",shape="box"];11 -> 4836[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4836 -> 13[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 12[label="reduce2Reduce1 (vuz30 * vuz41 + vuz40 * Pos vuz310) (primMulInt (Pos vuz310) vuz41) (vuz30 * vuz41 + vuz40 * Pos vuz310) (primMulInt (Pos vuz310) vuz41) (primEqInt (primMulInt (Pos vuz310) vuz41) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4837[label="vuz41/Pos vuz410",fontsize=10,color="white",style="solid",shape="box"];12 -> 4837[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4837 -> 14[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4838[label="vuz41/Neg vuz410",fontsize=10,color="white",style="solid",shape="box"];12 -> 4838[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4838 -> 15[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 13[label="reduce2Reduce1 (vuz30 * vuz41 + vuz40 * Neg vuz310) (primMulInt (Neg vuz310) vuz41) (vuz30 * vuz41 + vuz40 * Neg vuz310) (primMulInt (Neg vuz310) vuz41) (primEqInt (primMulInt (Neg vuz310) vuz41) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4839[label="vuz41/Pos vuz410",fontsize=10,color="white",style="solid",shape="box"];13 -> 4839[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4839 -> 16[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4840[label="vuz41/Neg vuz410",fontsize=10,color="white",style="solid",shape="box"];13 -> 4840[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4840 -> 17[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 14[label="reduce2Reduce1 (vuz30 * Pos vuz410 + vuz40 * Pos vuz310) (primMulInt (Pos vuz310) (Pos vuz410)) (vuz30 * Pos vuz410 + vuz40 * Pos vuz310) (primMulInt (Pos vuz310) (Pos vuz410)) (primEqInt (primMulInt (Pos vuz310) (Pos vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];14 -> 18[label="",style="solid", color="black", weight=3]; 113.88/79.10 15[label="reduce2Reduce1 (vuz30 * Neg vuz410 + vuz40 * Pos vuz310) (primMulInt (Pos vuz310) (Neg vuz410)) (vuz30 * Neg vuz410 + vuz40 * Pos vuz310) (primMulInt (Pos vuz310) (Neg vuz410)) (primEqInt (primMulInt (Pos vuz310) (Neg vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];15 -> 19[label="",style="solid", color="black", weight=3]; 113.88/79.10 16[label="reduce2Reduce1 (vuz30 * Pos vuz410 + vuz40 * Neg vuz310) (primMulInt (Neg vuz310) (Pos vuz410)) (vuz30 * Pos vuz410 + vuz40 * Neg vuz310) (primMulInt (Neg vuz310) (Pos vuz410)) (primEqInt (primMulInt (Neg vuz310) (Pos vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];16 -> 20[label="",style="solid", color="black", weight=3]; 113.88/79.10 17[label="reduce2Reduce1 (vuz30 * Neg vuz410 + vuz40 * Neg vuz310) (primMulInt (Neg vuz310) (Neg vuz410)) (vuz30 * Neg vuz410 + vuz40 * Neg vuz310) (primMulInt (Neg vuz310) (Neg vuz410)) (primEqInt (primMulInt (Neg vuz310) (Neg vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];17 -> 21[label="",style="solid", color="black", weight=3]; 113.88/79.10 18[label="reduce2Reduce1 (vuz30 * Pos vuz410 + vuz40 * Pos vuz310) (Pos (primMulNat vuz310 vuz410)) (vuz30 * Pos vuz410 + vuz40 * Pos vuz310) (Pos (primMulNat vuz310 vuz410)) (primEqInt (Pos (primMulNat vuz310 vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4841[label="vuz310/Succ vuz3100",fontsize=10,color="white",style="solid",shape="box"];18 -> 4841[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4841 -> 22[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4842[label="vuz310/Zero",fontsize=10,color="white",style="solid",shape="box"];18 -> 4842[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4842 -> 23[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 19[label="reduce2Reduce1 (vuz30 * Neg vuz410 + vuz40 * Pos vuz310) (Neg (primMulNat vuz310 vuz410)) (vuz30 * Neg vuz410 + vuz40 * Pos vuz310) (Neg (primMulNat vuz310 vuz410)) (primEqInt (Neg (primMulNat vuz310 vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4843[label="vuz310/Succ vuz3100",fontsize=10,color="white",style="solid",shape="box"];19 -> 4843[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4843 -> 24[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4844[label="vuz310/Zero",fontsize=10,color="white",style="solid",shape="box"];19 -> 4844[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4844 -> 25[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 20[label="reduce2Reduce1 (vuz30 * Pos vuz410 + vuz40 * Neg vuz310) (Neg (primMulNat vuz310 vuz410)) (vuz30 * Pos vuz410 + vuz40 * Neg vuz310) (Neg (primMulNat vuz310 vuz410)) (primEqInt (Neg (primMulNat vuz310 vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4845[label="vuz310/Succ vuz3100",fontsize=10,color="white",style="solid",shape="box"];20 -> 4845[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4845 -> 26[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4846[label="vuz310/Zero",fontsize=10,color="white",style="solid",shape="box"];20 -> 4846[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4846 -> 27[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 21[label="reduce2Reduce1 (vuz30 * Neg vuz410 + vuz40 * Neg vuz310) (Pos (primMulNat vuz310 vuz410)) (vuz30 * Neg vuz410 + vuz40 * Neg vuz310) (Pos (primMulNat vuz310 vuz410)) (primEqInt (Pos (primMulNat vuz310 vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4847[label="vuz310/Succ vuz3100",fontsize=10,color="white",style="solid",shape="box"];21 -> 4847[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4847 -> 28[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4848[label="vuz310/Zero",fontsize=10,color="white",style="solid",shape="box"];21 -> 4848[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4848 -> 29[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 22[label="reduce2Reduce1 (vuz30 * Pos vuz410 + vuz40 * Pos (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) vuz410)) (vuz30 * Pos vuz410 + vuz40 * Pos (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) vuz410)) (primEqInt (Pos (primMulNat (Succ vuz3100) vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4849[label="vuz410/Succ vuz4100",fontsize=10,color="white",style="solid",shape="box"];22 -> 4849[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4849 -> 30[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4850[label="vuz410/Zero",fontsize=10,color="white",style="solid",shape="box"];22 -> 4850[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4850 -> 31[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 23[label="reduce2Reduce1 (vuz30 * Pos vuz410 + vuz40 * Pos Zero) (Pos (primMulNat Zero vuz410)) (vuz30 * Pos vuz410 + vuz40 * Pos Zero) (Pos (primMulNat Zero vuz410)) (primEqInt (Pos (primMulNat Zero vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4851[label="vuz410/Succ vuz4100",fontsize=10,color="white",style="solid",shape="box"];23 -> 4851[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4851 -> 32[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4852[label="vuz410/Zero",fontsize=10,color="white",style="solid",shape="box"];23 -> 4852[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4852 -> 33[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 24[label="reduce2Reduce1 (vuz30 * Neg vuz410 + vuz40 * Pos (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) vuz410)) (vuz30 * Neg vuz410 + vuz40 * Pos (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) vuz410)) (primEqInt (Neg (primMulNat (Succ vuz3100) vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4853[label="vuz410/Succ vuz4100",fontsize=10,color="white",style="solid",shape="box"];24 -> 4853[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4853 -> 34[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4854[label="vuz410/Zero",fontsize=10,color="white",style="solid",shape="box"];24 -> 4854[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4854 -> 35[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 25[label="reduce2Reduce1 (vuz30 * Neg vuz410 + vuz40 * Pos Zero) (Neg (primMulNat Zero vuz410)) (vuz30 * Neg vuz410 + vuz40 * Pos Zero) (Neg (primMulNat Zero vuz410)) (primEqInt (Neg (primMulNat Zero vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4855[label="vuz410/Succ vuz4100",fontsize=10,color="white",style="solid",shape="box"];25 -> 4855[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4855 -> 36[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4856[label="vuz410/Zero",fontsize=10,color="white",style="solid",shape="box"];25 -> 4856[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4856 -> 37[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 26[label="reduce2Reduce1 (vuz30 * Pos vuz410 + vuz40 * Neg (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) vuz410)) (vuz30 * Pos vuz410 + vuz40 * Neg (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) vuz410)) (primEqInt (Neg (primMulNat (Succ vuz3100) vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4857[label="vuz410/Succ vuz4100",fontsize=10,color="white",style="solid",shape="box"];26 -> 4857[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4857 -> 38[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4858[label="vuz410/Zero",fontsize=10,color="white",style="solid",shape="box"];26 -> 4858[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4858 -> 39[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 27[label="reduce2Reduce1 (vuz30 * Pos vuz410 + vuz40 * Neg Zero) (Neg (primMulNat Zero vuz410)) (vuz30 * Pos vuz410 + vuz40 * Neg Zero) (Neg (primMulNat Zero vuz410)) (primEqInt (Neg (primMulNat Zero vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4859[label="vuz410/Succ vuz4100",fontsize=10,color="white",style="solid",shape="box"];27 -> 4859[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4859 -> 40[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4860[label="vuz410/Zero",fontsize=10,color="white",style="solid",shape="box"];27 -> 4860[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4860 -> 41[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 28[label="reduce2Reduce1 (vuz30 * Neg vuz410 + vuz40 * Neg (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) vuz410)) (vuz30 * Neg vuz410 + vuz40 * Neg (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) vuz410)) (primEqInt (Pos (primMulNat (Succ vuz3100) vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4861[label="vuz410/Succ vuz4100",fontsize=10,color="white",style="solid",shape="box"];28 -> 4861[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4861 -> 42[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4862[label="vuz410/Zero",fontsize=10,color="white",style="solid",shape="box"];28 -> 4862[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4862 -> 43[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 29[label="reduce2Reduce1 (vuz30 * Neg vuz410 + vuz40 * Neg Zero) (Pos (primMulNat Zero vuz410)) (vuz30 * Neg vuz410 + vuz40 * Neg Zero) (Pos (primMulNat Zero vuz410)) (primEqInt (Pos (primMulNat Zero vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4863[label="vuz410/Succ vuz4100",fontsize=10,color="white",style="solid",shape="box"];29 -> 4863[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4863 -> 44[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4864[label="vuz410/Zero",fontsize=10,color="white",style="solid",shape="box"];29 -> 4864[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4864 -> 45[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 30[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) (Succ vuz4100))) (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) (Succ vuz4100))) (primEqInt (Pos (primMulNat (Succ vuz3100) (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];30 -> 46[label="",style="solid", color="black", weight=3]; 113.88/79.10 31[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Pos (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) Zero)) (vuz30 * Pos Zero + vuz40 * Pos (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) Zero)) (primEqInt (Pos (primMulNat (Succ vuz3100) Zero)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];31 -> 47[label="",style="solid", color="black", weight=3]; 113.88/79.10 32[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos Zero) (Pos (primMulNat Zero (Succ vuz4100))) (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos Zero) (Pos (primMulNat Zero (Succ vuz4100))) (primEqInt (Pos (primMulNat Zero (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];32 -> 48[label="",style="solid", color="black", weight=3]; 113.88/79.10 33[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Pos Zero) (Pos (primMulNat Zero Zero)) (vuz30 * Pos Zero + vuz40 * Pos Zero) (Pos (primMulNat Zero Zero)) (primEqInt (Pos (primMulNat Zero Zero)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];33 -> 49[label="",style="solid", color="black", weight=3]; 113.88/79.10 34[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) (Succ vuz4100))) (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) (Succ vuz4100))) (primEqInt (Neg (primMulNat (Succ vuz3100) (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];34 -> 50[label="",style="solid", color="black", weight=3]; 113.88/79.10 35[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Pos (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) Zero)) (vuz30 * Neg Zero + vuz40 * Pos (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) Zero)) (primEqInt (Neg (primMulNat (Succ vuz3100) Zero)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];35 -> 51[label="",style="solid", color="black", weight=3]; 113.88/79.10 36[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos Zero) (Neg (primMulNat Zero (Succ vuz4100))) (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos Zero) (Neg (primMulNat Zero (Succ vuz4100))) (primEqInt (Neg (primMulNat Zero (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];36 -> 52[label="",style="solid", color="black", weight=3]; 113.88/79.10 37[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Pos Zero) (Neg (primMulNat Zero Zero)) (vuz30 * Neg Zero + vuz40 * Pos Zero) (Neg (primMulNat Zero Zero)) (primEqInt (Neg (primMulNat Zero Zero)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];37 -> 53[label="",style="solid", color="black", weight=3]; 113.88/79.10 38[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) (Succ vuz4100))) (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) (Succ vuz4100))) (primEqInt (Neg (primMulNat (Succ vuz3100) (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];38 -> 54[label="",style="solid", color="black", weight=3]; 113.88/79.10 39[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Neg (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) Zero)) (vuz30 * Pos Zero + vuz40 * Neg (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) Zero)) (primEqInt (Neg (primMulNat (Succ vuz3100) Zero)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];39 -> 55[label="",style="solid", color="black", weight=3]; 113.88/79.10 40[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg Zero) (Neg (primMulNat Zero (Succ vuz4100))) (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg Zero) (Neg (primMulNat Zero (Succ vuz4100))) (primEqInt (Neg (primMulNat Zero (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];40 -> 56[label="",style="solid", color="black", weight=3]; 113.88/79.10 41[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Neg Zero) (Neg (primMulNat Zero Zero)) (vuz30 * Pos Zero + vuz40 * Neg Zero) (Neg (primMulNat Zero Zero)) (primEqInt (Neg (primMulNat Zero Zero)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];41 -> 57[label="",style="solid", color="black", weight=3]; 113.88/79.10 42[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) (Succ vuz4100))) (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) (Succ vuz4100))) (primEqInt (Pos (primMulNat (Succ vuz3100) (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];42 -> 58[label="",style="solid", color="black", weight=3]; 113.88/79.10 43[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Neg (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) Zero)) (vuz30 * Neg Zero + vuz40 * Neg (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) Zero)) (primEqInt (Pos (primMulNat (Succ vuz3100) Zero)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];43 -> 59[label="",style="solid", color="black", weight=3]; 113.88/79.10 44[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg Zero) (Pos (primMulNat Zero (Succ vuz4100))) (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg Zero) (Pos (primMulNat Zero (Succ vuz4100))) (primEqInt (Pos (primMulNat Zero (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];44 -> 60[label="",style="solid", color="black", weight=3]; 113.88/79.10 45[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Neg Zero) (Pos (primMulNat Zero Zero)) (vuz30 * Neg Zero + vuz40 * Neg Zero) (Pos (primMulNat Zero Zero)) (primEqInt (Pos (primMulNat Zero Zero)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];45 -> 61[label="",style="solid", color="black", weight=3]; 113.88/79.10 46 -> 891[label="",style="dashed", color="red", weight=0]; 113.88/79.10 46[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos (Succ vuz3100)) (Pos (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos (Succ vuz3100)) (Pos (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (primEqInt (Pos (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="magenta"];46 -> 892[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 46 -> 893[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 46 -> 894[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 46 -> 895[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 46 -> 896[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 46 -> 897[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 46 -> 898[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 47[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Pos (Succ vuz3100)) (Pos Zero) (vuz30 * Pos Zero + vuz40 * Pos (Succ vuz3100)) (Pos Zero) (primEqInt (Pos Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];47 -> 64[label="",style="solid", color="black", weight=3]; 113.88/79.10 48[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos Zero) (Pos Zero) (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos Zero) (Pos Zero) (primEqInt (Pos Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];48 -> 65[label="",style="solid", color="black", weight=3]; 113.88/79.10 49[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Pos Zero) (Pos Zero) (vuz30 * Pos Zero + vuz40 * Pos Zero) (Pos Zero) (primEqInt (Pos Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];49 -> 66[label="",style="solid", color="black", weight=3]; 113.88/79.10 50 -> 707[label="",style="dashed", color="red", weight=0]; 113.88/79.10 50[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos (Succ vuz3100)) (Neg (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos (Succ vuz3100)) (Neg (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (primEqInt (Neg (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="magenta"];50 -> 708[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 50 -> 709[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 50 -> 710[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 50 -> 711[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 50 -> 712[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 50 -> 713[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 50 -> 714[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 51[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Pos (Succ vuz3100)) (Neg Zero) (vuz30 * Neg Zero + vuz40 * Pos (Succ vuz3100)) (Neg Zero) (primEqInt (Neg Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];51 -> 69[label="",style="solid", color="black", weight=3]; 113.88/79.10 52[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos Zero) (Neg Zero) (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos Zero) (Neg Zero) (primEqInt (Neg Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];52 -> 70[label="",style="solid", color="black", weight=3]; 113.88/79.10 53[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Pos Zero) (Neg Zero) (vuz30 * Neg Zero + vuz40 * Pos Zero) (Neg Zero) (primEqInt (Neg Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];53 -> 71[label="",style="solid", color="black", weight=3]; 113.88/79.10 54 -> 750[label="",style="dashed", color="red", weight=0]; 113.88/79.10 54[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg (Succ vuz3100)) (Neg (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg (Succ vuz3100)) (Neg (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (primEqInt (Neg (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="magenta"];54 -> 751[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 54 -> 752[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 54 -> 753[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 54 -> 754[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 54 -> 755[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 54 -> 756[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 54 -> 757[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 55[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Neg (Succ vuz3100)) (Neg Zero) (vuz30 * Pos Zero + vuz40 * Neg (Succ vuz3100)) (Neg Zero) (primEqInt (Neg Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];55 -> 74[label="",style="solid", color="black", weight=3]; 113.88/79.10 56[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg Zero) (Neg Zero) (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg Zero) (Neg Zero) (primEqInt (Neg Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];56 -> 75[label="",style="solid", color="black", weight=3]; 113.88/79.10 57[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Neg Zero) (Neg Zero) (vuz30 * Pos Zero + vuz40 * Neg Zero) (Neg Zero) (primEqInt (Neg Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];57 -> 76[label="",style="solid", color="black", weight=3]; 113.88/79.10 58 -> 803[label="",style="dashed", color="red", weight=0]; 113.88/79.10 58[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg (Succ vuz3100)) (Pos (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg (Succ vuz3100)) (Pos (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (primEqInt (Pos (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="magenta"];58 -> 804[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 58 -> 805[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 58 -> 806[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 58 -> 807[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 58 -> 808[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 58 -> 809[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 58 -> 810[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 59[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Neg (Succ vuz3100)) (Pos Zero) (vuz30 * Neg Zero + vuz40 * Neg (Succ vuz3100)) (Pos Zero) (primEqInt (Pos Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];59 -> 79[label="",style="solid", color="black", weight=3]; 113.88/79.10 60[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg Zero) (Pos Zero) (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg Zero) (Pos Zero) (primEqInt (Pos Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];60 -> 80[label="",style="solid", color="black", weight=3]; 113.88/79.10 61[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Neg Zero) (Pos Zero) (vuz30 * Neg Zero + vuz40 * Neg Zero) (Pos Zero) (primEqInt (Pos Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];61 -> 81[label="",style="solid", color="black", weight=3]; 113.88/79.10 892[label="vuz4100",fontsize=16,color="green",shape="box"];893[label="vuz3100",fontsize=16,color="green",shape="box"];894 -> 691[label="",style="dashed", color="red", weight=0]; 113.88/79.10 894[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];894 -> 1062[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 894 -> 1063[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 895[label="vuz30",fontsize=16,color="green",shape="box"];896[label="vuz40",fontsize=16,color="green",shape="box"];897 -> 691[label="",style="dashed", color="red", weight=0]; 113.88/79.10 897[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];897 -> 1064[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 897 -> 1065[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 898 -> 691[label="",style="dashed", color="red", weight=0]; 113.88/79.10 898[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];898 -> 1066[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 898 -> 1067[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 891[label="reduce2Reduce1 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) (primEqInt (Pos vuz55) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="triangle"];4865[label="vuz55/Succ vuz550",fontsize=10,color="white",style="solid",shape="box"];891 -> 4865[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4865 -> 1068[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4866[label="vuz55/Zero",fontsize=10,color="white",style="solid",shape="box"];891 -> 4866[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4866 -> 1069[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 64[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Pos (Succ vuz3100)) (Pos Zero) (vuz30 * Pos Zero + vuz40 * Pos (Succ vuz3100)) (Pos Zero) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];64 -> 84[label="",style="solid", color="black", weight=3]; 113.88/79.10 65[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos Zero) (Pos Zero) (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos Zero) (Pos Zero) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];65 -> 85[label="",style="solid", color="black", weight=3]; 113.88/79.10 66[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Pos Zero) (Pos Zero) (vuz30 * Pos Zero + vuz40 * Pos Zero) (Pos Zero) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];66 -> 86[label="",style="solid", color="black", weight=3]; 113.88/79.10 708[label="vuz4100",fontsize=16,color="green",shape="box"];709[label="vuz40",fontsize=16,color="green",shape="box"];710 -> 691[label="",style="dashed", color="red", weight=0]; 113.88/79.10 710[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];710 -> 745[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 711[label="vuz3100",fontsize=16,color="green",shape="box"];712 -> 691[label="",style="dashed", color="red", weight=0]; 113.88/79.10 712[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];712 -> 746[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 713[label="vuz30",fontsize=16,color="green",shape="box"];714 -> 691[label="",style="dashed", color="red", weight=0]; 113.88/79.10 714[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];714 -> 747[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 707[label="reduce2Reduce1 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) (primEqInt (Neg vuz46) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="triangle"];4867[label="vuz46/Succ vuz460",fontsize=10,color="white",style="solid",shape="box"];707 -> 4867[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4867 -> 748[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4868[label="vuz46/Zero",fontsize=10,color="white",style="solid",shape="box"];707 -> 4868[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4868 -> 749[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 69[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Pos (Succ vuz3100)) (Neg Zero) (vuz30 * Neg Zero + vuz40 * Pos (Succ vuz3100)) (Neg Zero) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];69 -> 89[label="",style="solid", color="black", weight=3]; 113.88/79.10 70[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos Zero) (Neg Zero) (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos Zero) (Neg Zero) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];70 -> 90[label="",style="solid", color="black", weight=3]; 113.88/79.10 71[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Pos Zero) (Neg Zero) (vuz30 * Neg Zero + vuz40 * Pos Zero) (Neg Zero) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];71 -> 91[label="",style="solid", color="black", weight=3]; 113.88/79.10 751[label="vuz30",fontsize=16,color="green",shape="box"];752[label="vuz4100",fontsize=16,color="green",shape="box"];753 -> 691[label="",style="dashed", color="red", weight=0]; 113.88/79.10 753[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];753 -> 788[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 753 -> 789[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 754[label="vuz40",fontsize=16,color="green",shape="box"];755 -> 691[label="",style="dashed", color="red", weight=0]; 113.88/79.10 755[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];755 -> 790[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 755 -> 791[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 756[label="vuz3100",fontsize=16,color="green",shape="box"];757 -> 691[label="",style="dashed", color="red", weight=0]; 113.88/79.10 757[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];757 -> 792[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 757 -> 793[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 750[label="reduce2Reduce1 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) (primEqInt (Neg vuz49) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="triangle"];4869[label="vuz49/Succ vuz490",fontsize=10,color="white",style="solid",shape="box"];750 -> 4869[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4869 -> 794[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4870[label="vuz49/Zero",fontsize=10,color="white",style="solid",shape="box"];750 -> 4870[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4870 -> 795[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 74[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Neg (Succ vuz3100)) (Neg Zero) (vuz30 * Pos Zero + vuz40 * Neg (Succ vuz3100)) (Neg Zero) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];74 -> 94[label="",style="solid", color="black", weight=3]; 113.88/79.10 75[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg Zero) (Neg Zero) (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg Zero) (Neg Zero) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];75 -> 95[label="",style="solid", color="black", weight=3]; 113.88/79.10 76[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Neg Zero) (Neg Zero) (vuz30 * Pos Zero + vuz40 * Neg Zero) (Neg Zero) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];76 -> 96[label="",style="solid", color="black", weight=3]; 113.88/79.10 804[label="vuz3100",fontsize=16,color="green",shape="box"];805 -> 691[label="",style="dashed", color="red", weight=0]; 113.88/79.10 805[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];805 -> 841[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 806[label="vuz30",fontsize=16,color="green",shape="box"];807[label="vuz40",fontsize=16,color="green",shape="box"];808 -> 691[label="",style="dashed", color="red", weight=0]; 113.88/79.10 808[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];808 -> 842[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 809[label="vuz4100",fontsize=16,color="green",shape="box"];810 -> 691[label="",style="dashed", color="red", weight=0]; 113.88/79.10 810[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];810 -> 843[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 803[label="reduce2Reduce1 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) (primEqInt (Pos vuz52) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="triangle"];4871[label="vuz52/Succ vuz520",fontsize=10,color="white",style="solid",shape="box"];803 -> 4871[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4871 -> 844[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4872[label="vuz52/Zero",fontsize=10,color="white",style="solid",shape="box"];803 -> 4872[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4872 -> 845[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 79[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Neg (Succ vuz3100)) (Pos Zero) (vuz30 * Neg Zero + vuz40 * Neg (Succ vuz3100)) (Pos Zero) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];79 -> 99[label="",style="solid", color="black", weight=3]; 113.88/79.10 80[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg Zero) (Pos Zero) (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg Zero) (Pos Zero) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];80 -> 100[label="",style="solid", color="black", weight=3]; 113.88/79.10 81[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Neg Zero) (Pos Zero) (vuz30 * Neg Zero + vuz40 * Neg Zero) (Pos Zero) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];81 -> 101[label="",style="solid", color="black", weight=3]; 113.88/79.10 1062 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1062[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];1062 -> 1077[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1062 -> 1078[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1063[label="vuz4100",fontsize=16,color="green",shape="box"];691[label="primPlusNat vuz43 (Succ vuz4100)",fontsize=16,color="burlywood",shape="triangle"];4873[label="vuz43/Succ vuz430",fontsize=10,color="white",style="solid",shape="box"];691 -> 4873[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4873 -> 797[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4874[label="vuz43/Zero",fontsize=10,color="white",style="solid",shape="box"];691 -> 4874[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4874 -> 798[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1064 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1064[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];1064 -> 1079[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1064 -> 1080[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1065[label="vuz4100",fontsize=16,color="green",shape="box"];1066 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1066[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];1066 -> 1081[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1066 -> 1082[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1067[label="vuz4100",fontsize=16,color="green",shape="box"];1068[label="reduce2Reduce1 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) (primEqInt (Pos (Succ vuz550)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1068 -> 1083[label="",style="solid", color="black", weight=3]; 113.88/79.10 1069[label="reduce2Reduce1 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) (primEqInt (Pos Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1069 -> 1084[label="",style="solid", color="black", weight=3]; 113.88/79.10 84[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Pos (Succ vuz3100)) (Pos Zero) (vuz30 * Pos Zero + vuz40 * Pos (Succ vuz3100)) (Pos Zero) True",fontsize=16,color="black",shape="box"];84 -> 105[label="",style="solid", color="black", weight=3]; 113.88/79.10 85[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos Zero) (Pos Zero) (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos Zero) (Pos Zero) True",fontsize=16,color="black",shape="box"];85 -> 106[label="",style="solid", color="black", weight=3]; 113.88/79.10 86[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Pos Zero) (Pos Zero) (vuz30 * Pos Zero + vuz40 * Pos Zero) (Pos Zero) True",fontsize=16,color="black",shape="box"];86 -> 107[label="",style="solid", color="black", weight=3]; 113.88/79.10 745 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 745[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];745 -> 796[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 746 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 746[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];746 -> 799[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 747 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 747[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];747 -> 800[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 748[label="reduce2Reduce1 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) (primEqInt (Neg (Succ vuz460)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];748 -> 801[label="",style="solid", color="black", weight=3]; 113.88/79.10 749[label="reduce2Reduce1 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) (primEqInt (Neg Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];749 -> 802[label="",style="solid", color="black", weight=3]; 113.88/79.10 89[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Pos (Succ vuz3100)) (Neg Zero) (vuz30 * Neg Zero + vuz40 * Pos (Succ vuz3100)) (Neg Zero) True",fontsize=16,color="black",shape="box"];89 -> 111[label="",style="solid", color="black", weight=3]; 113.88/79.10 90[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos Zero) (Neg Zero) (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos Zero) (Neg Zero) True",fontsize=16,color="black",shape="box"];90 -> 112[label="",style="solid", color="black", weight=3]; 113.88/79.10 91[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Pos Zero) (Neg Zero) (vuz30 * Neg Zero + vuz40 * Pos Zero) (Neg Zero) True",fontsize=16,color="black",shape="box"];91 -> 113[label="",style="solid", color="black", weight=3]; 113.88/79.10 788 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 788[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];788 -> 846[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 788 -> 847[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 789[label="vuz4100",fontsize=16,color="green",shape="box"];790 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 790[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];790 -> 848[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 790 -> 849[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 791[label="vuz4100",fontsize=16,color="green",shape="box"];792 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 792[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];792 -> 850[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 792 -> 851[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 793[label="vuz4100",fontsize=16,color="green",shape="box"];794[label="reduce2Reduce1 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) (primEqInt (Neg (Succ vuz490)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];794 -> 852[label="",style="solid", color="black", weight=3]; 113.88/79.10 795[label="reduce2Reduce1 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) (primEqInt (Neg Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];795 -> 853[label="",style="solid", color="black", weight=3]; 113.88/79.10 94[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Neg (Succ vuz3100)) (Neg Zero) (vuz30 * Pos Zero + vuz40 * Neg (Succ vuz3100)) (Neg Zero) True",fontsize=16,color="black",shape="box"];94 -> 117[label="",style="solid", color="black", weight=3]; 113.88/79.10 95[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg Zero) (Neg Zero) (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg Zero) (Neg Zero) True",fontsize=16,color="black",shape="box"];95 -> 118[label="",style="solid", color="black", weight=3]; 113.88/79.10 96[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Neg Zero) (Neg Zero) (vuz30 * Pos Zero + vuz40 * Neg Zero) (Neg Zero) True",fontsize=16,color="black",shape="box"];96 -> 119[label="",style="solid", color="black", weight=3]; 113.88/79.10 841 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 841[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];841 -> 879[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 842 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 842[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];842 -> 880[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 843 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 843[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];843 -> 881[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 844[label="reduce2Reduce1 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) (primEqInt (Pos (Succ vuz520)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];844 -> 882[label="",style="solid", color="black", weight=3]; 113.88/79.10 845[label="reduce2Reduce1 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) (primEqInt (Pos Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];845 -> 883[label="",style="solid", color="black", weight=3]; 113.88/79.10 99[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Neg (Succ vuz3100)) (Pos Zero) (vuz30 * Neg Zero + vuz40 * Neg (Succ vuz3100)) (Pos Zero) True",fontsize=16,color="black",shape="box"];99 -> 123[label="",style="solid", color="black", weight=3]; 113.88/79.10 100[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg Zero) (Pos Zero) (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg Zero) (Pos Zero) True",fontsize=16,color="black",shape="box"];100 -> 124[label="",style="solid", color="black", weight=3]; 113.88/79.10 101[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Neg Zero) (Pos Zero) (vuz30 * Neg Zero + vuz40 * Neg Zero) (Pos Zero) True",fontsize=16,color="black",shape="box"];101 -> 125[label="",style="solid", color="black", weight=3]; 113.88/79.10 1077[label="vuz3100",fontsize=16,color="green",shape="box"];1078[label="vuz4100",fontsize=16,color="green",shape="box"];358[label="primMulNat vuz31000 (Succ vuz4100)",fontsize=16,color="burlywood",shape="triangle"];4875[label="vuz31000/Succ vuz310000",fontsize=10,color="white",style="solid",shape="box"];358 -> 4875[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4875 -> 456[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4876[label="vuz31000/Zero",fontsize=10,color="white",style="solid",shape="box"];358 -> 4876[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4876 -> 457[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 797[label="primPlusNat (Succ vuz430) (Succ vuz4100)",fontsize=16,color="black",shape="box"];797 -> 854[label="",style="solid", color="black", weight=3]; 113.88/79.10 798[label="primPlusNat Zero (Succ vuz4100)",fontsize=16,color="black",shape="box"];798 -> 855[label="",style="solid", color="black", weight=3]; 113.88/79.10 1079[label="vuz3100",fontsize=16,color="green",shape="box"];1080[label="vuz4100",fontsize=16,color="green",shape="box"];1081[label="vuz3100",fontsize=16,color="green",shape="box"];1082[label="vuz4100",fontsize=16,color="green",shape="box"];1083[label="reduce2Reduce1 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) (primEqInt (Pos (Succ vuz550)) (Pos Zero))",fontsize=16,color="black",shape="box"];1083 -> 1093[label="",style="solid", color="black", weight=3]; 113.88/79.10 1084[label="reduce2Reduce1 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];1084 -> 1094[label="",style="solid", color="black", weight=3]; 113.88/79.10 105[label="error []",fontsize=16,color="black",shape="triangle"];105 -> 129[label="",style="solid", color="black", weight=3]; 113.88/79.10 106 -> 105[label="",style="dashed", color="red", weight=0]; 113.88/79.10 106[label="error []",fontsize=16,color="magenta"];107 -> 105[label="",style="dashed", color="red", weight=0]; 113.88/79.10 107[label="error []",fontsize=16,color="magenta"];796[label="vuz3100",fontsize=16,color="green",shape="box"];799[label="vuz3100",fontsize=16,color="green",shape="box"];800[label="vuz3100",fontsize=16,color="green",shape="box"];801[label="reduce2Reduce1 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) (primEqInt (Neg (Succ vuz460)) (Pos Zero))",fontsize=16,color="black",shape="box"];801 -> 856[label="",style="solid", color="black", weight=3]; 113.88/79.10 802[label="reduce2Reduce1 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];802 -> 857[label="",style="solid", color="black", weight=3]; 113.88/79.10 111 -> 105[label="",style="dashed", color="red", weight=0]; 113.88/79.10 111[label="error []",fontsize=16,color="magenta"];112 -> 105[label="",style="dashed", color="red", weight=0]; 113.88/79.10 112[label="error []",fontsize=16,color="magenta"];113 -> 105[label="",style="dashed", color="red", weight=0]; 113.88/79.10 113[label="error []",fontsize=16,color="magenta"];846[label="vuz3100",fontsize=16,color="green",shape="box"];847[label="vuz4100",fontsize=16,color="green",shape="box"];848[label="vuz3100",fontsize=16,color="green",shape="box"];849[label="vuz4100",fontsize=16,color="green",shape="box"];850[label="vuz3100",fontsize=16,color="green",shape="box"];851[label="vuz4100",fontsize=16,color="green",shape="box"];852[label="reduce2Reduce1 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) (primEqInt (Neg (Succ vuz490)) (Pos Zero))",fontsize=16,color="black",shape="box"];852 -> 884[label="",style="solid", color="black", weight=3]; 113.88/79.10 853[label="reduce2Reduce1 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];853 -> 885[label="",style="solid", color="black", weight=3]; 113.88/79.10 117 -> 105[label="",style="dashed", color="red", weight=0]; 113.88/79.10 117[label="error []",fontsize=16,color="magenta"];118 -> 105[label="",style="dashed", color="red", weight=0]; 113.88/79.10 118[label="error []",fontsize=16,color="magenta"];119 -> 105[label="",style="dashed", color="red", weight=0]; 113.88/79.10 119[label="error []",fontsize=16,color="magenta"];879[label="vuz3100",fontsize=16,color="green",shape="box"];880[label="vuz3100",fontsize=16,color="green",shape="box"];881[label="vuz3100",fontsize=16,color="green",shape="box"];882[label="reduce2Reduce1 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) (primEqInt (Pos (Succ vuz520)) (Pos Zero))",fontsize=16,color="black",shape="box"];882 -> 1070[label="",style="solid", color="black", weight=3]; 113.88/79.10 883[label="reduce2Reduce1 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];883 -> 1071[label="",style="solid", color="black", weight=3]; 113.88/79.10 123 -> 105[label="",style="dashed", color="red", weight=0]; 113.88/79.10 123[label="error []",fontsize=16,color="magenta"];124 -> 105[label="",style="dashed", color="red", weight=0]; 113.88/79.10 124[label="error []",fontsize=16,color="magenta"];125 -> 105[label="",style="dashed", color="red", weight=0]; 113.88/79.10 125[label="error []",fontsize=16,color="magenta"];456[label="primMulNat (Succ vuz310000) (Succ vuz4100)",fontsize=16,color="black",shape="box"];456 -> 574[label="",style="solid", color="black", weight=3]; 113.88/79.10 457[label="primMulNat Zero (Succ vuz4100)",fontsize=16,color="black",shape="box"];457 -> 575[label="",style="solid", color="black", weight=3]; 113.88/79.10 854[label="Succ (Succ (primPlusNat vuz430 vuz4100))",fontsize=16,color="green",shape="box"];854 -> 886[label="",style="dashed", color="green", weight=3]; 113.88/79.10 855[label="Succ vuz4100",fontsize=16,color="green",shape="box"];1093[label="reduce2Reduce1 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) False",fontsize=16,color="black",shape="box"];1093 -> 1103[label="",style="solid", color="black", weight=3]; 113.88/79.10 1094[label="reduce2Reduce1 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) True",fontsize=16,color="black",shape="box"];1094 -> 1104[label="",style="solid", color="black", weight=3]; 113.88/79.10 129[label="error []",fontsize=16,color="red",shape="box"];856[label="reduce2Reduce1 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) False",fontsize=16,color="black",shape="box"];856 -> 887[label="",style="solid", color="black", weight=3]; 113.88/79.10 857[label="reduce2Reduce1 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) True",fontsize=16,color="black",shape="box"];857 -> 888[label="",style="solid", color="black", weight=3]; 113.88/79.10 884[label="reduce2Reduce1 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) False",fontsize=16,color="black",shape="box"];884 -> 1072[label="",style="solid", color="black", weight=3]; 113.88/79.10 885[label="reduce2Reduce1 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) True",fontsize=16,color="black",shape="box"];885 -> 1073[label="",style="solid", color="black", weight=3]; 113.88/79.10 1070[label="reduce2Reduce1 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) False",fontsize=16,color="black",shape="box"];1070 -> 1085[label="",style="solid", color="black", weight=3]; 113.88/79.10 1071[label="reduce2Reduce1 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) True",fontsize=16,color="black",shape="box"];1071 -> 1086[label="",style="solid", color="black", weight=3]; 113.88/79.10 574 -> 691[label="",style="dashed", color="red", weight=0]; 113.88/79.10 574[label="primPlusNat (primMulNat vuz310000 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];574 -> 692[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 575[label="Zero",fontsize=16,color="green",shape="box"];886[label="primPlusNat vuz430 vuz4100",fontsize=16,color="burlywood",shape="triangle"];4877[label="vuz430/Succ vuz4300",fontsize=10,color="white",style="solid",shape="box"];886 -> 4877[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4877 -> 1074[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4878[label="vuz430/Zero",fontsize=10,color="white",style="solid",shape="box"];886 -> 4878[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4878 -> 1075[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1103[label="reduce2Reduce0 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) otherwise",fontsize=16,color="black",shape="box"];1103 -> 1111[label="",style="solid", color="black", weight=3]; 113.88/79.10 1104 -> 105[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1104[label="error []",fontsize=16,color="magenta"];887[label="reduce2Reduce0 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) otherwise",fontsize=16,color="black",shape="box"];887 -> 1076[label="",style="solid", color="black", weight=3]; 113.88/79.10 888 -> 105[label="",style="dashed", color="red", weight=0]; 113.88/79.10 888[label="error []",fontsize=16,color="magenta"];1072[label="reduce2Reduce0 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) otherwise",fontsize=16,color="black",shape="box"];1072 -> 1087[label="",style="solid", color="black", weight=3]; 113.88/79.10 1073 -> 105[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1073[label="error []",fontsize=16,color="magenta"];1085[label="reduce2Reduce0 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) otherwise",fontsize=16,color="black",shape="box"];1085 -> 1095[label="",style="solid", color="black", weight=3]; 113.88/79.10 1086 -> 105[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1086[label="error []",fontsize=16,color="magenta"];692 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 692[label="primMulNat vuz310000 (Succ vuz4100)",fontsize=16,color="magenta"];692 -> 858[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1074[label="primPlusNat (Succ vuz4300) vuz4100",fontsize=16,color="burlywood",shape="box"];4879[label="vuz4100/Succ vuz41000",fontsize=10,color="white",style="solid",shape="box"];1074 -> 4879[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4879 -> 1088[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4880[label="vuz4100/Zero",fontsize=10,color="white",style="solid",shape="box"];1074 -> 4880[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4880 -> 1089[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1075[label="primPlusNat Zero vuz4100",fontsize=16,color="burlywood",shape="box"];4881[label="vuz4100/Succ vuz41000",fontsize=10,color="white",style="solid",shape="box"];1075 -> 4881[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4881 -> 1090[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4882[label="vuz4100/Zero",fontsize=10,color="white",style="solid",shape="box"];1075 -> 4882[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4882 -> 1091[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1111[label="reduce2Reduce0 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) True",fontsize=16,color="black",shape="box"];1111 -> 1120[label="",style="solid", color="black", weight=3]; 113.88/79.10 1076[label="reduce2Reduce0 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) True",fontsize=16,color="black",shape="box"];1076 -> 1092[label="",style="solid", color="black", weight=3]; 113.88/79.10 1087[label="reduce2Reduce0 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) True",fontsize=16,color="black",shape="box"];1087 -> 1096[label="",style="solid", color="black", weight=3]; 113.88/79.10 1095[label="reduce2Reduce0 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) True",fontsize=16,color="black",shape="box"];1095 -> 1105[label="",style="solid", color="black", weight=3]; 113.88/79.10 858[label="vuz310000",fontsize=16,color="green",shape="box"];1088[label="primPlusNat (Succ vuz4300) (Succ vuz41000)",fontsize=16,color="black",shape="box"];1088 -> 1097[label="",style="solid", color="black", weight=3]; 113.88/79.10 1089[label="primPlusNat (Succ vuz4300) Zero",fontsize=16,color="black",shape="box"];1089 -> 1098[label="",style="solid", color="black", weight=3]; 113.88/79.10 1090[label="primPlusNat Zero (Succ vuz41000)",fontsize=16,color="black",shape="box"];1090 -> 1099[label="",style="solid", color="black", weight=3]; 113.88/79.10 1091[label="primPlusNat Zero Zero",fontsize=16,color="black",shape="box"];1091 -> 1100[label="",style="solid", color="black", weight=3]; 113.88/79.10 1120[label="(vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) `quot` reduce2D (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) :% (Pos vuz53 `quot` reduce2D (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54))",fontsize=16,color="green",shape="box"];1120 -> 1127[label="",style="dashed", color="green", weight=3]; 113.88/79.10 1120 -> 1128[label="",style="dashed", color="green", weight=3]; 113.88/79.10 1092[label="(vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) `quot` reduce2D (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) :% (Neg vuz44 `quot` reduce2D (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45))",fontsize=16,color="green",shape="box"];1092 -> 1101[label="",style="dashed", color="green", weight=3]; 113.88/79.10 1092 -> 1102[label="",style="dashed", color="green", weight=3]; 113.88/79.10 1096[label="(vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) `quot` reduce2D (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) :% (Neg vuz47 `quot` reduce2D (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48))",fontsize=16,color="green",shape="box"];1096 -> 1106[label="",style="dashed", color="green", weight=3]; 113.88/79.10 1096 -> 1107[label="",style="dashed", color="green", weight=3]; 113.88/79.10 1105[label="(vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) `quot` reduce2D (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) :% (Pos vuz50 `quot` reduce2D (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51))",fontsize=16,color="green",shape="box"];1105 -> 1112[label="",style="dashed", color="green", weight=3]; 113.88/79.10 1105 -> 1113[label="",style="dashed", color="green", weight=3]; 113.88/79.10 1097[label="Succ (Succ (primPlusNat vuz4300 vuz41000))",fontsize=16,color="green",shape="box"];1097 -> 1108[label="",style="dashed", color="green", weight=3]; 113.88/79.10 1098[label="Succ vuz4300",fontsize=16,color="green",shape="box"];1099[label="Succ vuz41000",fontsize=16,color="green",shape="box"];1100[label="Zero",fontsize=16,color="green",shape="box"];1127[label="(vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) `quot` reduce2D (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54)",fontsize=16,color="black",shape="box"];1127 -> 1136[label="",style="solid", color="black", weight=3]; 113.88/79.10 1128[label="Pos vuz53 `quot` reduce2D (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54)",fontsize=16,color="black",shape="box"];1128 -> 1137[label="",style="solid", color="black", weight=3]; 113.88/79.10 1101[label="(vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) `quot` reduce2D (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45)",fontsize=16,color="black",shape="box"];1101 -> 1109[label="",style="solid", color="black", weight=3]; 113.88/79.10 1102[label="Neg vuz44 `quot` reduce2D (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45)",fontsize=16,color="black",shape="box"];1102 -> 1110[label="",style="solid", color="black", weight=3]; 113.88/79.10 1106[label="(vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) `quot` reduce2D (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48)",fontsize=16,color="black",shape="box"];1106 -> 1114[label="",style="solid", color="black", weight=3]; 113.88/79.10 1107[label="Neg vuz47 `quot` reduce2D (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48)",fontsize=16,color="black",shape="box"];1107 -> 1115[label="",style="solid", color="black", weight=3]; 113.88/79.10 1112[label="(vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) `quot` reduce2D (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51)",fontsize=16,color="black",shape="box"];1112 -> 1121[label="",style="solid", color="black", weight=3]; 113.88/79.10 1113[label="Pos vuz50 `quot` reduce2D (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51)",fontsize=16,color="black",shape="box"];1113 -> 1122[label="",style="solid", color="black", weight=3]; 113.88/79.10 1108 -> 886[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1108[label="primPlusNat vuz4300 vuz41000",fontsize=16,color="magenta"];1108 -> 1116[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1108 -> 1117[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1136[label="primQuotInt (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (reduce2D (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54))",fontsize=16,color="black",shape="box"];1136 -> 1146[label="",style="solid", color="black", weight=3]; 113.88/79.10 1137 -> 3726[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1137[label="primQuotInt (Pos vuz53) (reduce2D (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54))",fontsize=16,color="magenta"];1137 -> 3727[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1109[label="primQuotInt (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (reduce2D (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45))",fontsize=16,color="black",shape="box"];1109 -> 1118[label="",style="solid", color="black", weight=3]; 113.88/79.10 1110 -> 2269[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1110[label="primQuotInt (Neg vuz44) (reduce2D (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45))",fontsize=16,color="magenta"];1110 -> 2270[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1110 -> 2271[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1114[label="primQuotInt (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (reduce2D (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48))",fontsize=16,color="black",shape="box"];1114 -> 1123[label="",style="solid", color="black", weight=3]; 113.88/79.10 1115 -> 2269[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1115[label="primQuotInt (Neg vuz47) (reduce2D (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48))",fontsize=16,color="magenta"];1115 -> 2272[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1115 -> 2273[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1121[label="primQuotInt (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (reduce2D (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51))",fontsize=16,color="black",shape="box"];1121 -> 1129[label="",style="solid", color="black", weight=3]; 113.88/79.10 1122 -> 3726[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1122[label="primQuotInt (Pos vuz50) (reduce2D (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51))",fontsize=16,color="magenta"];1122 -> 3728[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1122 -> 3729[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1116[label="vuz4300",fontsize=16,color="green",shape="box"];1117[label="vuz41000",fontsize=16,color="green",shape="box"];1146[label="primQuotInt (primPlusInt (vuz6 * Pos (Succ vuz7)) (vuz8 * Pos (Succ vuz9))) (reduce2D (primPlusInt (vuz6 * Pos (Succ vuz7)) (vuz8 * Pos (Succ vuz9))) (Pos vuz54))",fontsize=16,color="black",shape="box"];1146 -> 1157[label="",style="solid", color="black", weight=3]; 113.88/79.10 3727[label="reduce2D (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54)",fontsize=16,color="black",shape="box"];3727 -> 4192[label="",style="solid", color="black", weight=3]; 113.88/79.10 3726[label="primQuotInt (Pos vuz53) vuz220",fontsize=16,color="burlywood",shape="triangle"];4883[label="vuz220/Pos vuz2200",fontsize=10,color="white",style="solid",shape="box"];3726 -> 4883[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4883 -> 4193[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4884[label="vuz220/Neg vuz2200",fontsize=10,color="white",style="solid",shape="box"];3726 -> 4884[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4884 -> 4194[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1118[label="primQuotInt (primPlusInt (vuz17 * Neg (Succ vuz18)) (vuz19 * Pos (Succ vuz20))) (reduce2D (primPlusInt (vuz17 * Neg (Succ vuz18)) (vuz19 * Pos (Succ vuz20))) (Neg vuz45))",fontsize=16,color="black",shape="box"];1118 -> 1125[label="",style="solid", color="black", weight=3]; 113.88/79.10 2270[label="vuz44",fontsize=16,color="green",shape="box"];2271[label="reduce2D (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2271 -> 2788[label="",style="solid", color="black", weight=3]; 113.88/79.10 2269[label="primQuotInt (Neg vuz158) vuz159",fontsize=16,color="burlywood",shape="triangle"];4885[label="vuz159/Pos vuz1590",fontsize=10,color="white",style="solid",shape="box"];2269 -> 4885[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4885 -> 2789[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4886[label="vuz159/Neg vuz1590",fontsize=10,color="white",style="solid",shape="box"];2269 -> 4886[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4886 -> 2790[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1123[label="primQuotInt (primPlusInt (vuz22 * Pos (Succ vuz23)) (vuz24 * Neg (Succ vuz25))) (reduce2D (primPlusInt (vuz22 * Pos (Succ vuz23)) (vuz24 * Neg (Succ vuz25))) (Neg vuz48))",fontsize=16,color="black",shape="box"];1123 -> 1131[label="",style="solid", color="black", weight=3]; 113.88/79.10 2272[label="vuz47",fontsize=16,color="green",shape="box"];2273[label="reduce2D (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48)",fontsize=16,color="black",shape="box"];2273 -> 2791[label="",style="solid", color="black", weight=3]; 113.88/79.10 1129[label="primQuotInt (primPlusInt (vuz27 * Neg (Succ vuz28)) (vuz29 * Neg (Succ vuz30))) (reduce2D (primPlusInt (vuz27 * Neg (Succ vuz28)) (vuz29 * Neg (Succ vuz30))) (Pos vuz51))",fontsize=16,color="black",shape="box"];1129 -> 1138[label="",style="solid", color="black", weight=3]; 113.88/79.10 3728[label="reduce2D (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51)",fontsize=16,color="black",shape="box"];3728 -> 4195[label="",style="solid", color="black", weight=3]; 113.88/79.10 3729[label="vuz50",fontsize=16,color="green",shape="box"];1157[label="primQuotInt (primPlusInt (primMulInt vuz6 (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (reduce2D (primPlusInt (primMulInt vuz6 (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54))",fontsize=16,color="burlywood",shape="box"];4887[label="vuz6/Pos vuz60",fontsize=10,color="white",style="solid",shape="box"];1157 -> 4887[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4887 -> 1165[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4888[label="vuz6/Neg vuz60",fontsize=10,color="white",style="solid",shape="box"];1157 -> 4888[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4888 -> 1166[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4192[label="gcd (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4192 -> 4200[label="",style="solid", color="black", weight=3]; 113.88/79.10 4193[label="primQuotInt (Pos vuz53) (Pos vuz2200)",fontsize=16,color="burlywood",shape="box"];4889[label="vuz2200/Succ vuz22000",fontsize=10,color="white",style="solid",shape="box"];4193 -> 4889[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4889 -> 4201[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4890[label="vuz2200/Zero",fontsize=10,color="white",style="solid",shape="box"];4193 -> 4890[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4890 -> 4202[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4194[label="primQuotInt (Pos vuz53) (Neg vuz2200)",fontsize=16,color="burlywood",shape="box"];4891[label="vuz2200/Succ vuz22000",fontsize=10,color="white",style="solid",shape="box"];4194 -> 4891[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4891 -> 4203[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4892[label="vuz2200/Zero",fontsize=10,color="white",style="solid",shape="box"];4194 -> 4892[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4892 -> 4204[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1125[label="primQuotInt (primPlusInt (primMulInt vuz17 (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (reduce2D (primPlusInt (primMulInt vuz17 (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45))",fontsize=16,color="burlywood",shape="box"];4893[label="vuz17/Pos vuz170",fontsize=10,color="white",style="solid",shape="box"];1125 -> 4893[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4893 -> 1133[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4894[label="vuz17/Neg vuz170",fontsize=10,color="white",style="solid",shape="box"];1125 -> 4894[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4894 -> 1134[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 2788[label="gcd (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2788 -> 2797[label="",style="solid", color="black", weight=3]; 113.88/79.10 2789[label="primQuotInt (Neg vuz158) (Pos vuz1590)",fontsize=16,color="burlywood",shape="box"];4895[label="vuz1590/Succ vuz15900",fontsize=10,color="white",style="solid",shape="box"];2789 -> 4895[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4895 -> 2798[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4896[label="vuz1590/Zero",fontsize=10,color="white",style="solid",shape="box"];2789 -> 4896[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4896 -> 2799[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 2790[label="primQuotInt (Neg vuz158) (Neg vuz1590)",fontsize=16,color="burlywood",shape="box"];4897[label="vuz1590/Succ vuz15900",fontsize=10,color="white",style="solid",shape="box"];2790 -> 4897[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4897 -> 2800[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4898[label="vuz1590/Zero",fontsize=10,color="white",style="solid",shape="box"];2790 -> 4898[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4898 -> 2801[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1131[label="primQuotInt (primPlusInt (primMulInt vuz22 (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (reduce2D (primPlusInt (primMulInt vuz22 (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48))",fontsize=16,color="burlywood",shape="box"];4899[label="vuz22/Pos vuz220",fontsize=10,color="white",style="solid",shape="box"];1131 -> 4899[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4899 -> 1140[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4900[label="vuz22/Neg vuz220",fontsize=10,color="white",style="solid",shape="box"];1131 -> 4900[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4900 -> 1141[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 2791[label="gcd (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48)",fontsize=16,color="black",shape="box"];2791 -> 2802[label="",style="solid", color="black", weight=3]; 113.88/79.10 1138[label="primQuotInt (primPlusInt (primMulInt vuz27 (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (reduce2D (primPlusInt (primMulInt vuz27 (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51))",fontsize=16,color="burlywood",shape="box"];4901[label="vuz27/Pos vuz270",fontsize=10,color="white",style="solid",shape="box"];1138 -> 4901[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4901 -> 1148[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4902[label="vuz27/Neg vuz270",fontsize=10,color="white",style="solid",shape="box"];1138 -> 4902[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4902 -> 1149[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4195[label="gcd (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51)",fontsize=16,color="black",shape="box"];4195 -> 4205[label="",style="solid", color="black", weight=3]; 113.88/79.10 1165[label="primQuotInt (primPlusInt (primMulInt (Pos vuz60) (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (reduce2D (primPlusInt (primMulInt (Pos vuz60) (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54))",fontsize=16,color="black",shape="box"];1165 -> 1172[label="",style="solid", color="black", weight=3]; 113.88/79.10 1166[label="primQuotInt (primPlusInt (primMulInt (Neg vuz60) (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (reduce2D (primPlusInt (primMulInt (Neg vuz60) (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54))",fontsize=16,color="black",shape="box"];1166 -> 1173[label="",style="solid", color="black", weight=3]; 113.88/79.10 4200[label="gcd3 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4200 -> 4212[label="",style="solid", color="black", weight=3]; 113.88/79.10 4201[label="primQuotInt (Pos vuz53) (Pos (Succ vuz22000))",fontsize=16,color="black",shape="box"];4201 -> 4213[label="",style="solid", color="black", weight=3]; 113.88/79.10 4202[label="primQuotInt (Pos vuz53) (Pos Zero)",fontsize=16,color="black",shape="box"];4202 -> 4214[label="",style="solid", color="black", weight=3]; 113.88/79.10 4203[label="primQuotInt (Pos vuz53) (Neg (Succ vuz22000))",fontsize=16,color="black",shape="box"];4203 -> 4215[label="",style="solid", color="black", weight=3]; 113.88/79.10 4204[label="primQuotInt (Pos vuz53) (Neg Zero)",fontsize=16,color="black",shape="box"];4204 -> 4216[label="",style="solid", color="black", weight=3]; 113.88/79.10 1133[label="primQuotInt (primPlusInt (primMulInt (Pos vuz170) (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (reduce2D (primPlusInt (primMulInt (Pos vuz170) (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45))",fontsize=16,color="black",shape="box"];1133 -> 1143[label="",style="solid", color="black", weight=3]; 113.88/79.10 1134[label="primQuotInt (primPlusInt (primMulInt (Neg vuz170) (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (reduce2D (primPlusInt (primMulInt (Neg vuz170) (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45))",fontsize=16,color="black",shape="box"];1134 -> 1144[label="",style="solid", color="black", weight=3]; 113.88/79.10 2797[label="gcd3 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2797 -> 2808[label="",style="solid", color="black", weight=3]; 113.88/79.10 2798[label="primQuotInt (Neg vuz158) (Pos (Succ vuz15900))",fontsize=16,color="black",shape="box"];2798 -> 2809[label="",style="solid", color="black", weight=3]; 113.88/79.10 2799[label="primQuotInt (Neg vuz158) (Pos Zero)",fontsize=16,color="black",shape="box"];2799 -> 2810[label="",style="solid", color="black", weight=3]; 113.88/79.10 2800[label="primQuotInt (Neg vuz158) (Neg (Succ vuz15900))",fontsize=16,color="black",shape="box"];2800 -> 2811[label="",style="solid", color="black", weight=3]; 113.88/79.10 2801[label="primQuotInt (Neg vuz158) (Neg Zero)",fontsize=16,color="black",shape="box"];2801 -> 2812[label="",style="solid", color="black", weight=3]; 113.88/79.10 1140[label="primQuotInt (primPlusInt (primMulInt (Pos vuz220) (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (reduce2D (primPlusInt (primMulInt (Pos vuz220) (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48))",fontsize=16,color="black",shape="box"];1140 -> 1151[label="",style="solid", color="black", weight=3]; 113.88/79.10 1141[label="primQuotInt (primPlusInt (primMulInt (Neg vuz220) (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (reduce2D (primPlusInt (primMulInt (Neg vuz220) (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48))",fontsize=16,color="black",shape="box"];1141 -> 1152[label="",style="solid", color="black", weight=3]; 113.88/79.10 2802[label="gcd3 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48)",fontsize=16,color="black",shape="box"];2802 -> 2813[label="",style="solid", color="black", weight=3]; 113.88/79.10 1148[label="primQuotInt (primPlusInt (primMulInt (Pos vuz270) (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (reduce2D (primPlusInt (primMulInt (Pos vuz270) (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51))",fontsize=16,color="black",shape="box"];1148 -> 1159[label="",style="solid", color="black", weight=3]; 113.88/79.10 1149[label="primQuotInt (primPlusInt (primMulInt (Neg vuz270) (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (reduce2D (primPlusInt (primMulInt (Neg vuz270) (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51))",fontsize=16,color="black",shape="box"];1149 -> 1160[label="",style="solid", color="black", weight=3]; 113.88/79.10 4205[label="gcd3 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51)",fontsize=16,color="black",shape="box"];4205 -> 4217[label="",style="solid", color="black", weight=3]; 113.88/79.10 1172 -> 1178[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1172[label="primQuotInt (primPlusInt (Pos (primMulNat vuz60 (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (reduce2D (primPlusInt (Pos (primMulNat vuz60 (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54))",fontsize=16,color="magenta"];1172 -> 1179[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1172 -> 1180[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1173 -> 1181[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1173[label="primQuotInt (primPlusInt (Neg (primMulNat vuz60 (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (reduce2D (primPlusInt (Neg (primMulNat vuz60 (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54))",fontsize=16,color="magenta"];1173 -> 1182[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1173 -> 1183[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4212[label="gcd2 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9) == fromInt (Pos Zero)) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4212 -> 4233[label="",style="solid", color="black", weight=3]; 113.88/79.10 4213[label="Pos (primDivNatS vuz53 (Succ vuz22000))",fontsize=16,color="green",shape="box"];4213 -> 4234[label="",style="dashed", color="green", weight=3]; 113.88/79.10 4214 -> 2810[label="",style="dashed", color="red", weight=0]; 113.88/79.10 4214[label="error []",fontsize=16,color="magenta"];4215[label="Neg (primDivNatS vuz53 (Succ vuz22000))",fontsize=16,color="green",shape="box"];4215 -> 4235[label="",style="dashed", color="green", weight=3]; 113.88/79.10 4216 -> 2810[label="",style="dashed", color="red", weight=0]; 113.88/79.10 4216[label="error []",fontsize=16,color="magenta"];1143 -> 1154[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1143[label="primQuotInt (primPlusInt (Neg (primMulNat vuz170 (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (reduce2D (primPlusInt (Neg (primMulNat vuz170 (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45))",fontsize=16,color="magenta"];1143 -> 1155[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1143 -> 1156[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1144 -> 1162[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1144[label="primQuotInt (primPlusInt (Pos (primMulNat vuz170 (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (reduce2D (primPlusInt (Pos (primMulNat vuz170 (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45))",fontsize=16,color="magenta"];1144 -> 1163[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1144 -> 1164[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2808[label="gcd2 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20) == fromInt (Pos Zero)) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2808 -> 2826[label="",style="solid", color="black", weight=3]; 113.88/79.10 2809[label="Neg (primDivNatS vuz158 (Succ vuz15900))",fontsize=16,color="green",shape="box"];2809 -> 2827[label="",style="dashed", color="green", weight=3]; 113.88/79.10 2810[label="error []",fontsize=16,color="black",shape="triangle"];2810 -> 2828[label="",style="solid", color="black", weight=3]; 113.88/79.10 2811[label="Pos (primDivNatS vuz158 (Succ vuz15900))",fontsize=16,color="green",shape="box"];2811 -> 2829[label="",style="dashed", color="green", weight=3]; 113.88/79.10 2812 -> 2810[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2812[label="error []",fontsize=16,color="magenta"];1151 -> 1169[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1151[label="primQuotInt (primPlusInt (Pos (primMulNat vuz220 (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (reduce2D (primPlusInt (Pos (primMulNat vuz220 (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48))",fontsize=16,color="magenta"];1151 -> 1170[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1151 -> 1171[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1152 -> 1175[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1152[label="primQuotInt (primPlusInt (Neg (primMulNat vuz220 (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (reduce2D (primPlusInt (Neg (primMulNat vuz220 (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48))",fontsize=16,color="magenta"];1152 -> 1176[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1152 -> 1177[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2813[label="gcd2 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25) == fromInt (Pos Zero)) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48)",fontsize=16,color="black",shape="box"];2813 -> 2830[label="",style="solid", color="black", weight=3]; 113.88/79.10 1159 -> 1186[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1159[label="primQuotInt (primPlusInt (Neg (primMulNat vuz270 (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (reduce2D (primPlusInt (Neg (primMulNat vuz270 (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51))",fontsize=16,color="magenta"];1159 -> 1187[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1159 -> 1188[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1160 -> 1189[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1160[label="primQuotInt (primPlusInt (Pos (primMulNat vuz270 (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (reduce2D (primPlusInt (Pos (primMulNat vuz270 (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51))",fontsize=16,color="magenta"];1160 -> 1190[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1160 -> 1191[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4217[label="gcd2 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30) == fromInt (Pos Zero)) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51)",fontsize=16,color="black",shape="box"];4217 -> 4236[label="",style="solid", color="black", weight=3]; 113.88/79.10 1179 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1179[label="primMulNat vuz60 (Succ vuz7)",fontsize=16,color="magenta"];1179 -> 1193[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1179 -> 1194[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1180 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1180[label="primMulNat vuz60 (Succ vuz7)",fontsize=16,color="magenta"];1180 -> 1195[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1180 -> 1196[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1178[label="primQuotInt (primPlusInt (Pos vuz85) (vuz8 * Pos (Succ vuz9))) (reduce2D (primPlusInt (Pos vuz86) (vuz8 * Pos (Succ vuz9))) (Pos vuz54))",fontsize=16,color="black",shape="triangle"];1178 -> 1197[label="",style="solid", color="black", weight=3]; 113.88/79.10 1182 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1182[label="primMulNat vuz60 (Succ vuz7)",fontsize=16,color="magenta"];1182 -> 1198[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1182 -> 1199[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1183 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1183[label="primMulNat vuz60 (Succ vuz7)",fontsize=16,color="magenta"];1183 -> 1200[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1183 -> 1201[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1181[label="primQuotInt (primPlusInt (Neg vuz87) (vuz8 * Pos (Succ vuz9))) (reduce2D (primPlusInt (Neg vuz88) (vuz8 * Pos (Succ vuz9))) (Pos vuz54))",fontsize=16,color="black",shape="triangle"];1181 -> 1202[label="",style="solid", color="black", weight=3]; 113.88/79.10 4233[label="gcd2 (primEqInt (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (fromInt (Pos Zero))) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4233 -> 4247[label="",style="solid", color="black", weight=3]; 113.88/79.10 4234 -> 2827[label="",style="dashed", color="red", weight=0]; 113.88/79.10 4234[label="primDivNatS vuz53 (Succ vuz22000)",fontsize=16,color="magenta"];4234 -> 4248[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4234 -> 4249[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4235 -> 2827[label="",style="dashed", color="red", weight=0]; 113.88/79.10 4235[label="primDivNatS vuz53 (Succ vuz22000)",fontsize=16,color="magenta"];4235 -> 4250[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4235 -> 4251[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1155 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1155[label="primMulNat vuz170 (Succ vuz18)",fontsize=16,color="magenta"];1155 -> 1204[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1155 -> 1205[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1156 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1156[label="primMulNat vuz170 (Succ vuz18)",fontsize=16,color="magenta"];1156 -> 1206[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1156 -> 1207[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1154[label="primQuotInt (primPlusInt (Neg vuz77) (vuz19 * Pos (Succ vuz20))) (reduce2D (primPlusInt (Neg vuz78) (vuz19 * Pos (Succ vuz20))) (Neg vuz45))",fontsize=16,color="black",shape="triangle"];1154 -> 1208[label="",style="solid", color="black", weight=3]; 113.88/79.10 1163 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1163[label="primMulNat vuz170 (Succ vuz18)",fontsize=16,color="magenta"];1163 -> 1209[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1163 -> 1210[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1164 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1164[label="primMulNat vuz170 (Succ vuz18)",fontsize=16,color="magenta"];1164 -> 1211[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1164 -> 1212[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1162[label="primQuotInt (primPlusInt (Pos vuz79) (vuz19 * Pos (Succ vuz20))) (reduce2D (primPlusInt (Pos vuz80) (vuz19 * Pos (Succ vuz20))) (Neg vuz45))",fontsize=16,color="black",shape="triangle"];1162 -> 1213[label="",style="solid", color="black", weight=3]; 113.88/79.10 2826[label="gcd2 (primEqInt (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (fromInt (Pos Zero))) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2826 -> 2841[label="",style="solid", color="black", weight=3]; 113.88/79.10 2827[label="primDivNatS vuz158 (Succ vuz15900)",fontsize=16,color="burlywood",shape="triangle"];4903[label="vuz158/Succ vuz1580",fontsize=10,color="white",style="solid",shape="box"];2827 -> 4903[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4903 -> 2842[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4904[label="vuz158/Zero",fontsize=10,color="white",style="solid",shape="box"];2827 -> 4904[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4904 -> 2843[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 2828[label="error []",fontsize=16,color="red",shape="box"];2829 -> 2827[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2829[label="primDivNatS vuz158 (Succ vuz15900)",fontsize=16,color="magenta"];2829 -> 2844[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1170 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1170[label="primMulNat vuz220 (Succ vuz23)",fontsize=16,color="magenta"];1170 -> 1215[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1170 -> 1216[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1171 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1171[label="primMulNat vuz220 (Succ vuz23)",fontsize=16,color="magenta"];1171 -> 1217[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1171 -> 1218[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1169[label="primQuotInt (primPlusInt (Pos vuz81) (vuz24 * Neg (Succ vuz25))) (reduce2D (primPlusInt (Pos vuz82) (vuz24 * Neg (Succ vuz25))) (Neg vuz48))",fontsize=16,color="black",shape="triangle"];1169 -> 1219[label="",style="solid", color="black", weight=3]; 113.88/79.10 1176 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1176[label="primMulNat vuz220 (Succ vuz23)",fontsize=16,color="magenta"];1176 -> 1220[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1176 -> 1221[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1177 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1177[label="primMulNat vuz220 (Succ vuz23)",fontsize=16,color="magenta"];1177 -> 1222[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1177 -> 1223[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1175[label="primQuotInt (primPlusInt (Neg vuz83) (vuz24 * Neg (Succ vuz25))) (reduce2D (primPlusInt (Neg vuz84) (vuz24 * Neg (Succ vuz25))) (Neg vuz48))",fontsize=16,color="black",shape="triangle"];1175 -> 1224[label="",style="solid", color="black", weight=3]; 113.88/79.10 2830[label="gcd2 (primEqInt (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (fromInt (Pos Zero))) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48)",fontsize=16,color="black",shape="box"];2830 -> 2845[label="",style="solid", color="black", weight=3]; 113.88/79.10 1187 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1187[label="primMulNat vuz270 (Succ vuz28)",fontsize=16,color="magenta"];1187 -> 1226[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1187 -> 1227[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1188 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1188[label="primMulNat vuz270 (Succ vuz28)",fontsize=16,color="magenta"];1188 -> 1228[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1188 -> 1229[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1186[label="primQuotInt (primPlusInt (Neg vuz89) (vuz29 * Neg (Succ vuz30))) (reduce2D (primPlusInt (Neg vuz90) (vuz29 * Neg (Succ vuz30))) (Pos vuz51))",fontsize=16,color="black",shape="triangle"];1186 -> 1230[label="",style="solid", color="black", weight=3]; 113.88/79.10 1190 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1190[label="primMulNat vuz270 (Succ vuz28)",fontsize=16,color="magenta"];1190 -> 1231[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1190 -> 1232[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1191 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1191[label="primMulNat vuz270 (Succ vuz28)",fontsize=16,color="magenta"];1191 -> 1233[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1191 -> 1234[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1189[label="primQuotInt (primPlusInt (Pos vuz91) (vuz29 * Neg (Succ vuz30))) (reduce2D (primPlusInt (Pos vuz92) (vuz29 * Neg (Succ vuz30))) (Pos vuz51))",fontsize=16,color="black",shape="triangle"];1189 -> 1235[label="",style="solid", color="black", weight=3]; 113.88/79.10 4236[label="gcd2 (primEqInt (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (fromInt (Pos Zero))) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51)",fontsize=16,color="black",shape="box"];4236 -> 4252[label="",style="solid", color="black", weight=3]; 113.88/79.10 1193[label="vuz60",fontsize=16,color="green",shape="box"];1194[label="vuz7",fontsize=16,color="green",shape="box"];1195[label="vuz60",fontsize=16,color="green",shape="box"];1196[label="vuz7",fontsize=16,color="green",shape="box"];1197[label="primQuotInt (primPlusInt (Pos vuz85) (primMulInt vuz8 (Pos (Succ vuz9)))) (reduce2D (primPlusInt (Pos vuz86) (primMulInt vuz8 (Pos (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="burlywood",shape="box"];4905[label="vuz8/Pos vuz80",fontsize=10,color="white",style="solid",shape="box"];1197 -> 4905[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4905 -> 1237[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4906[label="vuz8/Neg vuz80",fontsize=10,color="white",style="solid",shape="box"];1197 -> 4906[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4906 -> 1238[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1198[label="vuz60",fontsize=16,color="green",shape="box"];1199[label="vuz7",fontsize=16,color="green",shape="box"];1200[label="vuz60",fontsize=16,color="green",shape="box"];1201[label="vuz7",fontsize=16,color="green",shape="box"];1202[label="primQuotInt (primPlusInt (Neg vuz87) (primMulInt vuz8 (Pos (Succ vuz9)))) (reduce2D (primPlusInt (Neg vuz88) (primMulInt vuz8 (Pos (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="burlywood",shape="box"];4907[label="vuz8/Pos vuz80",fontsize=10,color="white",style="solid",shape="box"];1202 -> 4907[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4907 -> 1239[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4908[label="vuz8/Neg vuz80",fontsize=10,color="white",style="solid",shape="box"];1202 -> 4908[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4908 -> 1240[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4247[label="gcd2 (primEqInt (primPlusInt (vuz6 * Pos (Succ vuz7)) (vuz8 * Pos (Succ vuz9))) (fromInt (Pos Zero))) (primPlusInt (vuz6 * Pos (Succ vuz7)) (vuz8 * Pos (Succ vuz9))) (Pos vuz54)",fontsize=16,color="black",shape="box"];4247 -> 4262[label="",style="solid", color="black", weight=3]; 113.88/79.10 4248[label="vuz53",fontsize=16,color="green",shape="box"];4249[label="vuz22000",fontsize=16,color="green",shape="box"];4250[label="vuz53",fontsize=16,color="green",shape="box"];4251[label="vuz22000",fontsize=16,color="green",shape="box"];1204[label="vuz170",fontsize=16,color="green",shape="box"];1205[label="vuz18",fontsize=16,color="green",shape="box"];1206[label="vuz170",fontsize=16,color="green",shape="box"];1207[label="vuz18",fontsize=16,color="green",shape="box"];1208[label="primQuotInt (primPlusInt (Neg vuz77) (primMulInt vuz19 (Pos (Succ vuz20)))) (reduce2D (primPlusInt (Neg vuz78) (primMulInt vuz19 (Pos (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="burlywood",shape="box"];4909[label="vuz19/Pos vuz190",fontsize=10,color="white",style="solid",shape="box"];1208 -> 4909[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4909 -> 1243[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4910[label="vuz19/Neg vuz190",fontsize=10,color="white",style="solid",shape="box"];1208 -> 4910[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4910 -> 1244[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1209[label="vuz170",fontsize=16,color="green",shape="box"];1210[label="vuz18",fontsize=16,color="green",shape="box"];1211[label="vuz170",fontsize=16,color="green",shape="box"];1212[label="vuz18",fontsize=16,color="green",shape="box"];1213[label="primQuotInt (primPlusInt (Pos vuz79) (primMulInt vuz19 (Pos (Succ vuz20)))) (reduce2D (primPlusInt (Pos vuz80) (primMulInt vuz19 (Pos (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="burlywood",shape="box"];4911[label="vuz19/Pos vuz190",fontsize=10,color="white",style="solid",shape="box"];1213 -> 4911[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4911 -> 1245[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4912[label="vuz19/Neg vuz190",fontsize=10,color="white",style="solid",shape="box"];1213 -> 4912[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4912 -> 1246[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 2841[label="gcd2 (primEqInt (primPlusInt (vuz17 * Neg (Succ vuz18)) (vuz19 * Pos (Succ vuz20))) (fromInt (Pos Zero))) (primPlusInt (vuz17 * Neg (Succ vuz18)) (vuz19 * Pos (Succ vuz20))) (Neg vuz45)",fontsize=16,color="black",shape="box"];2841 -> 2854[label="",style="solid", color="black", weight=3]; 113.88/79.10 2842[label="primDivNatS (Succ vuz1580) (Succ vuz15900)",fontsize=16,color="black",shape="box"];2842 -> 2855[label="",style="solid", color="black", weight=3]; 113.88/79.10 2843[label="primDivNatS Zero (Succ vuz15900)",fontsize=16,color="black",shape="box"];2843 -> 2856[label="",style="solid", color="black", weight=3]; 113.88/79.10 2844[label="vuz15900",fontsize=16,color="green",shape="box"];1215[label="vuz220",fontsize=16,color="green",shape="box"];1216[label="vuz23",fontsize=16,color="green",shape="box"];1217[label="vuz220",fontsize=16,color="green",shape="box"];1218[label="vuz23",fontsize=16,color="green",shape="box"];1219[label="primQuotInt (primPlusInt (Pos vuz81) (primMulInt vuz24 (Neg (Succ vuz25)))) (reduce2D (primPlusInt (Pos vuz82) (primMulInt vuz24 (Neg (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="burlywood",shape="box"];4913[label="vuz24/Pos vuz240",fontsize=10,color="white",style="solid",shape="box"];1219 -> 4913[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4913 -> 1249[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4914[label="vuz24/Neg vuz240",fontsize=10,color="white",style="solid",shape="box"];1219 -> 4914[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4914 -> 1250[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1220[label="vuz220",fontsize=16,color="green",shape="box"];1221[label="vuz23",fontsize=16,color="green",shape="box"];1222[label="vuz220",fontsize=16,color="green",shape="box"];1223[label="vuz23",fontsize=16,color="green",shape="box"];1224[label="primQuotInt (primPlusInt (Neg vuz83) (primMulInt vuz24 (Neg (Succ vuz25)))) (reduce2D (primPlusInt (Neg vuz84) (primMulInt vuz24 (Neg (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="burlywood",shape="box"];4915[label="vuz24/Pos vuz240",fontsize=10,color="white",style="solid",shape="box"];1224 -> 4915[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4915 -> 1251[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4916[label="vuz24/Neg vuz240",fontsize=10,color="white",style="solid",shape="box"];1224 -> 4916[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4916 -> 1252[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 2845[label="gcd2 (primEqInt (primPlusInt (vuz22 * Pos (Succ vuz23)) (vuz24 * Neg (Succ vuz25))) (fromInt (Pos Zero))) (primPlusInt (vuz22 * Pos (Succ vuz23)) (vuz24 * Neg (Succ vuz25))) (Neg vuz48)",fontsize=16,color="black",shape="box"];2845 -> 2857[label="",style="solid", color="black", weight=3]; 113.88/79.10 1226[label="vuz270",fontsize=16,color="green",shape="box"];1227[label="vuz28",fontsize=16,color="green",shape="box"];1228[label="vuz270",fontsize=16,color="green",shape="box"];1229[label="vuz28",fontsize=16,color="green",shape="box"];1230[label="primQuotInt (primPlusInt (Neg vuz89) (primMulInt vuz29 (Neg (Succ vuz30)))) (reduce2D (primPlusInt (Neg vuz90) (primMulInt vuz29 (Neg (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="burlywood",shape="box"];4917[label="vuz29/Pos vuz290",fontsize=10,color="white",style="solid",shape="box"];1230 -> 4917[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4917 -> 1255[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4918[label="vuz29/Neg vuz290",fontsize=10,color="white",style="solid",shape="box"];1230 -> 4918[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4918 -> 1256[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1231[label="vuz270",fontsize=16,color="green",shape="box"];1232[label="vuz28",fontsize=16,color="green",shape="box"];1233[label="vuz270",fontsize=16,color="green",shape="box"];1234[label="vuz28",fontsize=16,color="green",shape="box"];1235[label="primQuotInt (primPlusInt (Pos vuz91) (primMulInt vuz29 (Neg (Succ vuz30)))) (reduce2D (primPlusInt (Pos vuz92) (primMulInt vuz29 (Neg (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="burlywood",shape="box"];4919[label="vuz29/Pos vuz290",fontsize=10,color="white",style="solid",shape="box"];1235 -> 4919[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4919 -> 1257[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4920[label="vuz29/Neg vuz290",fontsize=10,color="white",style="solid",shape="box"];1235 -> 4920[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4920 -> 1258[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4252[label="gcd2 (primEqInt (primPlusInt (vuz27 * Neg (Succ vuz28)) (vuz29 * Neg (Succ vuz30))) (fromInt (Pos Zero))) (primPlusInt (vuz27 * Neg (Succ vuz28)) (vuz29 * Neg (Succ vuz30))) (Pos vuz51)",fontsize=16,color="black",shape="box"];4252 -> 4263[label="",style="solid", color="black", weight=3]; 113.88/79.10 1237[label="primQuotInt (primPlusInt (Pos vuz85) (primMulInt (Pos vuz80) (Pos (Succ vuz9)))) (reduce2D (primPlusInt (Pos vuz86) (primMulInt (Pos vuz80) (Pos (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="black",shape="box"];1237 -> 1261[label="",style="solid", color="black", weight=3]; 113.88/79.10 1238[label="primQuotInt (primPlusInt (Pos vuz85) (primMulInt (Neg vuz80) (Pos (Succ vuz9)))) (reduce2D (primPlusInt (Pos vuz86) (primMulInt (Neg vuz80) (Pos (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="black",shape="box"];1238 -> 1262[label="",style="solid", color="black", weight=3]; 113.88/79.10 1239[label="primQuotInt (primPlusInt (Neg vuz87) (primMulInt (Pos vuz80) (Pos (Succ vuz9)))) (reduce2D (primPlusInt (Neg vuz88) (primMulInt (Pos vuz80) (Pos (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="black",shape="box"];1239 -> 1263[label="",style="solid", color="black", weight=3]; 113.88/79.10 1240[label="primQuotInt (primPlusInt (Neg vuz87) (primMulInt (Neg vuz80) (Pos (Succ vuz9)))) (reduce2D (primPlusInt (Neg vuz88) (primMulInt (Neg vuz80) (Pos (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="black",shape="box"];1240 -> 1264[label="",style="solid", color="black", weight=3]; 113.88/79.10 4262[label="gcd2 (primEqInt (primPlusInt (primMulInt vuz6 (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (fromInt (Pos Zero))) (primPlusInt (primMulInt vuz6 (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54)",fontsize=16,color="burlywood",shape="box"];4921[label="vuz6/Pos vuz60",fontsize=10,color="white",style="solid",shape="box"];4262 -> 4921[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4921 -> 4275[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4922[label="vuz6/Neg vuz60",fontsize=10,color="white",style="solid",shape="box"];4262 -> 4922[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4922 -> 4276[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1243[label="primQuotInt (primPlusInt (Neg vuz77) (primMulInt (Pos vuz190) (Pos (Succ vuz20)))) (reduce2D (primPlusInt (Neg vuz78) (primMulInt (Pos vuz190) (Pos (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="black",shape="box"];1243 -> 1267[label="",style="solid", color="black", weight=3]; 113.88/79.10 1244[label="primQuotInt (primPlusInt (Neg vuz77) (primMulInt (Neg vuz190) (Pos (Succ vuz20)))) (reduce2D (primPlusInt (Neg vuz78) (primMulInt (Neg vuz190) (Pos (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="black",shape="box"];1244 -> 1268[label="",style="solid", color="black", weight=3]; 113.88/79.10 1245[label="primQuotInt (primPlusInt (Pos vuz79) (primMulInt (Pos vuz190) (Pos (Succ vuz20)))) (reduce2D (primPlusInt (Pos vuz80) (primMulInt (Pos vuz190) (Pos (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="black",shape="box"];1245 -> 1269[label="",style="solid", color="black", weight=3]; 113.88/79.10 1246[label="primQuotInt (primPlusInt (Pos vuz79) (primMulInt (Neg vuz190) (Pos (Succ vuz20)))) (reduce2D (primPlusInt (Pos vuz80) (primMulInt (Neg vuz190) (Pos (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="black",shape="box"];1246 -> 1270[label="",style="solid", color="black", weight=3]; 113.88/79.10 2854[label="gcd2 (primEqInt (primPlusInt (primMulInt vuz17 (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (fromInt (Pos Zero))) (primPlusInt (primMulInt vuz17 (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45)",fontsize=16,color="burlywood",shape="box"];4923[label="vuz17/Pos vuz170",fontsize=10,color="white",style="solid",shape="box"];2854 -> 4923[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4923 -> 2866[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4924[label="vuz17/Neg vuz170",fontsize=10,color="white",style="solid",shape="box"];2854 -> 4924[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4924 -> 2867[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 2855[label="primDivNatS0 vuz1580 vuz15900 (primGEqNatS vuz1580 vuz15900)",fontsize=16,color="burlywood",shape="box"];4925[label="vuz1580/Succ vuz15800",fontsize=10,color="white",style="solid",shape="box"];2855 -> 4925[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4925 -> 2868[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4926[label="vuz1580/Zero",fontsize=10,color="white",style="solid",shape="box"];2855 -> 4926[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4926 -> 2869[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 2856[label="Zero",fontsize=16,color="green",shape="box"];1249[label="primQuotInt (primPlusInt (Pos vuz81) (primMulInt (Pos vuz240) (Neg (Succ vuz25)))) (reduce2D (primPlusInt (Pos vuz82) (primMulInt (Pos vuz240) (Neg (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="black",shape="box"];1249 -> 1273[label="",style="solid", color="black", weight=3]; 113.88/79.10 1250[label="primQuotInt (primPlusInt (Pos vuz81) (primMulInt (Neg vuz240) (Neg (Succ vuz25)))) (reduce2D (primPlusInt (Pos vuz82) (primMulInt (Neg vuz240) (Neg (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="black",shape="box"];1250 -> 1274[label="",style="solid", color="black", weight=3]; 113.88/79.10 1251[label="primQuotInt (primPlusInt (Neg vuz83) (primMulInt (Pos vuz240) (Neg (Succ vuz25)))) (reduce2D (primPlusInt (Neg vuz84) (primMulInt (Pos vuz240) (Neg (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="black",shape="box"];1251 -> 1275[label="",style="solid", color="black", weight=3]; 113.88/79.10 1252[label="primQuotInt (primPlusInt (Neg vuz83) (primMulInt (Neg vuz240) (Neg (Succ vuz25)))) (reduce2D (primPlusInt (Neg vuz84) (primMulInt (Neg vuz240) (Neg (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="black",shape="box"];1252 -> 1276[label="",style="solid", color="black", weight=3]; 113.88/79.10 2857[label="gcd2 (primEqInt (primPlusInt (primMulInt vuz22 (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (fromInt (Pos Zero))) (primPlusInt (primMulInt vuz22 (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48)",fontsize=16,color="burlywood",shape="box"];4927[label="vuz22/Pos vuz220",fontsize=10,color="white",style="solid",shape="box"];2857 -> 4927[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4927 -> 2870[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4928[label="vuz22/Neg vuz220",fontsize=10,color="white",style="solid",shape="box"];2857 -> 4928[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4928 -> 2871[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1255[label="primQuotInt (primPlusInt (Neg vuz89) (primMulInt (Pos vuz290) (Neg (Succ vuz30)))) (reduce2D (primPlusInt (Neg vuz90) (primMulInt (Pos vuz290) (Neg (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="black",shape="box"];1255 -> 1279[label="",style="solid", color="black", weight=3]; 113.88/79.10 1256[label="primQuotInt (primPlusInt (Neg vuz89) (primMulInt (Neg vuz290) (Neg (Succ vuz30)))) (reduce2D (primPlusInt (Neg vuz90) (primMulInt (Neg vuz290) (Neg (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="black",shape="box"];1256 -> 1280[label="",style="solid", color="black", weight=3]; 113.88/79.10 1257[label="primQuotInt (primPlusInt (Pos vuz91) (primMulInt (Pos vuz290) (Neg (Succ vuz30)))) (reduce2D (primPlusInt (Pos vuz92) (primMulInt (Pos vuz290) (Neg (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="black",shape="box"];1257 -> 1281[label="",style="solid", color="black", weight=3]; 113.88/79.10 1258[label="primQuotInt (primPlusInt (Pos vuz91) (primMulInt (Neg vuz290) (Neg (Succ vuz30)))) (reduce2D (primPlusInt (Pos vuz92) (primMulInt (Neg vuz290) (Neg (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="black",shape="box"];1258 -> 1282[label="",style="solid", color="black", weight=3]; 113.88/79.10 4263[label="gcd2 (primEqInt (primPlusInt (primMulInt vuz27 (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (fromInt (Pos Zero))) (primPlusInt (primMulInt vuz27 (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51)",fontsize=16,color="burlywood",shape="box"];4929[label="vuz27/Pos vuz270",fontsize=10,color="white",style="solid",shape="box"];4263 -> 4929[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4929 -> 4277[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4930[label="vuz27/Neg vuz270",fontsize=10,color="white",style="solid",shape="box"];4263 -> 4930[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4930 -> 4278[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1261 -> 1285[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1261[label="primQuotInt (primPlusInt (Pos vuz85) (Pos (primMulNat vuz80 (Succ vuz9)))) (reduce2D (primPlusInt (Pos vuz86) (Pos (primMulNat vuz80 (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="magenta"];1261 -> 1286[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1261 -> 1287[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1262 -> 1293[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1262[label="primQuotInt (primPlusInt (Pos vuz85) (Neg (primMulNat vuz80 (Succ vuz9)))) (reduce2D (primPlusInt (Pos vuz86) (Neg (primMulNat vuz80 (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="magenta"];1262 -> 1294[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1262 -> 1295[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1263 -> 1301[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1263[label="primQuotInt (primPlusInt (Neg vuz87) (Pos (primMulNat vuz80 (Succ vuz9)))) (reduce2D (primPlusInt (Neg vuz88) (Pos (primMulNat vuz80 (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="magenta"];1263 -> 1302[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1263 -> 1303[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1264 -> 1309[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1264[label="primQuotInt (primPlusInt (Neg vuz87) (Neg (primMulNat vuz80 (Succ vuz9)))) (reduce2D (primPlusInt (Neg vuz88) (Neg (primMulNat vuz80 (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="magenta"];1264 -> 1310[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1264 -> 1311[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4275[label="gcd2 (primEqInt (primPlusInt (primMulInt (Pos vuz60) (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Pos vuz60) (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54)",fontsize=16,color="black",shape="box"];4275 -> 4292[label="",style="solid", color="black", weight=3]; 113.88/79.10 4276[label="gcd2 (primEqInt (primPlusInt (primMulInt (Neg vuz60) (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Neg vuz60) (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54)",fontsize=16,color="black",shape="box"];4276 -> 4293[label="",style="solid", color="black", weight=3]; 113.88/79.10 1267 -> 1323[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1267[label="primQuotInt (primPlusInt (Neg vuz77) (Pos (primMulNat vuz190 (Succ vuz20)))) (reduce2D (primPlusInt (Neg vuz78) (Pos (primMulNat vuz190 (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="magenta"];1267 -> 1324[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1267 -> 1325[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1268 -> 1331[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1268[label="primQuotInt (primPlusInt (Neg vuz77) (Neg (primMulNat vuz190 (Succ vuz20)))) (reduce2D (primPlusInt (Neg vuz78) (Neg (primMulNat vuz190 (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="magenta"];1268 -> 1332[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1268 -> 1333[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1269 -> 1339[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1269[label="primQuotInt (primPlusInt (Pos vuz79) (Pos (primMulNat vuz190 (Succ vuz20)))) (reduce2D (primPlusInt (Pos vuz80) (Pos (primMulNat vuz190 (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="magenta"];1269 -> 1340[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1269 -> 1341[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1270 -> 1347[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1270[label="primQuotInt (primPlusInt (Pos vuz79) (Neg (primMulNat vuz190 (Succ vuz20)))) (reduce2D (primPlusInt (Pos vuz80) (Neg (primMulNat vuz190 (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="magenta"];1270 -> 1348[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1270 -> 1349[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2866[label="gcd2 (primEqInt (primPlusInt (primMulInt (Pos vuz170) (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Pos vuz170) (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45)",fontsize=16,color="black",shape="box"];2866 -> 2883[label="",style="solid", color="black", weight=3]; 113.88/79.10 2867[label="gcd2 (primEqInt (primPlusInt (primMulInt (Neg vuz170) (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Neg vuz170) (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45)",fontsize=16,color="black",shape="box"];2867 -> 2884[label="",style="solid", color="black", weight=3]; 113.88/79.10 2868[label="primDivNatS0 (Succ vuz15800) vuz15900 (primGEqNatS (Succ vuz15800) vuz15900)",fontsize=16,color="burlywood",shape="box"];4931[label="vuz15900/Succ vuz159000",fontsize=10,color="white",style="solid",shape="box"];2868 -> 4931[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4931 -> 2885[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4932[label="vuz15900/Zero",fontsize=10,color="white",style="solid",shape="box"];2868 -> 4932[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4932 -> 2886[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 2869[label="primDivNatS0 Zero vuz15900 (primGEqNatS Zero vuz15900)",fontsize=16,color="burlywood",shape="box"];4933[label="vuz15900/Succ vuz159000",fontsize=10,color="white",style="solid",shape="box"];2869 -> 4933[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4933 -> 2887[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4934[label="vuz15900/Zero",fontsize=10,color="white",style="solid",shape="box"];2869 -> 4934[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4934 -> 2888[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1273 -> 1347[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1273[label="primQuotInt (primPlusInt (Pos vuz81) (Neg (primMulNat vuz240 (Succ vuz25)))) (reduce2D (primPlusInt (Pos vuz82) (Neg (primMulNat vuz240 (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="magenta"];1273 -> 1350[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1273 -> 1351[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1273 -> 1352[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1273 -> 1353[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1273 -> 1354[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1274 -> 1339[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1274[label="primQuotInt (primPlusInt (Pos vuz81) (Pos (primMulNat vuz240 (Succ vuz25)))) (reduce2D (primPlusInt (Pos vuz82) (Pos (primMulNat vuz240 (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="magenta"];1274 -> 1342[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1274 -> 1343[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1274 -> 1344[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1274 -> 1345[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1274 -> 1346[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1275 -> 1331[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1275[label="primQuotInt (primPlusInt (Neg vuz83) (Neg (primMulNat vuz240 (Succ vuz25)))) (reduce2D (primPlusInt (Neg vuz84) (Neg (primMulNat vuz240 (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="magenta"];1275 -> 1334[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1275 -> 1335[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1275 -> 1336[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1275 -> 1337[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1275 -> 1338[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1276 -> 1323[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1276[label="primQuotInt (primPlusInt (Neg vuz83) (Pos (primMulNat vuz240 (Succ vuz25)))) (reduce2D (primPlusInt (Neg vuz84) (Pos (primMulNat vuz240 (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="magenta"];1276 -> 1326[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1276 -> 1327[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1276 -> 1328[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1276 -> 1329[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1276 -> 1330[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2870[label="gcd2 (primEqInt (primPlusInt (primMulInt (Pos vuz220) (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Pos vuz220) (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48)",fontsize=16,color="black",shape="box"];2870 -> 2889[label="",style="solid", color="black", weight=3]; 113.88/79.10 2871[label="gcd2 (primEqInt (primPlusInt (primMulInt (Neg vuz220) (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Neg vuz220) (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48)",fontsize=16,color="black",shape="box"];2871 -> 2890[label="",style="solid", color="black", weight=3]; 113.88/79.10 1279 -> 1309[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1279[label="primQuotInt (primPlusInt (Neg vuz89) (Neg (primMulNat vuz290 (Succ vuz30)))) (reduce2D (primPlusInt (Neg vuz90) (Neg (primMulNat vuz290 (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="magenta"];1279 -> 1312[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1279 -> 1313[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1279 -> 1314[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1279 -> 1315[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1279 -> 1316[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1280 -> 1301[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1280[label="primQuotInt (primPlusInt (Neg vuz89) (Pos (primMulNat vuz290 (Succ vuz30)))) (reduce2D (primPlusInt (Neg vuz90) (Pos (primMulNat vuz290 (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="magenta"];1280 -> 1304[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1280 -> 1305[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1280 -> 1306[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1280 -> 1307[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1280 -> 1308[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1281 -> 1293[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1281[label="primQuotInt (primPlusInt (Pos vuz91) (Neg (primMulNat vuz290 (Succ vuz30)))) (reduce2D (primPlusInt (Pos vuz92) (Neg (primMulNat vuz290 (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="magenta"];1281 -> 1296[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1281 -> 1297[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1281 -> 1298[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1281 -> 1299[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1281 -> 1300[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1282 -> 1285[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1282[label="primQuotInt (primPlusInt (Pos vuz91) (Pos (primMulNat vuz290 (Succ vuz30)))) (reduce2D (primPlusInt (Pos vuz92) (Pos (primMulNat vuz290 (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="magenta"];1282 -> 1288[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1282 -> 1289[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1282 -> 1290[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1282 -> 1291[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1282 -> 1292[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4277[label="gcd2 (primEqInt (primPlusInt (primMulInt (Pos vuz270) (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Pos vuz270) (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51)",fontsize=16,color="black",shape="box"];4277 -> 4294[label="",style="solid", color="black", weight=3]; 113.88/79.10 4278[label="gcd2 (primEqInt (primPlusInt (primMulInt (Neg vuz270) (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Neg vuz270) (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51)",fontsize=16,color="black",shape="box"];4278 -> 4295[label="",style="solid", color="black", weight=3]; 113.88/79.10 1286 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1286[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];1286 -> 1373[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1286 -> 1374[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1287 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1287[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];1287 -> 1375[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1287 -> 1376[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1285[label="primQuotInt (primPlusInt (Pos vuz85) (Pos vuz93)) (reduce2D (primPlusInt (Pos vuz86) (Pos vuz94)) (Pos vuz54))",fontsize=16,color="black",shape="triangle"];1285 -> 1377[label="",style="solid", color="black", weight=3]; 113.88/79.10 1294 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1294[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];1294 -> 1378[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1294 -> 1379[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1295 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1295[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];1295 -> 1380[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1295 -> 1381[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1293[label="primQuotInt (primPlusInt (Pos vuz85) (Neg vuz95)) (reduce2D (primPlusInt (Pos vuz86) (Neg vuz96)) (Pos vuz54))",fontsize=16,color="black",shape="triangle"];1293 -> 1382[label="",style="solid", color="black", weight=3]; 113.88/79.10 1302 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1302[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];1302 -> 1383[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1302 -> 1384[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1303 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1303[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];1303 -> 1385[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1303 -> 1386[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1301[label="primQuotInt (primPlusInt (Neg vuz87) (Pos vuz97)) (reduce2D (primPlusInt (Neg vuz88) (Pos vuz98)) (Pos vuz54))",fontsize=16,color="black",shape="triangle"];1301 -> 1387[label="",style="solid", color="black", weight=3]; 113.88/79.10 1310 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1310[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];1310 -> 1388[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1310 -> 1389[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1311 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1311[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];1311 -> 1390[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1311 -> 1391[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1309[label="primQuotInt (primPlusInt (Neg vuz87) (Neg vuz99)) (reduce2D (primPlusInt (Neg vuz88) (Neg vuz100)) (Pos vuz54))",fontsize=16,color="black",shape="triangle"];1309 -> 1392[label="",style="solid", color="black", weight=3]; 113.88/79.10 4292 -> 4308[label="",style="dashed", color="red", weight=0]; 113.88/79.10 4292[label="gcd2 (primEqInt (primPlusInt (Pos (primMulNat vuz60 (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (fromInt (Pos Zero))) (primPlusInt (Pos (primMulNat vuz60 (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54)",fontsize=16,color="magenta"];4292 -> 4309[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4292 -> 4310[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4293 -> 4311[label="",style="dashed", color="red", weight=0]; 113.88/79.10 4293[label="gcd2 (primEqInt (primPlusInt (Neg (primMulNat vuz60 (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (fromInt (Pos Zero))) (primPlusInt (Neg (primMulNat vuz60 (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54)",fontsize=16,color="magenta"];4293 -> 4312[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4293 -> 4313[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1324 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1324[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];1324 -> 1403[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1324 -> 1404[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1325 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1325[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];1325 -> 1405[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1325 -> 1406[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1323[label="primQuotInt (primPlusInt (Neg vuz77) (Pos vuz105)) (reduce2D (primPlusInt (Neg vuz78) (Pos vuz106)) (Neg vuz45))",fontsize=16,color="black",shape="triangle"];1323 -> 1407[label="",style="solid", color="black", weight=3]; 113.88/79.10 1332 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1332[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];1332 -> 1408[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1332 -> 1409[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1333 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1333[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];1333 -> 1410[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1333 -> 1411[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1331[label="primQuotInt (primPlusInt (Neg vuz77) (Neg vuz107)) (reduce2D (primPlusInt (Neg vuz78) (Neg vuz108)) (Neg vuz45))",fontsize=16,color="black",shape="triangle"];1331 -> 1412[label="",style="solid", color="black", weight=3]; 113.88/79.10 1340 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1340[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];1340 -> 1413[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1340 -> 1414[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1341 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1341[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];1341 -> 1415[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1341 -> 1416[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1339[label="primQuotInt (primPlusInt (Pos vuz79) (Pos vuz109)) (reduce2D (primPlusInt (Pos vuz80) (Pos vuz110)) (Neg vuz45))",fontsize=16,color="black",shape="triangle"];1339 -> 1417[label="",style="solid", color="black", weight=3]; 113.88/79.10 1348 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1348[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];1348 -> 1418[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1348 -> 1419[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1349 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1349[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];1349 -> 1420[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1349 -> 1421[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1347[label="primQuotInt (primPlusInt (Pos vuz79) (Neg vuz111)) (reduce2D (primPlusInt (Pos vuz80) (Neg vuz112)) (Neg vuz45))",fontsize=16,color="black",shape="triangle"];1347 -> 1422[label="",style="solid", color="black", weight=3]; 113.88/79.10 2883 -> 2900[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2883[label="gcd2 (primEqInt (primPlusInt (Neg (primMulNat vuz170 (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (fromInt (Pos Zero))) (primPlusInt (Neg (primMulNat vuz170 (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45)",fontsize=16,color="magenta"];2883 -> 2901[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2883 -> 2902[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2884 -> 2903[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2884[label="gcd2 (primEqInt (primPlusInt (Pos (primMulNat vuz170 (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (fromInt (Pos Zero))) (primPlusInt (Pos (primMulNat vuz170 (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45)",fontsize=16,color="magenta"];2884 -> 2904[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2884 -> 2905[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2885[label="primDivNatS0 (Succ vuz15800) (Succ vuz159000) (primGEqNatS (Succ vuz15800) (Succ vuz159000))",fontsize=16,color="black",shape="box"];2885 -> 2906[label="",style="solid", color="black", weight=3]; 113.88/79.10 2886[label="primDivNatS0 (Succ vuz15800) Zero (primGEqNatS (Succ vuz15800) Zero)",fontsize=16,color="black",shape="box"];2886 -> 2907[label="",style="solid", color="black", weight=3]; 113.88/79.10 2887[label="primDivNatS0 Zero (Succ vuz159000) (primGEqNatS Zero (Succ vuz159000))",fontsize=16,color="black",shape="box"];2887 -> 2908[label="",style="solid", color="black", weight=3]; 113.88/79.10 2888[label="primDivNatS0 Zero Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];2888 -> 2909[label="",style="solid", color="black", weight=3]; 113.88/79.10 1350[label="vuz48",fontsize=16,color="green",shape="box"];1351[label="vuz82",fontsize=16,color="green",shape="box"];1352 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1352[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];1352 -> 1433[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1352 -> 1434[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1353 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1353[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];1353 -> 1435[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1353 -> 1436[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1354[label="vuz81",fontsize=16,color="green",shape="box"];1342[label="vuz48",fontsize=16,color="green",shape="box"];1343[label="vuz82",fontsize=16,color="green",shape="box"];1344 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1344[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];1344 -> 1437[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1344 -> 1438[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1345 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1345[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];1345 -> 1439[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1345 -> 1440[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1346[label="vuz81",fontsize=16,color="green",shape="box"];1334[label="vuz83",fontsize=16,color="green",shape="box"];1335[label="vuz48",fontsize=16,color="green",shape="box"];1336[label="vuz84",fontsize=16,color="green",shape="box"];1337 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1337[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];1337 -> 1441[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1337 -> 1442[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1338 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1338[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];1338 -> 1443[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1338 -> 1444[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1326[label="vuz83",fontsize=16,color="green",shape="box"];1327[label="vuz48",fontsize=16,color="green",shape="box"];1328 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1328[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];1328 -> 1445[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1328 -> 1446[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1329 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1329[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];1329 -> 1447[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1329 -> 1448[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1330[label="vuz84",fontsize=16,color="green",shape="box"];2889 -> 2910[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2889[label="gcd2 (primEqInt (primPlusInt (Pos (primMulNat vuz220 (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (fromInt (Pos Zero))) (primPlusInt (Pos (primMulNat vuz220 (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48)",fontsize=16,color="magenta"];2889 -> 2911[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2889 -> 2912[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2890 -> 2913[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2890[label="gcd2 (primEqInt (primPlusInt (Neg (primMulNat vuz220 (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (fromInt (Pos Zero))) (primPlusInt (Neg (primMulNat vuz220 (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48)",fontsize=16,color="magenta"];2890 -> 2914[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2890 -> 2915[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1312[label="vuz90",fontsize=16,color="green",shape="box"];1313 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1313[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];1313 -> 1459[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1313 -> 1460[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1314[label="vuz89",fontsize=16,color="green",shape="box"];1315 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1315[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];1315 -> 1461[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1315 -> 1462[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1316[label="vuz51",fontsize=16,color="green",shape="box"];1304[label="vuz90",fontsize=16,color="green",shape="box"];1305 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1305[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];1305 -> 1463[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1305 -> 1464[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1306[label="vuz89",fontsize=16,color="green",shape="box"];1307 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1307[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];1307 -> 1465[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1307 -> 1466[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1308[label="vuz51",fontsize=16,color="green",shape="box"];1296 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1296[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];1296 -> 1467[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1296 -> 1468[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1297[label="vuz92",fontsize=16,color="green",shape="box"];1298 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1298[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];1298 -> 1469[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1298 -> 1470[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1299[label="vuz91",fontsize=16,color="green",shape="box"];1300[label="vuz51",fontsize=16,color="green",shape="box"];1288[label="vuz92",fontsize=16,color="green",shape="box"];1289 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1289[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];1289 -> 1471[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1289 -> 1472[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1290 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1290[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];1290 -> 1473[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1290 -> 1474[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1291[label="vuz91",fontsize=16,color="green",shape="box"];1292[label="vuz51",fontsize=16,color="green",shape="box"];4294 -> 4314[label="",style="dashed", color="red", weight=0]; 113.88/79.10 4294[label="gcd2 (primEqInt (primPlusInt (Neg (primMulNat vuz270 (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (fromInt (Pos Zero))) (primPlusInt (Neg (primMulNat vuz270 (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51)",fontsize=16,color="magenta"];4294 -> 4315[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4294 -> 4316[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4295 -> 4317[label="",style="dashed", color="red", weight=0]; 113.88/79.10 4295[label="gcd2 (primEqInt (primPlusInt (Pos (primMulNat vuz270 (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (fromInt (Pos Zero))) (primPlusInt (Pos (primMulNat vuz270 (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51)",fontsize=16,color="magenta"];4295 -> 4318[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4295 -> 4319[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1373[label="vuz80",fontsize=16,color="green",shape="box"];1374[label="vuz9",fontsize=16,color="green",shape="box"];1375[label="vuz80",fontsize=16,color="green",shape="box"];1376[label="vuz9",fontsize=16,color="green",shape="box"];1377 -> 3726[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1377[label="primQuotInt (Pos (primPlusNat vuz85 vuz93)) (reduce2D (Pos (primPlusNat vuz85 vuz93)) (Pos vuz54))",fontsize=16,color="magenta"];1377 -> 3760[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1377 -> 3761[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1378[label="vuz80",fontsize=16,color="green",shape="box"];1379[label="vuz9",fontsize=16,color="green",shape="box"];1380[label="vuz80",fontsize=16,color="green",shape="box"];1381[label="vuz9",fontsize=16,color="green",shape="box"];1382[label="primQuotInt (primMinusNat vuz85 vuz95) (reduce2D (primMinusNat vuz85 vuz95) (Pos vuz54))",fontsize=16,color="burlywood",shape="triangle"];4935[label="vuz85/Succ vuz850",fontsize=10,color="white",style="solid",shape="box"];1382 -> 4935[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4935 -> 1488[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4936[label="vuz85/Zero",fontsize=10,color="white",style="solid",shape="box"];1382 -> 4936[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4936 -> 1489[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1383[label="vuz80",fontsize=16,color="green",shape="box"];1384[label="vuz9",fontsize=16,color="green",shape="box"];1385[label="vuz80",fontsize=16,color="green",shape="box"];1386[label="vuz9",fontsize=16,color="green",shape="box"];1387 -> 1382[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1387[label="primQuotInt (primMinusNat vuz97 vuz87) (reduce2D (primMinusNat vuz97 vuz87) (Pos vuz54))",fontsize=16,color="magenta"];1387 -> 1490[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1387 -> 1491[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1388[label="vuz80",fontsize=16,color="green",shape="box"];1389[label="vuz9",fontsize=16,color="green",shape="box"];1390[label="vuz80",fontsize=16,color="green",shape="box"];1391[label="vuz9",fontsize=16,color="green",shape="box"];1392 -> 2269[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1392[label="primQuotInt (Neg (primPlusNat vuz87 vuz99)) (reduce2D (Neg (primPlusNat vuz87 vuz99)) (Pos vuz54))",fontsize=16,color="magenta"];1392 -> 2314[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1392 -> 2315[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4309 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 4309[label="primMulNat vuz60 (Succ vuz7)",fontsize=16,color="magenta"];4309 -> 4320[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4309 -> 4321[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4310 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 4310[label="primMulNat vuz60 (Succ vuz7)",fontsize=16,color="magenta"];4310 -> 4322[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4310 -> 4323[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4308[label="gcd2 (primEqInt (primPlusInt (Pos vuz224) (vuz8 * Pos (Succ vuz9))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz223) (vuz8 * Pos (Succ vuz9))) (Pos vuz54)",fontsize=16,color="black",shape="triangle"];4308 -> 4324[label="",style="solid", color="black", weight=3]; 113.88/79.10 4312 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 4312[label="primMulNat vuz60 (Succ vuz7)",fontsize=16,color="magenta"];4312 -> 4325[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4312 -> 4326[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4313 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 4313[label="primMulNat vuz60 (Succ vuz7)",fontsize=16,color="magenta"];4313 -> 4327[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4313 -> 4328[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4311[label="gcd2 (primEqInt (primPlusInt (Neg vuz226) (vuz8 * Pos (Succ vuz9))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz225) (vuz8 * Pos (Succ vuz9))) (Pos vuz54)",fontsize=16,color="black",shape="triangle"];4311 -> 4329[label="",style="solid", color="black", weight=3]; 113.88/79.10 1403[label="vuz190",fontsize=16,color="green",shape="box"];1404[label="vuz20",fontsize=16,color="green",shape="box"];1405[label="vuz190",fontsize=16,color="green",shape="box"];1406[label="vuz20",fontsize=16,color="green",shape="box"];1407[label="primQuotInt (primMinusNat vuz105 vuz77) (reduce2D (primMinusNat vuz105 vuz77) (Neg vuz45))",fontsize=16,color="burlywood",shape="triangle"];4937[label="vuz105/Succ vuz1050",fontsize=10,color="white",style="solid",shape="box"];1407 -> 4937[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4937 -> 1499[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4938[label="vuz105/Zero",fontsize=10,color="white",style="solid",shape="box"];1407 -> 4938[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4938 -> 1500[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1408[label="vuz190",fontsize=16,color="green",shape="box"];1409[label="vuz20",fontsize=16,color="green",shape="box"];1410[label="vuz190",fontsize=16,color="green",shape="box"];1411[label="vuz20",fontsize=16,color="green",shape="box"];1412 -> 2269[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1412[label="primQuotInt (Neg (primPlusNat vuz77 vuz107)) (reduce2D (Neg (primPlusNat vuz77 vuz107)) (Neg vuz45))",fontsize=16,color="magenta"];1412 -> 2316[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1412 -> 2317[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1413[label="vuz190",fontsize=16,color="green",shape="box"];1414[label="vuz20",fontsize=16,color="green",shape="box"];1415[label="vuz190",fontsize=16,color="green",shape="box"];1416[label="vuz20",fontsize=16,color="green",shape="box"];1417 -> 3726[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1417[label="primQuotInt (Pos (primPlusNat vuz79 vuz109)) (reduce2D (Pos (primPlusNat vuz79 vuz109)) (Neg vuz45))",fontsize=16,color="magenta"];1417 -> 3764[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1417 -> 3765[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1418[label="vuz190",fontsize=16,color="green",shape="box"];1419[label="vuz20",fontsize=16,color="green",shape="box"];1420[label="vuz190",fontsize=16,color="green",shape="box"];1421[label="vuz20",fontsize=16,color="green",shape="box"];1422 -> 1407[label="",style="dashed", color="red", weight=0]; 113.88/79.10 1422[label="primQuotInt (primMinusNat vuz79 vuz111) (reduce2D (primMinusNat vuz79 vuz111) (Neg vuz45))",fontsize=16,color="magenta"];1422 -> 1507[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1422 -> 1508[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2901 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2901[label="primMulNat vuz170 (Succ vuz18)",fontsize=16,color="magenta"];2901 -> 2916[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2901 -> 2917[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2902 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2902[label="primMulNat vuz170 (Succ vuz18)",fontsize=16,color="magenta"];2902 -> 2918[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2902 -> 2919[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2900[label="gcd2 (primEqInt (primPlusInt (Neg vuz163) (vuz19 * Pos (Succ vuz20))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz162) (vuz19 * Pos (Succ vuz20))) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];2900 -> 2920[label="",style="solid", color="black", weight=3]; 113.88/79.10 2904 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2904[label="primMulNat vuz170 (Succ vuz18)",fontsize=16,color="magenta"];2904 -> 2921[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2904 -> 2922[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2905 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2905[label="primMulNat vuz170 (Succ vuz18)",fontsize=16,color="magenta"];2905 -> 2923[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2905 -> 2924[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2903[label="gcd2 (primEqInt (primPlusInt (Pos vuz165) (vuz19 * Pos (Succ vuz20))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz164) (vuz19 * Pos (Succ vuz20))) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];2903 -> 2925[label="",style="solid", color="black", weight=3]; 113.88/79.10 2906 -> 3623[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2906[label="primDivNatS0 (Succ vuz15800) (Succ vuz159000) (primGEqNatS vuz15800 vuz159000)",fontsize=16,color="magenta"];2906 -> 3624[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2906 -> 3625[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2906 -> 3626[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2906 -> 3627[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2907[label="primDivNatS0 (Succ vuz15800) Zero True",fontsize=16,color="black",shape="box"];2907 -> 2928[label="",style="solid", color="black", weight=3]; 113.88/79.10 2908[label="primDivNatS0 Zero (Succ vuz159000) False",fontsize=16,color="black",shape="box"];2908 -> 2929[label="",style="solid", color="black", weight=3]; 113.88/79.10 2909[label="primDivNatS0 Zero Zero True",fontsize=16,color="black",shape="box"];2909 -> 2930[label="",style="solid", color="black", weight=3]; 113.88/79.10 1433[label="vuz240",fontsize=16,color="green",shape="box"];1434[label="vuz25",fontsize=16,color="green",shape="box"];1435[label="vuz240",fontsize=16,color="green",shape="box"];1436[label="vuz25",fontsize=16,color="green",shape="box"];1437[label="vuz240",fontsize=16,color="green",shape="box"];1438[label="vuz25",fontsize=16,color="green",shape="box"];1439[label="vuz240",fontsize=16,color="green",shape="box"];1440[label="vuz25",fontsize=16,color="green",shape="box"];1441[label="vuz240",fontsize=16,color="green",shape="box"];1442[label="vuz25",fontsize=16,color="green",shape="box"];1443[label="vuz240",fontsize=16,color="green",shape="box"];1444[label="vuz25",fontsize=16,color="green",shape="box"];1445[label="vuz240",fontsize=16,color="green",shape="box"];1446[label="vuz25",fontsize=16,color="green",shape="box"];1447[label="vuz240",fontsize=16,color="green",shape="box"];1448[label="vuz25",fontsize=16,color="green",shape="box"];2911 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2911[label="primMulNat vuz220 (Succ vuz23)",fontsize=16,color="magenta"];2911 -> 2931[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2911 -> 2932[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2912 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2912[label="primMulNat vuz220 (Succ vuz23)",fontsize=16,color="magenta"];2912 -> 2933[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2912 -> 2934[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2910[label="gcd2 (primEqInt (primPlusInt (Pos vuz167) (vuz24 * Neg (Succ vuz25))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz166) (vuz24 * Neg (Succ vuz25))) (Neg vuz48)",fontsize=16,color="black",shape="triangle"];2910 -> 2935[label="",style="solid", color="black", weight=3]; 113.88/79.10 2914 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2914[label="primMulNat vuz220 (Succ vuz23)",fontsize=16,color="magenta"];2914 -> 2936[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2914 -> 2937[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2915 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2915[label="primMulNat vuz220 (Succ vuz23)",fontsize=16,color="magenta"];2915 -> 2938[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2915 -> 2939[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2913[label="gcd2 (primEqInt (primPlusInt (Neg vuz169) (vuz24 * Neg (Succ vuz25))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz168) (vuz24 * Neg (Succ vuz25))) (Neg vuz48)",fontsize=16,color="black",shape="triangle"];2913 -> 2940[label="",style="solid", color="black", weight=3]; 113.88/79.10 1459[label="vuz290",fontsize=16,color="green",shape="box"];1460[label="vuz30",fontsize=16,color="green",shape="box"];1461[label="vuz290",fontsize=16,color="green",shape="box"];1462[label="vuz30",fontsize=16,color="green",shape="box"];1463[label="vuz290",fontsize=16,color="green",shape="box"];1464[label="vuz30",fontsize=16,color="green",shape="box"];1465[label="vuz290",fontsize=16,color="green",shape="box"];1466[label="vuz30",fontsize=16,color="green",shape="box"];1467[label="vuz290",fontsize=16,color="green",shape="box"];1468[label="vuz30",fontsize=16,color="green",shape="box"];1469[label="vuz290",fontsize=16,color="green",shape="box"];1470[label="vuz30",fontsize=16,color="green",shape="box"];1471[label="vuz290",fontsize=16,color="green",shape="box"];1472[label="vuz30",fontsize=16,color="green",shape="box"];1473[label="vuz290",fontsize=16,color="green",shape="box"];1474[label="vuz30",fontsize=16,color="green",shape="box"];4315 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 4315[label="primMulNat vuz270 (Succ vuz28)",fontsize=16,color="magenta"];4315 -> 4330[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4315 -> 4331[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4316 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 4316[label="primMulNat vuz270 (Succ vuz28)",fontsize=16,color="magenta"];4316 -> 4332[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4316 -> 4333[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4314[label="gcd2 (primEqInt (primPlusInt (Neg vuz228) (vuz29 * Neg (Succ vuz30))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz227) (vuz29 * Neg (Succ vuz30))) (Pos vuz51)",fontsize=16,color="black",shape="triangle"];4314 -> 4334[label="",style="solid", color="black", weight=3]; 113.88/79.10 4318 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 4318[label="primMulNat vuz270 (Succ vuz28)",fontsize=16,color="magenta"];4318 -> 4335[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4318 -> 4336[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4319 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.10 4319[label="primMulNat vuz270 (Succ vuz28)",fontsize=16,color="magenta"];4319 -> 4337[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4319 -> 4338[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4317[label="gcd2 (primEqInt (primPlusInt (Pos vuz230) (vuz29 * Neg (Succ vuz30))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz229) (vuz29 * Neg (Succ vuz30))) (Pos vuz51)",fontsize=16,color="black",shape="triangle"];4317 -> 4339[label="",style="solid", color="black", weight=3]; 113.88/79.10 3760 -> 4196[label="",style="dashed", color="red", weight=0]; 113.88/79.10 3760[label="reduce2D (Pos (primPlusNat vuz85 vuz93)) (Pos vuz54)",fontsize=16,color="magenta"];3760 -> 4197[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 3761 -> 886[label="",style="dashed", color="red", weight=0]; 113.88/79.10 3761[label="primPlusNat vuz85 vuz93",fontsize=16,color="magenta"];3761 -> 4206[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 3761 -> 4207[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1488[label="primQuotInt (primMinusNat (Succ vuz850) vuz95) (reduce2D (primMinusNat (Succ vuz850) vuz95) (Pos vuz54))",fontsize=16,color="burlywood",shape="box"];4939[label="vuz95/Succ vuz950",fontsize=10,color="white",style="solid",shape="box"];1488 -> 4939[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4939 -> 1526[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4940[label="vuz95/Zero",fontsize=10,color="white",style="solid",shape="box"];1488 -> 4940[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4940 -> 1527[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1489[label="primQuotInt (primMinusNat Zero vuz95) (reduce2D (primMinusNat Zero vuz95) (Pos vuz54))",fontsize=16,color="burlywood",shape="box"];4941[label="vuz95/Succ vuz950",fontsize=10,color="white",style="solid",shape="box"];1489 -> 4941[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4941 -> 1528[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4942[label="vuz95/Zero",fontsize=10,color="white",style="solid",shape="box"];1489 -> 4942[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4942 -> 1529[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1490[label="vuz87",fontsize=16,color="green",shape="box"];1491[label="vuz97",fontsize=16,color="green",shape="box"];2314 -> 886[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2314[label="primPlusNat vuz87 vuz99",fontsize=16,color="magenta"];2314 -> 2792[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2314 -> 2793[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2315 -> 2794[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2315[label="reduce2D (Neg (primPlusNat vuz87 vuz99)) (Pos vuz54)",fontsize=16,color="magenta"];2315 -> 2795[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4320[label="vuz60",fontsize=16,color="green",shape="box"];4321[label="vuz7",fontsize=16,color="green",shape="box"];4322[label="vuz60",fontsize=16,color="green",shape="box"];4323[label="vuz7",fontsize=16,color="green",shape="box"];4324[label="gcd2 (primEqInt (primPlusInt (Pos vuz224) (primMulInt vuz8 (Pos (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz223) (primMulInt vuz8 (Pos (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="burlywood",shape="box"];4943[label="vuz8/Pos vuz80",fontsize=10,color="white",style="solid",shape="box"];4324 -> 4943[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4943 -> 4352[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4944[label="vuz8/Neg vuz80",fontsize=10,color="white",style="solid",shape="box"];4324 -> 4944[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4944 -> 4353[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4325[label="vuz60",fontsize=16,color="green",shape="box"];4326[label="vuz7",fontsize=16,color="green",shape="box"];4327[label="vuz60",fontsize=16,color="green",shape="box"];4328[label="vuz7",fontsize=16,color="green",shape="box"];4329[label="gcd2 (primEqInt (primPlusInt (Neg vuz226) (primMulInt vuz8 (Pos (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz225) (primMulInt vuz8 (Pos (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="burlywood",shape="box"];4945[label="vuz8/Pos vuz80",fontsize=10,color="white",style="solid",shape="box"];4329 -> 4945[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4945 -> 4354[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4946[label="vuz8/Neg vuz80",fontsize=10,color="white",style="solid",shape="box"];4329 -> 4946[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4946 -> 4355[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1499[label="primQuotInt (primMinusNat (Succ vuz1050) vuz77) (reduce2D (primMinusNat (Succ vuz1050) vuz77) (Neg vuz45))",fontsize=16,color="burlywood",shape="box"];4947[label="vuz77/Succ vuz770",fontsize=10,color="white",style="solid",shape="box"];1499 -> 4947[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4947 -> 1539[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4948[label="vuz77/Zero",fontsize=10,color="white",style="solid",shape="box"];1499 -> 4948[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4948 -> 1540[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 1500[label="primQuotInt (primMinusNat Zero vuz77) (reduce2D (primMinusNat Zero vuz77) (Neg vuz45))",fontsize=16,color="burlywood",shape="box"];4949[label="vuz77/Succ vuz770",fontsize=10,color="white",style="solid",shape="box"];1500 -> 4949[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4949 -> 1541[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4950[label="vuz77/Zero",fontsize=10,color="white",style="solid",shape="box"];1500 -> 4950[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4950 -> 1542[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 2316 -> 886[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2316[label="primPlusNat vuz77 vuz107",fontsize=16,color="magenta"];2316 -> 2803[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2316 -> 2804[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2317 -> 2805[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2317[label="reduce2D (Neg (primPlusNat vuz77 vuz107)) (Neg vuz45)",fontsize=16,color="magenta"];2317 -> 2806[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 3764 -> 4208[label="",style="dashed", color="red", weight=0]; 113.88/79.10 3764[label="reduce2D (Pos (primPlusNat vuz79 vuz109)) (Neg vuz45)",fontsize=16,color="magenta"];3764 -> 4209[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 3765 -> 886[label="",style="dashed", color="red", weight=0]; 113.88/79.10 3765[label="primPlusNat vuz79 vuz109",fontsize=16,color="magenta"];3765 -> 4218[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 3765 -> 4219[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 1507[label="vuz111",fontsize=16,color="green",shape="box"];1508[label="vuz79",fontsize=16,color="green",shape="box"];2916[label="vuz170",fontsize=16,color="green",shape="box"];2917[label="vuz18",fontsize=16,color="green",shape="box"];2918[label="vuz170",fontsize=16,color="green",shape="box"];2919[label="vuz18",fontsize=16,color="green",shape="box"];2920[label="gcd2 (primEqInt (primPlusInt (Neg vuz163) (primMulInt vuz19 (Pos (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz162) (primMulInt vuz19 (Pos (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="burlywood",shape="box"];4951[label="vuz19/Pos vuz190",fontsize=10,color="white",style="solid",shape="box"];2920 -> 4951[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4951 -> 2949[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4952[label="vuz19/Neg vuz190",fontsize=10,color="white",style="solid",shape="box"];2920 -> 4952[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4952 -> 2950[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 2921[label="vuz170",fontsize=16,color="green",shape="box"];2922[label="vuz18",fontsize=16,color="green",shape="box"];2923[label="vuz170",fontsize=16,color="green",shape="box"];2924[label="vuz18",fontsize=16,color="green",shape="box"];2925[label="gcd2 (primEqInt (primPlusInt (Pos vuz165) (primMulInt vuz19 (Pos (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz164) (primMulInt vuz19 (Pos (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="burlywood",shape="box"];4953[label="vuz19/Pos vuz190",fontsize=10,color="white",style="solid",shape="box"];2925 -> 4953[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4953 -> 2951[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4954[label="vuz19/Neg vuz190",fontsize=10,color="white",style="solid",shape="box"];2925 -> 4954[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4954 -> 2952[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 3624[label="vuz159000",fontsize=16,color="green",shape="box"];3625[label="vuz15800",fontsize=16,color="green",shape="box"];3626[label="vuz159000",fontsize=16,color="green",shape="box"];3627[label="vuz15800",fontsize=16,color="green",shape="box"];3623[label="primDivNatS0 (Succ vuz212) (Succ vuz213) (primGEqNatS vuz214 vuz215)",fontsize=16,color="burlywood",shape="triangle"];4955[label="vuz214/Succ vuz2140",fontsize=10,color="white",style="solid",shape="box"];3623 -> 4955[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4955 -> 3664[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4956[label="vuz214/Zero",fontsize=10,color="white",style="solid",shape="box"];3623 -> 4956[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4956 -> 3665[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 2928[label="Succ (primDivNatS (primMinusNatS (Succ vuz15800) Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];2928 -> 2957[label="",style="dashed", color="green", weight=3]; 113.88/79.10 2929[label="Zero",fontsize=16,color="green",shape="box"];2930[label="Succ (primDivNatS (primMinusNatS Zero Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];2930 -> 2958[label="",style="dashed", color="green", weight=3]; 113.88/79.10 2931[label="vuz220",fontsize=16,color="green",shape="box"];2932[label="vuz23",fontsize=16,color="green",shape="box"];2933[label="vuz220",fontsize=16,color="green",shape="box"];2934[label="vuz23",fontsize=16,color="green",shape="box"];2935[label="gcd2 (primEqInt (primPlusInt (Pos vuz167) (primMulInt vuz24 (Neg (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz166) (primMulInt vuz24 (Neg (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="burlywood",shape="box"];4957[label="vuz24/Pos vuz240",fontsize=10,color="white",style="solid",shape="box"];2935 -> 4957[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4957 -> 2959[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4958[label="vuz24/Neg vuz240",fontsize=10,color="white",style="solid",shape="box"];2935 -> 4958[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4958 -> 2960[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 2936[label="vuz220",fontsize=16,color="green",shape="box"];2937[label="vuz23",fontsize=16,color="green",shape="box"];2938[label="vuz220",fontsize=16,color="green",shape="box"];2939[label="vuz23",fontsize=16,color="green",shape="box"];2940[label="gcd2 (primEqInt (primPlusInt (Neg vuz169) (primMulInt vuz24 (Neg (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz168) (primMulInt vuz24 (Neg (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="burlywood",shape="box"];4959[label="vuz24/Pos vuz240",fontsize=10,color="white",style="solid",shape="box"];2940 -> 4959[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4959 -> 2961[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4960[label="vuz24/Neg vuz240",fontsize=10,color="white",style="solid",shape="box"];2940 -> 4960[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4960 -> 2962[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4330[label="vuz270",fontsize=16,color="green",shape="box"];4331[label="vuz28",fontsize=16,color="green",shape="box"];4332[label="vuz270",fontsize=16,color="green",shape="box"];4333[label="vuz28",fontsize=16,color="green",shape="box"];4334[label="gcd2 (primEqInt (primPlusInt (Neg vuz228) (primMulInt vuz29 (Neg (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz227) (primMulInt vuz29 (Neg (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="burlywood",shape="box"];4961[label="vuz29/Pos vuz290",fontsize=10,color="white",style="solid",shape="box"];4334 -> 4961[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4961 -> 4356[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4962[label="vuz29/Neg vuz290",fontsize=10,color="white",style="solid",shape="box"];4334 -> 4962[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4962 -> 4357[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4335[label="vuz270",fontsize=16,color="green",shape="box"];4336[label="vuz28",fontsize=16,color="green",shape="box"];4337[label="vuz270",fontsize=16,color="green",shape="box"];4338[label="vuz28",fontsize=16,color="green",shape="box"];4339[label="gcd2 (primEqInt (primPlusInt (Pos vuz230) (primMulInt vuz29 (Neg (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz229) (primMulInt vuz29 (Neg (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="burlywood",shape="box"];4963[label="vuz29/Pos vuz290",fontsize=10,color="white",style="solid",shape="box"];4339 -> 4963[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4963 -> 4358[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4964[label="vuz29/Neg vuz290",fontsize=10,color="white",style="solid",shape="box"];4339 -> 4964[label="",style="solid", color="burlywood", weight=9]; 113.88/79.10 4964 -> 4359[label="",style="solid", color="burlywood", weight=3]; 113.88/79.10 4197 -> 886[label="",style="dashed", color="red", weight=0]; 113.88/79.10 4197[label="primPlusNat vuz85 vuz93",fontsize=16,color="magenta"];4197 -> 4220[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4197 -> 4221[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 4196[label="reduce2D (Pos vuz221) (Pos vuz54)",fontsize=16,color="black",shape="triangle"];4196 -> 4222[label="",style="solid", color="black", weight=3]; 113.88/79.10 4206[label="vuz85",fontsize=16,color="green",shape="box"];4207[label="vuz93",fontsize=16,color="green",shape="box"];1526[label="primQuotInt (primMinusNat (Succ vuz850) (Succ vuz950)) (reduce2D (primMinusNat (Succ vuz850) (Succ vuz950)) (Pos vuz54))",fontsize=16,color="black",shape="box"];1526 -> 1566[label="",style="solid", color="black", weight=3]; 113.88/79.10 1527[label="primQuotInt (primMinusNat (Succ vuz850) Zero) (reduce2D (primMinusNat (Succ vuz850) Zero) (Pos vuz54))",fontsize=16,color="black",shape="box"];1527 -> 1567[label="",style="solid", color="black", weight=3]; 113.88/79.10 1528[label="primQuotInt (primMinusNat Zero (Succ vuz950)) (reduce2D (primMinusNat Zero (Succ vuz950)) (Pos vuz54))",fontsize=16,color="black",shape="box"];1528 -> 1568[label="",style="solid", color="black", weight=3]; 113.88/79.10 1529[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero Zero) (Pos vuz54))",fontsize=16,color="black",shape="box"];1529 -> 1569[label="",style="solid", color="black", weight=3]; 113.88/79.10 2792[label="vuz87",fontsize=16,color="green",shape="box"];2793[label="vuz99",fontsize=16,color="green",shape="box"];2795 -> 886[label="",style="dashed", color="red", weight=0]; 113.88/79.10 2795[label="primPlusNat vuz87 vuz99",fontsize=16,color="magenta"];2795 -> 2814[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2795 -> 2815[label="",style="dashed", color="magenta", weight=3]; 113.88/79.10 2794[label="reduce2D (Neg vuz160) (Pos vuz54)",fontsize=16,color="black",shape="triangle"];2794 -> 2816[label="",style="solid", color="black", weight=3]; 113.88/79.10 4352[label="gcd2 (primEqInt (primPlusInt (Pos vuz224) (primMulInt (Pos vuz80) (Pos (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz223) (primMulInt (Pos vuz80) (Pos (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="black",shape="box"];4352 -> 4370[label="",style="solid", color="black", weight=3]; 113.88/79.10 4353[label="gcd2 (primEqInt (primPlusInt (Pos vuz224) (primMulInt (Neg vuz80) (Pos (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz223) (primMulInt (Neg vuz80) (Pos (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="black",shape="box"];4353 -> 4371[label="",style="solid", color="black", weight=3]; 113.88/79.10 4354[label="gcd2 (primEqInt (primPlusInt (Neg vuz226) (primMulInt (Pos vuz80) (Pos (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz225) (primMulInt (Pos vuz80) (Pos (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="black",shape="box"];4354 -> 4372[label="",style="solid", color="black", weight=3]; 113.88/79.10 4355[label="gcd2 (primEqInt (primPlusInt (Neg vuz226) (primMulInt (Neg vuz80) (Pos (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz225) (primMulInt (Neg vuz80) (Pos (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="black",shape="box"];4355 -> 4373[label="",style="solid", color="black", weight=3]; 113.88/79.10 1539[label="primQuotInt (primMinusNat (Succ vuz1050) (Succ vuz770)) (reduce2D (primMinusNat (Succ vuz1050) (Succ vuz770)) (Neg vuz45))",fontsize=16,color="black",shape="box"];1539 -> 1607[label="",style="solid", color="black", weight=3]; 113.88/79.10 1540[label="primQuotInt (primMinusNat (Succ vuz1050) Zero) (reduce2D (primMinusNat (Succ vuz1050) Zero) (Neg vuz45))",fontsize=16,color="black",shape="box"];1540 -> 1608[label="",style="solid", color="black", weight=3]; 113.88/79.10 1541[label="primQuotInt (primMinusNat Zero (Succ vuz770)) (reduce2D (primMinusNat Zero (Succ vuz770)) (Neg vuz45))",fontsize=16,color="black",shape="box"];1541 -> 1609[label="",style="solid", color="black", weight=3]; 113.88/79.11 1542[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero Zero) (Neg vuz45))",fontsize=16,color="black",shape="box"];1542 -> 1610[label="",style="solid", color="black", weight=3]; 113.88/79.11 2803[label="vuz77",fontsize=16,color="green",shape="box"];2804[label="vuz107",fontsize=16,color="green",shape="box"];2806 -> 886[label="",style="dashed", color="red", weight=0]; 113.88/79.11 2806[label="primPlusNat vuz77 vuz107",fontsize=16,color="magenta"];2806 -> 2817[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2806 -> 2818[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2805[label="reduce2D (Neg vuz161) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];2805 -> 2819[label="",style="solid", color="black", weight=3]; 113.88/79.11 4209 -> 886[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4209[label="primPlusNat vuz79 vuz109",fontsize=16,color="magenta"];4209 -> 4223[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4209 -> 4224[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4208[label="reduce2D (Pos vuz222) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];4208 -> 4225[label="",style="solid", color="black", weight=3]; 113.88/79.11 4218[label="vuz79",fontsize=16,color="green",shape="box"];4219[label="vuz109",fontsize=16,color="green",shape="box"];2949[label="gcd2 (primEqInt (primPlusInt (Neg vuz163) (primMulInt (Pos vuz190) (Pos (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz162) (primMulInt (Pos vuz190) (Pos (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="black",shape="box"];2949 -> 2971[label="",style="solid", color="black", weight=3]; 113.88/79.11 2950[label="gcd2 (primEqInt (primPlusInt (Neg vuz163) (primMulInt (Neg vuz190) (Pos (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz162) (primMulInt (Neg vuz190) (Pos (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="black",shape="box"];2950 -> 2972[label="",style="solid", color="black", weight=3]; 113.88/79.11 2951[label="gcd2 (primEqInt (primPlusInt (Pos vuz165) (primMulInt (Pos vuz190) (Pos (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz164) (primMulInt (Pos vuz190) (Pos (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="black",shape="box"];2951 -> 2973[label="",style="solid", color="black", weight=3]; 113.88/79.11 2952[label="gcd2 (primEqInt (primPlusInt (Pos vuz165) (primMulInt (Neg vuz190) (Pos (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz164) (primMulInt (Neg vuz190) (Pos (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="black",shape="box"];2952 -> 2974[label="",style="solid", color="black", weight=3]; 113.88/79.11 3664[label="primDivNatS0 (Succ vuz212) (Succ vuz213) (primGEqNatS (Succ vuz2140) vuz215)",fontsize=16,color="burlywood",shape="box"];4965[label="vuz215/Succ vuz2150",fontsize=10,color="white",style="solid",shape="box"];3664 -> 4965[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4965 -> 3689[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4966[label="vuz215/Zero",fontsize=10,color="white",style="solid",shape="box"];3664 -> 4966[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4966 -> 3690[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 3665[label="primDivNatS0 (Succ vuz212) (Succ vuz213) (primGEqNatS Zero vuz215)",fontsize=16,color="burlywood",shape="box"];4967[label="vuz215/Succ vuz2150",fontsize=10,color="white",style="solid",shape="box"];3665 -> 4967[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4967 -> 3691[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4968[label="vuz215/Zero",fontsize=10,color="white",style="solid",shape="box"];3665 -> 4968[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4968 -> 3692[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 2957 -> 2827[label="",style="dashed", color="red", weight=0]; 113.88/79.11 2957[label="primDivNatS (primMinusNatS (Succ vuz15800) Zero) (Succ Zero)",fontsize=16,color="magenta"];2957 -> 2979[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2957 -> 2980[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2958 -> 2827[label="",style="dashed", color="red", weight=0]; 113.88/79.11 2958[label="primDivNatS (primMinusNatS Zero Zero) (Succ Zero)",fontsize=16,color="magenta"];2958 -> 2981[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2958 -> 2982[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2959[label="gcd2 (primEqInt (primPlusInt (Pos vuz167) (primMulInt (Pos vuz240) (Neg (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz166) (primMulInt (Pos vuz240) (Neg (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="black",shape="box"];2959 -> 2983[label="",style="solid", color="black", weight=3]; 113.88/79.11 2960[label="gcd2 (primEqInt (primPlusInt (Pos vuz167) (primMulInt (Neg vuz240) (Neg (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz166) (primMulInt (Neg vuz240) (Neg (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="black",shape="box"];2960 -> 2984[label="",style="solid", color="black", weight=3]; 113.88/79.11 2961[label="gcd2 (primEqInt (primPlusInt (Neg vuz169) (primMulInt (Pos vuz240) (Neg (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz168) (primMulInt (Pos vuz240) (Neg (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="black",shape="box"];2961 -> 2985[label="",style="solid", color="black", weight=3]; 113.88/79.11 2962[label="gcd2 (primEqInt (primPlusInt (Neg vuz169) (primMulInt (Neg vuz240) (Neg (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz168) (primMulInt (Neg vuz240) (Neg (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="black",shape="box"];2962 -> 2986[label="",style="solid", color="black", weight=3]; 113.88/79.11 4356[label="gcd2 (primEqInt (primPlusInt (Neg vuz228) (primMulInt (Pos vuz290) (Neg (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz227) (primMulInt (Pos vuz290) (Neg (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="black",shape="box"];4356 -> 4374[label="",style="solid", color="black", weight=3]; 113.88/79.11 4357[label="gcd2 (primEqInt (primPlusInt (Neg vuz228) (primMulInt (Neg vuz290) (Neg (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz227) (primMulInt (Neg vuz290) (Neg (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="black",shape="box"];4357 -> 4375[label="",style="solid", color="black", weight=3]; 113.88/79.11 4358[label="gcd2 (primEqInt (primPlusInt (Pos vuz230) (primMulInt (Pos vuz290) (Neg (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz229) (primMulInt (Pos vuz290) (Neg (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="black",shape="box"];4358 -> 4376[label="",style="solid", color="black", weight=3]; 113.88/79.11 4359[label="gcd2 (primEqInt (primPlusInt (Pos vuz230) (primMulInt (Neg vuz290) (Neg (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz229) (primMulInt (Neg vuz290) (Neg (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="black",shape="box"];4359 -> 4377[label="",style="solid", color="black", weight=3]; 113.88/79.11 4220[label="vuz85",fontsize=16,color="green",shape="box"];4221[label="vuz93",fontsize=16,color="green",shape="box"];4222[label="gcd (Pos vuz221) (Pos vuz54)",fontsize=16,color="black",shape="box"];4222 -> 4237[label="",style="solid", color="black", weight=3]; 113.88/79.11 1566 -> 1382[label="",style="dashed", color="red", weight=0]; 113.88/79.11 1566[label="primQuotInt (primMinusNat vuz850 vuz950) (reduce2D (primMinusNat vuz850 vuz950) (Pos vuz54))",fontsize=16,color="magenta"];1566 -> 1650[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 1566 -> 1651[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 1567 -> 3726[label="",style="dashed", color="red", weight=0]; 113.88/79.11 1567[label="primQuotInt (Pos (Succ vuz850)) (reduce2D (Pos (Succ vuz850)) (Pos vuz54))",fontsize=16,color="magenta"];1567 -> 3792[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 1567 -> 3793[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 1568 -> 2269[label="",style="dashed", color="red", weight=0]; 113.88/79.11 1568[label="primQuotInt (Neg (Succ vuz950)) (reduce2D (Neg (Succ vuz950)) (Pos vuz54))",fontsize=16,color="magenta"];1568 -> 2350[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 1568 -> 2351[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 1569 -> 3726[label="",style="dashed", color="red", weight=0]; 113.88/79.11 1569[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos vuz54))",fontsize=16,color="magenta"];1569 -> 3794[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 1569 -> 3795[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2814[label="vuz87",fontsize=16,color="green",shape="box"];2815[label="vuz99",fontsize=16,color="green",shape="box"];2816[label="gcd (Neg vuz160) (Pos vuz54)",fontsize=16,color="black",shape="box"];2816 -> 2831[label="",style="solid", color="black", weight=3]; 113.88/79.11 4370 -> 4390[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4370[label="gcd2 (primEqInt (primPlusInt (Pos vuz224) (Pos (primMulNat vuz80 (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz223) (Pos (primMulNat vuz80 (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="magenta"];4370 -> 4391[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4370 -> 4392[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4371 -> 4398[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4371[label="gcd2 (primEqInt (primPlusInt (Pos vuz224) (Neg (primMulNat vuz80 (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz223) (Neg (primMulNat vuz80 (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="magenta"];4371 -> 4399[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4371 -> 4400[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4372 -> 4406[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4372[label="gcd2 (primEqInt (primPlusInt (Neg vuz226) (Pos (primMulNat vuz80 (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz225) (Pos (primMulNat vuz80 (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="magenta"];4372 -> 4407[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4372 -> 4408[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4373 -> 4414[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4373[label="gcd2 (primEqInt (primPlusInt (Neg vuz226) (Neg (primMulNat vuz80 (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz225) (Neg (primMulNat vuz80 (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="magenta"];4373 -> 4415[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4373 -> 4416[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 1607 -> 1407[label="",style="dashed", color="red", weight=0]; 113.88/79.11 1607[label="primQuotInt (primMinusNat vuz1050 vuz770) (reduce2D (primMinusNat vuz1050 vuz770) (Neg vuz45))",fontsize=16,color="magenta"];1607 -> 1679[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 1607 -> 1680[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 1608 -> 3726[label="",style="dashed", color="red", weight=0]; 113.88/79.11 1608[label="primQuotInt (Pos (Succ vuz1050)) (reduce2D (Pos (Succ vuz1050)) (Neg vuz45))",fontsize=16,color="magenta"];1608 -> 3800[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 1608 -> 3801[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 1609 -> 2269[label="",style="dashed", color="red", weight=0]; 113.88/79.11 1609[label="primQuotInt (Neg (Succ vuz770)) (reduce2D (Neg (Succ vuz770)) (Neg vuz45))",fontsize=16,color="magenta"];1609 -> 2354[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 1609 -> 2355[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 1610 -> 3726[label="",style="dashed", color="red", weight=0]; 113.88/79.11 1610[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg vuz45))",fontsize=16,color="magenta"];1610 -> 3802[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 1610 -> 3803[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2817[label="vuz77",fontsize=16,color="green",shape="box"];2818[label="vuz107",fontsize=16,color="green",shape="box"];2819[label="gcd (Neg vuz161) (Neg vuz45)",fontsize=16,color="black",shape="box"];2819 -> 2832[label="",style="solid", color="black", weight=3]; 113.88/79.11 4223[label="vuz79",fontsize=16,color="green",shape="box"];4224[label="vuz109",fontsize=16,color="green",shape="box"];4225[label="gcd (Pos vuz222) (Neg vuz45)",fontsize=16,color="black",shape="box"];4225 -> 4238[label="",style="solid", color="black", weight=3]; 113.88/79.11 2971 -> 2995[label="",style="dashed", color="red", weight=0]; 113.88/79.11 2971[label="gcd2 (primEqInt (primPlusInt (Neg vuz163) (Pos (primMulNat vuz190 (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz162) (Pos (primMulNat vuz190 (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="magenta"];2971 -> 2996[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2971 -> 2997[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2972 -> 3003[label="",style="dashed", color="red", weight=0]; 113.88/79.11 2972[label="gcd2 (primEqInt (primPlusInt (Neg vuz163) (Neg (primMulNat vuz190 (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz162) (Neg (primMulNat vuz190 (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="magenta"];2972 -> 3004[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2972 -> 3005[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2973 -> 3011[label="",style="dashed", color="red", weight=0]; 113.88/79.11 2973[label="gcd2 (primEqInt (primPlusInt (Pos vuz165) (Pos (primMulNat vuz190 (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz164) (Pos (primMulNat vuz190 (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="magenta"];2973 -> 3012[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2973 -> 3013[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2974 -> 3019[label="",style="dashed", color="red", weight=0]; 113.88/79.11 2974[label="gcd2 (primEqInt (primPlusInt (Pos vuz165) (Neg (primMulNat vuz190 (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz164) (Neg (primMulNat vuz190 (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="magenta"];2974 -> 3020[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2974 -> 3021[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3689[label="primDivNatS0 (Succ vuz212) (Succ vuz213) (primGEqNatS (Succ vuz2140) (Succ vuz2150))",fontsize=16,color="black",shape="box"];3689 -> 3700[label="",style="solid", color="black", weight=3]; 113.88/79.11 3690[label="primDivNatS0 (Succ vuz212) (Succ vuz213) (primGEqNatS (Succ vuz2140) Zero)",fontsize=16,color="black",shape="box"];3690 -> 3701[label="",style="solid", color="black", weight=3]; 113.88/79.11 3691[label="primDivNatS0 (Succ vuz212) (Succ vuz213) (primGEqNatS Zero (Succ vuz2150))",fontsize=16,color="black",shape="box"];3691 -> 3702[label="",style="solid", color="black", weight=3]; 113.88/79.11 3692[label="primDivNatS0 (Succ vuz212) (Succ vuz213) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];3692 -> 3703[label="",style="solid", color="black", weight=3]; 113.88/79.11 2979[label="primMinusNatS (Succ vuz15800) Zero",fontsize=16,color="black",shape="triangle"];2979 -> 3032[label="",style="solid", color="black", weight=3]; 113.88/79.11 2980[label="Zero",fontsize=16,color="green",shape="box"];2981[label="primMinusNatS Zero Zero",fontsize=16,color="black",shape="triangle"];2981 -> 3033[label="",style="solid", color="black", weight=3]; 113.88/79.11 2982[label="Zero",fontsize=16,color="green",shape="box"];2983 -> 3019[label="",style="dashed", color="red", weight=0]; 113.88/79.11 2983[label="gcd2 (primEqInt (primPlusInt (Pos vuz167) (Neg (primMulNat vuz240 (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz166) (Neg (primMulNat vuz240 (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="magenta"];2983 -> 3022[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2983 -> 3023[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2983 -> 3024[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2983 -> 3025[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2983 -> 3026[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2984 -> 3011[label="",style="dashed", color="red", weight=0]; 113.88/79.11 2984[label="gcd2 (primEqInt (primPlusInt (Pos vuz167) (Pos (primMulNat vuz240 (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz166) (Pos (primMulNat vuz240 (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="magenta"];2984 -> 3014[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2984 -> 3015[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2984 -> 3016[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2984 -> 3017[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2984 -> 3018[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2985 -> 3003[label="",style="dashed", color="red", weight=0]; 113.88/79.11 2985[label="gcd2 (primEqInt (primPlusInt (Neg vuz169) (Neg (primMulNat vuz240 (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz168) (Neg (primMulNat vuz240 (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="magenta"];2985 -> 3006[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2985 -> 3007[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2985 -> 3008[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2985 -> 3009[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2985 -> 3010[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2986 -> 2995[label="",style="dashed", color="red", weight=0]; 113.88/79.11 2986[label="gcd2 (primEqInt (primPlusInt (Neg vuz169) (Pos (primMulNat vuz240 (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz168) (Pos (primMulNat vuz240 (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="magenta"];2986 -> 2998[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2986 -> 2999[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2986 -> 3000[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2986 -> 3001[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2986 -> 3002[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4374 -> 4414[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4374[label="gcd2 (primEqInt (primPlusInt (Neg vuz228) (Neg (primMulNat vuz290 (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz227) (Neg (primMulNat vuz290 (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="magenta"];4374 -> 4417[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4374 -> 4418[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4374 -> 4419[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4374 -> 4420[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4374 -> 4421[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4375 -> 4406[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4375[label="gcd2 (primEqInt (primPlusInt (Neg vuz228) (Pos (primMulNat vuz290 (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz227) (Pos (primMulNat vuz290 (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="magenta"];4375 -> 4409[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4375 -> 4410[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4375 -> 4411[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4375 -> 4412[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4375 -> 4413[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4376 -> 4398[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4376[label="gcd2 (primEqInt (primPlusInt (Pos vuz230) (Neg (primMulNat vuz290 (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz229) (Neg (primMulNat vuz290 (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="magenta"];4376 -> 4401[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4376 -> 4402[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4376 -> 4403[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4376 -> 4404[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4376 -> 4405[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4377 -> 4390[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4377[label="gcd2 (primEqInt (primPlusInt (Pos vuz230) (Pos (primMulNat vuz290 (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz229) (Pos (primMulNat vuz290 (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="magenta"];4377 -> 4393[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4377 -> 4394[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4377 -> 4395[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4377 -> 4396[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4377 -> 4397[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4237[label="gcd3 (Pos vuz221) (Pos vuz54)",fontsize=16,color="black",shape="box"];4237 -> 4253[label="",style="solid", color="black", weight=3]; 113.88/79.11 1650[label="vuz950",fontsize=16,color="green",shape="box"];1651[label="vuz850",fontsize=16,color="green",shape="box"];3792 -> 4196[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3792[label="reduce2D (Pos (Succ vuz850)) (Pos vuz54)",fontsize=16,color="magenta"];3792 -> 4198[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3793[label="Succ vuz850",fontsize=16,color="green",shape="box"];2350[label="Succ vuz950",fontsize=16,color="green",shape="box"];2351 -> 2794[label="",style="dashed", color="red", weight=0]; 113.88/79.11 2351[label="reduce2D (Neg (Succ vuz950)) (Pos vuz54)",fontsize=16,color="magenta"];2351 -> 2796[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3794 -> 4196[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3794[label="reduce2D (Pos Zero) (Pos vuz54)",fontsize=16,color="magenta"];3794 -> 4199[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3795[label="Zero",fontsize=16,color="green",shape="box"];2831[label="gcd3 (Neg vuz160) (Pos vuz54)",fontsize=16,color="black",shape="box"];2831 -> 2846[label="",style="solid", color="black", weight=3]; 113.88/79.11 4391 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4391[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];4391 -> 4422[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4391 -> 4423[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4392 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4392[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];4392 -> 4424[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4392 -> 4425[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4390[label="gcd2 (primEqInt (primPlusInt (Pos vuz224) (Pos vuz232)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz223) (Pos vuz231)) (Pos vuz54)",fontsize=16,color="black",shape="triangle"];4390 -> 4426[label="",style="solid", color="black", weight=3]; 113.88/79.11 4399 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4399[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];4399 -> 4427[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4399 -> 4428[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4400 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4400[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];4400 -> 4429[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4400 -> 4430[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4398[label="gcd2 (primEqInt (primPlusInt (Pos vuz224) (Neg vuz234)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz223) (Neg vuz233)) (Pos vuz54)",fontsize=16,color="black",shape="triangle"];4398 -> 4431[label="",style="solid", color="black", weight=3]; 113.88/79.11 4407 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4407[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];4407 -> 4432[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4407 -> 4433[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4408 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4408[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];4408 -> 4434[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4408 -> 4435[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4406[label="gcd2 (primEqInt (primPlusInt (Neg vuz226) (Pos vuz236)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz225) (Pos vuz235)) (Pos vuz54)",fontsize=16,color="black",shape="triangle"];4406 -> 4436[label="",style="solid", color="black", weight=3]; 113.88/79.11 4415 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4415[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];4415 -> 4437[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4415 -> 4438[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4416 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4416[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];4416 -> 4439[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4416 -> 4440[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4414[label="gcd2 (primEqInt (primPlusInt (Neg vuz226) (Neg vuz238)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz225) (Neg vuz237)) (Pos vuz54)",fontsize=16,color="black",shape="triangle"];4414 -> 4441[label="",style="solid", color="black", weight=3]; 113.88/79.11 1679[label="vuz770",fontsize=16,color="green",shape="box"];1680[label="vuz1050",fontsize=16,color="green",shape="box"];3800 -> 4208[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3800[label="reduce2D (Pos (Succ vuz1050)) (Neg vuz45)",fontsize=16,color="magenta"];3800 -> 4210[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3801[label="Succ vuz1050",fontsize=16,color="green",shape="box"];2354[label="Succ vuz770",fontsize=16,color="green",shape="box"];2355 -> 2805[label="",style="dashed", color="red", weight=0]; 113.88/79.11 2355[label="reduce2D (Neg (Succ vuz770)) (Neg vuz45)",fontsize=16,color="magenta"];2355 -> 2807[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3802 -> 4208[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3802[label="reduce2D (Pos Zero) (Neg vuz45)",fontsize=16,color="magenta"];3802 -> 4211[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3803[label="Zero",fontsize=16,color="green",shape="box"];2832[label="gcd3 (Neg vuz161) (Neg vuz45)",fontsize=16,color="black",shape="box"];2832 -> 2847[label="",style="solid", color="black", weight=3]; 113.88/79.11 4238[label="gcd3 (Pos vuz222) (Neg vuz45)",fontsize=16,color="black",shape="box"];4238 -> 4254[label="",style="solid", color="black", weight=3]; 113.88/79.11 2996 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 2996[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];2996 -> 3034[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2996 -> 3035[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2997 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 2997[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];2997 -> 3036[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2997 -> 3037[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2995[label="gcd2 (primEqInt (primPlusInt (Neg vuz163) (Pos vuz171)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz162) (Pos vuz170)) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];2995 -> 3038[label="",style="solid", color="black", weight=3]; 113.88/79.11 3004 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3004[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];3004 -> 3039[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3004 -> 3040[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3005 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3005[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];3005 -> 3041[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3005 -> 3042[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3003[label="gcd2 (primEqInt (primPlusInt (Neg vuz163) (Neg vuz173)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz162) (Neg vuz172)) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];3003 -> 3043[label="",style="solid", color="black", weight=3]; 113.88/79.11 3012 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3012[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];3012 -> 3044[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3012 -> 3045[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3013 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3013[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];3013 -> 3046[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3013 -> 3047[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3011[label="gcd2 (primEqInt (primPlusInt (Pos vuz165) (Pos vuz175)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz164) (Pos vuz174)) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];3011 -> 3048[label="",style="solid", color="black", weight=3]; 113.88/79.11 3020 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3020[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];3020 -> 3049[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3020 -> 3050[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3021 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3021[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];3021 -> 3051[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3021 -> 3052[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3019[label="gcd2 (primEqInt (primPlusInt (Pos vuz165) (Neg vuz177)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz164) (Neg vuz176)) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];3019 -> 3053[label="",style="solid", color="black", weight=3]; 113.88/79.11 3700 -> 3623[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3700[label="primDivNatS0 (Succ vuz212) (Succ vuz213) (primGEqNatS vuz2140 vuz2150)",fontsize=16,color="magenta"];3700 -> 3710[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3700 -> 3711[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3701[label="primDivNatS0 (Succ vuz212) (Succ vuz213) True",fontsize=16,color="black",shape="triangle"];3701 -> 3712[label="",style="solid", color="black", weight=3]; 113.88/79.11 3702[label="primDivNatS0 (Succ vuz212) (Succ vuz213) False",fontsize=16,color="black",shape="box"];3702 -> 3713[label="",style="solid", color="black", weight=3]; 113.88/79.11 3703 -> 3701[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3703[label="primDivNatS0 (Succ vuz212) (Succ vuz213) True",fontsize=16,color="magenta"];3032[label="Succ vuz15800",fontsize=16,color="green",shape="box"];3033[label="Zero",fontsize=16,color="green",shape="box"];3022[label="vuz48",fontsize=16,color="green",shape="box"];3023 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3023[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];3023 -> 3054[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3023 -> 3055[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3024[label="vuz167",fontsize=16,color="green",shape="box"];3025[label="vuz166",fontsize=16,color="green",shape="box"];3026 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3026[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];3026 -> 3056[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3026 -> 3057[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3014[label="vuz48",fontsize=16,color="green",shape="box"];3015[label="vuz167",fontsize=16,color="green",shape="box"];3016 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3016[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];3016 -> 3058[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3016 -> 3059[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3017[label="vuz166",fontsize=16,color="green",shape="box"];3018 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3018[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];3018 -> 3060[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3018 -> 3061[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3006 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3006[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];3006 -> 3062[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3006 -> 3063[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3007[label="vuz48",fontsize=16,color="green",shape="box"];3008[label="vuz168",fontsize=16,color="green",shape="box"];3009 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3009[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];3009 -> 3064[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3009 -> 3065[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3010[label="vuz169",fontsize=16,color="green",shape="box"];2998[label="vuz48",fontsize=16,color="green",shape="box"];2999[label="vuz168",fontsize=16,color="green",shape="box"];3000 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3000[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];3000 -> 3066[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3000 -> 3067[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3001 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3001[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];3001 -> 3068[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3001 -> 3069[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3002[label="vuz169",fontsize=16,color="green",shape="box"];4417 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4417[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];4417 -> 4442[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4417 -> 4443[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4418 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4418[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];4418 -> 4444[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4418 -> 4445[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4419[label="vuz228",fontsize=16,color="green",shape="box"];4420[label="vuz227",fontsize=16,color="green",shape="box"];4421[label="vuz51",fontsize=16,color="green",shape="box"];4409 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4409[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];4409 -> 4446[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4409 -> 4447[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4410 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4410[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];4410 -> 4448[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4410 -> 4449[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4411[label="vuz228",fontsize=16,color="green",shape="box"];4412[label="vuz227",fontsize=16,color="green",shape="box"];4413[label="vuz51",fontsize=16,color="green",shape="box"];4401[label="vuz230",fontsize=16,color="green",shape="box"];4402 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4402[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];4402 -> 4450[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4402 -> 4451[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4403 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4403[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];4403 -> 4452[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4403 -> 4453[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4404[label="vuz229",fontsize=16,color="green",shape="box"];4405[label="vuz51",fontsize=16,color="green",shape="box"];4393[label="vuz230",fontsize=16,color="green",shape="box"];4394 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4394[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];4394 -> 4454[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4394 -> 4455[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4395 -> 358[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4395[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];4395 -> 4456[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4395 -> 4457[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4396[label="vuz229",fontsize=16,color="green",shape="box"];4397[label="vuz51",fontsize=16,color="green",shape="box"];4253[label="gcd2 (Pos vuz221 == fromInt (Pos Zero)) (Pos vuz221) (Pos vuz54)",fontsize=16,color="black",shape="box"];4253 -> 4264[label="",style="solid", color="black", weight=3]; 113.88/79.11 4198[label="Succ vuz850",fontsize=16,color="green",shape="box"];2796[label="Succ vuz950",fontsize=16,color="green",shape="box"];4199[label="Zero",fontsize=16,color="green",shape="box"];2846[label="gcd2 (Neg vuz160 == fromInt (Pos Zero)) (Neg vuz160) (Pos vuz54)",fontsize=16,color="black",shape="box"];2846 -> 2858[label="",style="solid", color="black", weight=3]; 113.88/79.11 4422[label="vuz80",fontsize=16,color="green",shape="box"];4423[label="vuz9",fontsize=16,color="green",shape="box"];4424[label="vuz80",fontsize=16,color="green",shape="box"];4425[label="vuz9",fontsize=16,color="green",shape="box"];4426 -> 4264[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4426[label="gcd2 (primEqInt (Pos (primPlusNat vuz224 vuz232)) (fromInt (Pos Zero))) (Pos (primPlusNat vuz224 vuz232)) (Pos vuz54)",fontsize=16,color="magenta"];4426 -> 4473[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4427[label="vuz80",fontsize=16,color="green",shape="box"];4428[label="vuz9",fontsize=16,color="green",shape="box"];4429[label="vuz80",fontsize=16,color="green",shape="box"];4430[label="vuz9",fontsize=16,color="green",shape="box"];4431[label="gcd2 (primEqInt (primMinusNat vuz224 vuz234) (fromInt (Pos Zero))) (primMinusNat vuz224 vuz234) (Pos vuz54)",fontsize=16,color="burlywood",shape="triangle"];4969[label="vuz224/Succ vuz2240",fontsize=10,color="white",style="solid",shape="box"];4431 -> 4969[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4969 -> 4474[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4970[label="vuz224/Zero",fontsize=10,color="white",style="solid",shape="box"];4431 -> 4970[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4970 -> 4475[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4432[label="vuz80",fontsize=16,color="green",shape="box"];4433[label="vuz9",fontsize=16,color="green",shape="box"];4434[label="vuz80",fontsize=16,color="green",shape="box"];4435[label="vuz9",fontsize=16,color="green",shape="box"];4436 -> 4431[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4436[label="gcd2 (primEqInt (primMinusNat vuz236 vuz226) (fromInt (Pos Zero))) (primMinusNat vuz236 vuz226) (Pos vuz54)",fontsize=16,color="magenta"];4436 -> 4476[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4436 -> 4477[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4437[label="vuz80",fontsize=16,color="green",shape="box"];4438[label="vuz9",fontsize=16,color="green",shape="box"];4439[label="vuz80",fontsize=16,color="green",shape="box"];4440[label="vuz9",fontsize=16,color="green",shape="box"];4441 -> 2858[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4441[label="gcd2 (primEqInt (Neg (primPlusNat vuz226 vuz238)) (fromInt (Pos Zero))) (Neg (primPlusNat vuz226 vuz238)) (Pos vuz54)",fontsize=16,color="magenta"];4441 -> 4478[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4210[label="Succ vuz1050",fontsize=16,color="green",shape="box"];2807[label="Succ vuz770",fontsize=16,color="green",shape="box"];4211[label="Zero",fontsize=16,color="green",shape="box"];2847[label="gcd2 (Neg vuz161 == fromInt (Pos Zero)) (Neg vuz161) (Neg vuz45)",fontsize=16,color="black",shape="box"];2847 -> 2859[label="",style="solid", color="black", weight=3]; 113.88/79.11 4254[label="gcd2 (Pos vuz222 == fromInt (Pos Zero)) (Pos vuz222) (Neg vuz45)",fontsize=16,color="black",shape="box"];4254 -> 4265[label="",style="solid", color="black", weight=3]; 113.88/79.11 3034[label="vuz190",fontsize=16,color="green",shape="box"];3035[label="vuz20",fontsize=16,color="green",shape="box"];3036[label="vuz190",fontsize=16,color="green",shape="box"];3037[label="vuz20",fontsize=16,color="green",shape="box"];3038[label="gcd2 (primEqInt (primMinusNat vuz171 vuz163) (fromInt (Pos Zero))) (primMinusNat vuz171 vuz163) (Neg vuz45)",fontsize=16,color="burlywood",shape="triangle"];4971[label="vuz171/Succ vuz1710",fontsize=10,color="white",style="solid",shape="box"];3038 -> 4971[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4971 -> 3086[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4972[label="vuz171/Zero",fontsize=10,color="white",style="solid",shape="box"];3038 -> 4972[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4972 -> 3087[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 3039[label="vuz190",fontsize=16,color="green",shape="box"];3040[label="vuz20",fontsize=16,color="green",shape="box"];3041[label="vuz190",fontsize=16,color="green",shape="box"];3042[label="vuz20",fontsize=16,color="green",shape="box"];3043 -> 2859[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3043[label="gcd2 (primEqInt (Neg (primPlusNat vuz163 vuz173)) (fromInt (Pos Zero))) (Neg (primPlusNat vuz163 vuz173)) (Neg vuz45)",fontsize=16,color="magenta"];3043 -> 3088[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3044[label="vuz190",fontsize=16,color="green",shape="box"];3045[label="vuz20",fontsize=16,color="green",shape="box"];3046[label="vuz190",fontsize=16,color="green",shape="box"];3047[label="vuz20",fontsize=16,color="green",shape="box"];3048 -> 3089[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3048[label="gcd2 (primEqInt (Pos (primPlusNat vuz165 vuz175)) (fromInt (Pos Zero))) (Pos (primPlusNat vuz165 vuz175)) (Neg vuz45)",fontsize=16,color="magenta"];3048 -> 3090[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3048 -> 3091[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3049[label="vuz190",fontsize=16,color="green",shape="box"];3050[label="vuz20",fontsize=16,color="green",shape="box"];3051[label="vuz190",fontsize=16,color="green",shape="box"];3052[label="vuz20",fontsize=16,color="green",shape="box"];3053 -> 3038[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3053[label="gcd2 (primEqInt (primMinusNat vuz165 vuz177) (fromInt (Pos Zero))) (primMinusNat vuz165 vuz177) (Neg vuz45)",fontsize=16,color="magenta"];3053 -> 3092[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3053 -> 3093[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3710[label="vuz2150",fontsize=16,color="green",shape="box"];3711[label="vuz2140",fontsize=16,color="green",shape="box"];3712[label="Succ (primDivNatS (primMinusNatS (Succ vuz212) (Succ vuz213)) (Succ (Succ vuz213)))",fontsize=16,color="green",shape="box"];3712 -> 4226[label="",style="dashed", color="green", weight=3]; 113.88/79.11 3713[label="Zero",fontsize=16,color="green",shape="box"];3054[label="vuz240",fontsize=16,color="green",shape="box"];3055[label="vuz25",fontsize=16,color="green",shape="box"];3056[label="vuz240",fontsize=16,color="green",shape="box"];3057[label="vuz25",fontsize=16,color="green",shape="box"];3058[label="vuz240",fontsize=16,color="green",shape="box"];3059[label="vuz25",fontsize=16,color="green",shape="box"];3060[label="vuz240",fontsize=16,color="green",shape="box"];3061[label="vuz25",fontsize=16,color="green",shape="box"];3062[label="vuz240",fontsize=16,color="green",shape="box"];3063[label="vuz25",fontsize=16,color="green",shape="box"];3064[label="vuz240",fontsize=16,color="green",shape="box"];3065[label="vuz25",fontsize=16,color="green",shape="box"];3066[label="vuz240",fontsize=16,color="green",shape="box"];3067[label="vuz25",fontsize=16,color="green",shape="box"];3068[label="vuz240",fontsize=16,color="green",shape="box"];3069[label="vuz25",fontsize=16,color="green",shape="box"];4442[label="vuz290",fontsize=16,color="green",shape="box"];4443[label="vuz30",fontsize=16,color="green",shape="box"];4444[label="vuz290",fontsize=16,color="green",shape="box"];4445[label="vuz30",fontsize=16,color="green",shape="box"];4446[label="vuz290",fontsize=16,color="green",shape="box"];4447[label="vuz30",fontsize=16,color="green",shape="box"];4448[label="vuz290",fontsize=16,color="green",shape="box"];4449[label="vuz30",fontsize=16,color="green",shape="box"];4450[label="vuz290",fontsize=16,color="green",shape="box"];4451[label="vuz30",fontsize=16,color="green",shape="box"];4452[label="vuz290",fontsize=16,color="green",shape="box"];4453[label="vuz30",fontsize=16,color="green",shape="box"];4454[label="vuz290",fontsize=16,color="green",shape="box"];4455[label="vuz30",fontsize=16,color="green",shape="box"];4456[label="vuz290",fontsize=16,color="green",shape="box"];4457[label="vuz30",fontsize=16,color="green",shape="box"];4264[label="gcd2 (primEqInt (Pos vuz221) (fromInt (Pos Zero))) (Pos vuz221) (Pos vuz54)",fontsize=16,color="burlywood",shape="triangle"];4973[label="vuz221/Succ vuz2210",fontsize=10,color="white",style="solid",shape="box"];4264 -> 4973[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4973 -> 4279[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4974[label="vuz221/Zero",fontsize=10,color="white",style="solid",shape="box"];4264 -> 4974[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4974 -> 4280[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 2858[label="gcd2 (primEqInt (Neg vuz160) (fromInt (Pos Zero))) (Neg vuz160) (Pos vuz54)",fontsize=16,color="burlywood",shape="triangle"];4975[label="vuz160/Succ vuz1600",fontsize=10,color="white",style="solid",shape="box"];2858 -> 4975[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4975 -> 2872[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4976[label="vuz160/Zero",fontsize=10,color="white",style="solid",shape="box"];2858 -> 4976[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4976 -> 2873[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4473 -> 886[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4473[label="primPlusNat vuz224 vuz232",fontsize=16,color="magenta"];4473 -> 4492[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4473 -> 4493[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4474[label="gcd2 (primEqInt (primMinusNat (Succ vuz2240) vuz234) (fromInt (Pos Zero))) (primMinusNat (Succ vuz2240) vuz234) (Pos vuz54)",fontsize=16,color="burlywood",shape="box"];4977[label="vuz234/Succ vuz2340",fontsize=10,color="white",style="solid",shape="box"];4474 -> 4977[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4977 -> 4494[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4978[label="vuz234/Zero",fontsize=10,color="white",style="solid",shape="box"];4474 -> 4978[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4978 -> 4495[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4475[label="gcd2 (primEqInt (primMinusNat Zero vuz234) (fromInt (Pos Zero))) (primMinusNat Zero vuz234) (Pos vuz54)",fontsize=16,color="burlywood",shape="box"];4979[label="vuz234/Succ vuz2340",fontsize=10,color="white",style="solid",shape="box"];4475 -> 4979[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4979 -> 4496[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4980[label="vuz234/Zero",fontsize=10,color="white",style="solid",shape="box"];4475 -> 4980[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4980 -> 4497[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4476[label="vuz236",fontsize=16,color="green",shape="box"];4477[label="vuz226",fontsize=16,color="green",shape="box"];4478 -> 886[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4478[label="primPlusNat vuz226 vuz238",fontsize=16,color="magenta"];4478 -> 4498[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4478 -> 4499[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2859[label="gcd2 (primEqInt (Neg vuz161) (fromInt (Pos Zero))) (Neg vuz161) (Neg vuz45)",fontsize=16,color="burlywood",shape="triangle"];4981[label="vuz161/Succ vuz1610",fontsize=10,color="white",style="solid",shape="box"];2859 -> 4981[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4981 -> 2874[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4982[label="vuz161/Zero",fontsize=10,color="white",style="solid",shape="box"];2859 -> 4982[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4982 -> 2875[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4265 -> 3089[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4265[label="gcd2 (primEqInt (Pos vuz222) (fromInt (Pos Zero))) (Pos vuz222) (Neg vuz45)",fontsize=16,color="magenta"];4265 -> 4281[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4265 -> 4282[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3086[label="gcd2 (primEqInt (primMinusNat (Succ vuz1710) vuz163) (fromInt (Pos Zero))) (primMinusNat (Succ vuz1710) vuz163) (Neg vuz45)",fontsize=16,color="burlywood",shape="box"];4983[label="vuz163/Succ vuz1630",fontsize=10,color="white",style="solid",shape="box"];3086 -> 4983[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4983 -> 3102[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4984[label="vuz163/Zero",fontsize=10,color="white",style="solid",shape="box"];3086 -> 4984[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4984 -> 3103[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 3087[label="gcd2 (primEqInt (primMinusNat Zero vuz163) (fromInt (Pos Zero))) (primMinusNat Zero vuz163) (Neg vuz45)",fontsize=16,color="burlywood",shape="box"];4985[label="vuz163/Succ vuz1630",fontsize=10,color="white",style="solid",shape="box"];3087 -> 4985[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4985 -> 3104[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4986[label="vuz163/Zero",fontsize=10,color="white",style="solid",shape="box"];3087 -> 4986[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4986 -> 3105[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 3088 -> 886[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3088[label="primPlusNat vuz163 vuz173",fontsize=16,color="magenta"];3088 -> 3106[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3088 -> 3107[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3090 -> 886[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3090[label="primPlusNat vuz165 vuz175",fontsize=16,color="magenta"];3090 -> 3108[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3090 -> 3109[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3091 -> 886[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3091[label="primPlusNat vuz165 vuz175",fontsize=16,color="magenta"];3091 -> 3110[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3091 -> 3111[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3089[label="gcd2 (primEqInt (Pos vuz179) (fromInt (Pos Zero))) (Pos vuz178) (Neg vuz45)",fontsize=16,color="burlywood",shape="triangle"];4987[label="vuz179/Succ vuz1790",fontsize=10,color="white",style="solid",shape="box"];3089 -> 4987[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4987 -> 3112[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4988[label="vuz179/Zero",fontsize=10,color="white",style="solid",shape="box"];3089 -> 4988[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4988 -> 3113[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 3092[label="vuz165",fontsize=16,color="green",shape="box"];3093[label="vuz177",fontsize=16,color="green",shape="box"];4226 -> 2827[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4226[label="primDivNatS (primMinusNatS (Succ vuz212) (Succ vuz213)) (Succ (Succ vuz213))",fontsize=16,color="magenta"];4226 -> 4239[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4226 -> 4240[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4279[label="gcd2 (primEqInt (Pos (Succ vuz2210)) (fromInt (Pos Zero))) (Pos (Succ vuz2210)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4279 -> 4296[label="",style="solid", color="black", weight=3]; 113.88/79.11 4280[label="gcd2 (primEqInt (Pos Zero) (fromInt (Pos Zero))) (Pos Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];4280 -> 4297[label="",style="solid", color="black", weight=3]; 113.88/79.11 2872[label="gcd2 (primEqInt (Neg (Succ vuz1600)) (fromInt (Pos Zero))) (Neg (Succ vuz1600)) (Pos vuz54)",fontsize=16,color="black",shape="box"];2872 -> 2891[label="",style="solid", color="black", weight=3]; 113.88/79.11 2873[label="gcd2 (primEqInt (Neg Zero) (fromInt (Pos Zero))) (Neg Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];2873 -> 2892[label="",style="solid", color="black", weight=3]; 113.88/79.11 4492[label="vuz224",fontsize=16,color="green",shape="box"];4493[label="vuz232",fontsize=16,color="green",shape="box"];4494[label="gcd2 (primEqInt (primMinusNat (Succ vuz2240) (Succ vuz2340)) (fromInt (Pos Zero))) (primMinusNat (Succ vuz2240) (Succ vuz2340)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4494 -> 4506[label="",style="solid", color="black", weight=3]; 113.88/79.11 4495[label="gcd2 (primEqInt (primMinusNat (Succ vuz2240) Zero) (fromInt (Pos Zero))) (primMinusNat (Succ vuz2240) Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];4495 -> 4507[label="",style="solid", color="black", weight=3]; 113.88/79.11 4496[label="gcd2 (primEqInt (primMinusNat Zero (Succ vuz2340)) (fromInt (Pos Zero))) (primMinusNat Zero (Succ vuz2340)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4496 -> 4508[label="",style="solid", color="black", weight=3]; 113.88/79.11 4497[label="gcd2 (primEqInt (primMinusNat Zero Zero) (fromInt (Pos Zero))) (primMinusNat Zero Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];4497 -> 4509[label="",style="solid", color="black", weight=3]; 113.88/79.11 4498[label="vuz226",fontsize=16,color="green",shape="box"];4499[label="vuz238",fontsize=16,color="green",shape="box"];2874[label="gcd2 (primEqInt (Neg (Succ vuz1610)) (fromInt (Pos Zero))) (Neg (Succ vuz1610)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2874 -> 2893[label="",style="solid", color="black", weight=3]; 113.88/79.11 2875[label="gcd2 (primEqInt (Neg Zero) (fromInt (Pos Zero))) (Neg Zero) (Neg vuz45)",fontsize=16,color="black",shape="box"];2875 -> 2894[label="",style="solid", color="black", weight=3]; 113.88/79.11 4281[label="vuz222",fontsize=16,color="green",shape="box"];4282[label="vuz222",fontsize=16,color="green",shape="box"];3102[label="gcd2 (primEqInt (primMinusNat (Succ vuz1710) (Succ vuz1630)) (fromInt (Pos Zero))) (primMinusNat (Succ vuz1710) (Succ vuz1630)) (Neg vuz45)",fontsize=16,color="black",shape="box"];3102 -> 3132[label="",style="solid", color="black", weight=3]; 113.88/79.11 3103[label="gcd2 (primEqInt (primMinusNat (Succ vuz1710) Zero) (fromInt (Pos Zero))) (primMinusNat (Succ vuz1710) Zero) (Neg vuz45)",fontsize=16,color="black",shape="box"];3103 -> 3133[label="",style="solid", color="black", weight=3]; 113.88/79.11 3104[label="gcd2 (primEqInt (primMinusNat Zero (Succ vuz1630)) (fromInt (Pos Zero))) (primMinusNat Zero (Succ vuz1630)) (Neg vuz45)",fontsize=16,color="black",shape="box"];3104 -> 3134[label="",style="solid", color="black", weight=3]; 113.88/79.11 3105[label="gcd2 (primEqInt (primMinusNat Zero Zero) (fromInt (Pos Zero))) (primMinusNat Zero Zero) (Neg vuz45)",fontsize=16,color="black",shape="box"];3105 -> 3135[label="",style="solid", color="black", weight=3]; 113.88/79.11 3106[label="vuz163",fontsize=16,color="green",shape="box"];3107[label="vuz173",fontsize=16,color="green",shape="box"];3108[label="vuz165",fontsize=16,color="green",shape="box"];3109[label="vuz175",fontsize=16,color="green",shape="box"];3110[label="vuz165",fontsize=16,color="green",shape="box"];3111[label="vuz175",fontsize=16,color="green",shape="box"];3112[label="gcd2 (primEqInt (Pos (Succ vuz1790)) (fromInt (Pos Zero))) (Pos vuz178) (Neg vuz45)",fontsize=16,color="black",shape="box"];3112 -> 3136[label="",style="solid", color="black", weight=3]; 113.88/79.11 3113[label="gcd2 (primEqInt (Pos Zero) (fromInt (Pos Zero))) (Pos vuz178) (Neg vuz45)",fontsize=16,color="black",shape="box"];3113 -> 3137[label="",style="solid", color="black", weight=3]; 113.88/79.11 4239[label="primMinusNatS (Succ vuz212) (Succ vuz213)",fontsize=16,color="black",shape="box"];4239 -> 4255[label="",style="solid", color="black", weight=3]; 113.88/79.11 4240[label="Succ vuz213",fontsize=16,color="green",shape="box"];4296[label="gcd2 (primEqInt (Pos (Succ vuz2210)) (Pos Zero)) (Pos (Succ vuz2210)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4296 -> 4340[label="",style="solid", color="black", weight=3]; 113.88/79.11 4297[label="gcd2 (primEqInt (Pos Zero) (Pos Zero)) (Pos Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];4297 -> 4341[label="",style="solid", color="black", weight=3]; 113.88/79.11 2891[label="gcd2 (primEqInt (Neg (Succ vuz1600)) (Pos Zero)) (Neg (Succ vuz1600)) (Pos vuz54)",fontsize=16,color="black",shape="box"];2891 -> 2941[label="",style="solid", color="black", weight=3]; 113.88/79.11 2892[label="gcd2 (primEqInt (Neg Zero) (Pos Zero)) (Neg Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];2892 -> 2942[label="",style="solid", color="black", weight=3]; 113.88/79.11 4506 -> 4431[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4506[label="gcd2 (primEqInt (primMinusNat vuz2240 vuz2340) (fromInt (Pos Zero))) (primMinusNat vuz2240 vuz2340) (Pos vuz54)",fontsize=16,color="magenta"];4506 -> 4516[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4506 -> 4517[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4507 -> 4264[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4507[label="gcd2 (primEqInt (Pos (Succ vuz2240)) (fromInt (Pos Zero))) (Pos (Succ vuz2240)) (Pos vuz54)",fontsize=16,color="magenta"];4507 -> 4518[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4508 -> 2858[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4508[label="gcd2 (primEqInt (Neg (Succ vuz2340)) (fromInt (Pos Zero))) (Neg (Succ vuz2340)) (Pos vuz54)",fontsize=16,color="magenta"];4508 -> 4519[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4509 -> 4264[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4509[label="gcd2 (primEqInt (Pos Zero) (fromInt (Pos Zero))) (Pos Zero) (Pos vuz54)",fontsize=16,color="magenta"];4509 -> 4520[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2893[label="gcd2 (primEqInt (Neg (Succ vuz1610)) (Pos Zero)) (Neg (Succ vuz1610)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2893 -> 2943[label="",style="solid", color="black", weight=3]; 113.88/79.11 2894[label="gcd2 (primEqInt (Neg Zero) (Pos Zero)) (Neg Zero) (Neg vuz45)",fontsize=16,color="black",shape="box"];2894 -> 2944[label="",style="solid", color="black", weight=3]; 113.88/79.11 3132 -> 3038[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3132[label="gcd2 (primEqInt (primMinusNat vuz1710 vuz1630) (fromInt (Pos Zero))) (primMinusNat vuz1710 vuz1630) (Neg vuz45)",fontsize=16,color="magenta"];3132 -> 3158[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3132 -> 3159[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3133 -> 3089[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3133[label="gcd2 (primEqInt (Pos (Succ vuz1710)) (fromInt (Pos Zero))) (Pos (Succ vuz1710)) (Neg vuz45)",fontsize=16,color="magenta"];3133 -> 3160[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3133 -> 3161[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3134 -> 2859[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3134[label="gcd2 (primEqInt (Neg (Succ vuz1630)) (fromInt (Pos Zero))) (Neg (Succ vuz1630)) (Neg vuz45)",fontsize=16,color="magenta"];3134 -> 3162[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3135 -> 3089[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3135[label="gcd2 (primEqInt (Pos Zero) (fromInt (Pos Zero))) (Pos Zero) (Neg vuz45)",fontsize=16,color="magenta"];3135 -> 3163[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3135 -> 3164[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3136[label="gcd2 (primEqInt (Pos (Succ vuz1790)) (Pos Zero)) (Pos vuz178) (Neg vuz45)",fontsize=16,color="black",shape="box"];3136 -> 3165[label="",style="solid", color="black", weight=3]; 113.88/79.11 3137[label="gcd2 (primEqInt (Pos Zero) (Pos Zero)) (Pos vuz178) (Neg vuz45)",fontsize=16,color="black",shape="box"];3137 -> 3166[label="",style="solid", color="black", weight=3]; 113.88/79.11 4255[label="primMinusNatS vuz212 vuz213",fontsize=16,color="burlywood",shape="triangle"];4989[label="vuz212/Succ vuz2120",fontsize=10,color="white",style="solid",shape="box"];4255 -> 4989[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4989 -> 4266[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4990[label="vuz212/Zero",fontsize=10,color="white",style="solid",shape="box"];4255 -> 4990[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4990 -> 4267[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4340[label="gcd2 False (Pos (Succ vuz2210)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4340 -> 4360[label="",style="solid", color="black", weight=3]; 113.88/79.11 4341[label="gcd2 True (Pos Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];4341 -> 4361[label="",style="solid", color="black", weight=3]; 113.88/79.11 2941[label="gcd2 False (Neg (Succ vuz1600)) (Pos vuz54)",fontsize=16,color="black",shape="box"];2941 -> 2963[label="",style="solid", color="black", weight=3]; 113.88/79.11 2942[label="gcd2 True (Neg Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];2942 -> 2964[label="",style="solid", color="black", weight=3]; 113.88/79.11 4516[label="vuz2240",fontsize=16,color="green",shape="box"];4517[label="vuz2340",fontsize=16,color="green",shape="box"];4518[label="Succ vuz2240",fontsize=16,color="green",shape="box"];4519[label="Succ vuz2340",fontsize=16,color="green",shape="box"];4520[label="Zero",fontsize=16,color="green",shape="box"];2943[label="gcd2 False (Neg (Succ vuz1610)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2943 -> 2965[label="",style="solid", color="black", weight=3]; 113.88/79.11 2944[label="gcd2 True (Neg Zero) (Neg vuz45)",fontsize=16,color="black",shape="box"];2944 -> 2966[label="",style="solid", color="black", weight=3]; 113.88/79.11 3158[label="vuz1710",fontsize=16,color="green",shape="box"];3159[label="vuz1630",fontsize=16,color="green",shape="box"];3160[label="Succ vuz1710",fontsize=16,color="green",shape="box"];3161[label="Succ vuz1710",fontsize=16,color="green",shape="box"];3162[label="Succ vuz1630",fontsize=16,color="green",shape="box"];3163[label="Zero",fontsize=16,color="green",shape="box"];3164[label="Zero",fontsize=16,color="green",shape="box"];3165[label="gcd2 False (Pos vuz178) (Neg vuz45)",fontsize=16,color="black",shape="box"];3165 -> 3187[label="",style="solid", color="black", weight=3]; 113.88/79.11 3166[label="gcd2 True (Pos vuz178) (Neg vuz45)",fontsize=16,color="black",shape="box"];3166 -> 3188[label="",style="solid", color="black", weight=3]; 113.88/79.11 4266[label="primMinusNatS (Succ vuz2120) vuz213",fontsize=16,color="burlywood",shape="box"];4991[label="vuz213/Succ vuz2130",fontsize=10,color="white",style="solid",shape="box"];4266 -> 4991[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4991 -> 4283[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4992[label="vuz213/Zero",fontsize=10,color="white",style="solid",shape="box"];4266 -> 4992[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4992 -> 4284[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4267[label="primMinusNatS Zero vuz213",fontsize=16,color="burlywood",shape="box"];4993[label="vuz213/Succ vuz2130",fontsize=10,color="white",style="solid",shape="box"];4267 -> 4993[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4993 -> 4285[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4994[label="vuz213/Zero",fontsize=10,color="white",style="solid",shape="box"];4267 -> 4994[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4994 -> 4286[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4360[label="gcd0 (Pos (Succ vuz2210)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4360 -> 4378[label="",style="solid", color="black", weight=3]; 113.88/79.11 4361[label="gcd1 (Pos vuz54 == fromInt (Pos Zero)) (Pos Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];4361 -> 4379[label="",style="solid", color="black", weight=3]; 113.88/79.11 2963[label="gcd0 (Neg (Succ vuz1600)) (Pos vuz54)",fontsize=16,color="black",shape="box"];2963 -> 2987[label="",style="solid", color="black", weight=3]; 113.88/79.11 2964[label="gcd1 (Pos vuz54 == fromInt (Pos Zero)) (Neg Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];2964 -> 2988[label="",style="solid", color="black", weight=3]; 113.88/79.11 2965[label="gcd0 (Neg (Succ vuz1610)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2965 -> 2989[label="",style="solid", color="black", weight=3]; 113.88/79.11 2966[label="gcd1 (Neg vuz45 == fromInt (Pos Zero)) (Neg Zero) (Neg vuz45)",fontsize=16,color="black",shape="box"];2966 -> 2990[label="",style="solid", color="black", weight=3]; 113.88/79.11 3187[label="gcd0 (Pos vuz178) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];3187 -> 3205[label="",style="solid", color="black", weight=3]; 113.88/79.11 3188[label="gcd1 (Neg vuz45 == fromInt (Pos Zero)) (Pos vuz178) (Neg vuz45)",fontsize=16,color="black",shape="box"];3188 -> 3206[label="",style="solid", color="black", weight=3]; 113.88/79.11 4283[label="primMinusNatS (Succ vuz2120) (Succ vuz2130)",fontsize=16,color="black",shape="box"];4283 -> 4298[label="",style="solid", color="black", weight=3]; 113.88/79.11 4284[label="primMinusNatS (Succ vuz2120) Zero",fontsize=16,color="black",shape="box"];4284 -> 4299[label="",style="solid", color="black", weight=3]; 113.88/79.11 4285[label="primMinusNatS Zero (Succ vuz2130)",fontsize=16,color="black",shape="box"];4285 -> 4300[label="",style="solid", color="black", weight=3]; 113.88/79.11 4286[label="primMinusNatS Zero Zero",fontsize=16,color="black",shape="box"];4286 -> 4301[label="",style="solid", color="black", weight=3]; 113.88/79.11 4378 -> 4458[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4378[label="gcd0Gcd' (abs (Pos (Succ vuz2210))) (abs (Pos vuz54))",fontsize=16,color="magenta"];4378 -> 4459[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4378 -> 4460[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4379[label="gcd1 (primEqInt (Pos vuz54) (fromInt (Pos Zero))) (Pos Zero) (Pos vuz54)",fontsize=16,color="burlywood",shape="box"];4995[label="vuz54/Succ vuz540",fontsize=10,color="white",style="solid",shape="box"];4379 -> 4995[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4995 -> 4479[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4996[label="vuz54/Zero",fontsize=10,color="white",style="solid",shape="box"];4379 -> 4996[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4996 -> 4480[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 2987 -> 4458[label="",style="dashed", color="red", weight=0]; 113.88/79.11 2987[label="gcd0Gcd' (abs (Neg (Succ vuz1600))) (abs (Pos vuz54))",fontsize=16,color="magenta"];2987 -> 4461[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2987 -> 4462[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2988[label="gcd1 (primEqInt (Pos vuz54) (fromInt (Pos Zero))) (Neg Zero) (Pos vuz54)",fontsize=16,color="burlywood",shape="box"];4997[label="vuz54/Succ vuz540",fontsize=10,color="white",style="solid",shape="box"];2988 -> 4997[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4997 -> 3071[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4998[label="vuz54/Zero",fontsize=10,color="white",style="solid",shape="box"];2988 -> 4998[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4998 -> 3072[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 2989 -> 4458[label="",style="dashed", color="red", weight=0]; 113.88/79.11 2989[label="gcd0Gcd' (abs (Neg (Succ vuz1610))) (abs (Neg vuz45))",fontsize=16,color="magenta"];2989 -> 4463[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2989 -> 4464[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 2990[label="gcd1 (primEqInt (Neg vuz45) (fromInt (Pos Zero))) (Neg Zero) (Neg vuz45)",fontsize=16,color="burlywood",shape="box"];4999[label="vuz45/Succ vuz450",fontsize=10,color="white",style="solid",shape="box"];2990 -> 4999[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 4999 -> 3074[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 5000[label="vuz45/Zero",fontsize=10,color="white",style="solid",shape="box"];2990 -> 5000[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5000 -> 3075[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 3205 -> 4458[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3205[label="gcd0Gcd' (abs (Pos vuz178)) (abs (Neg vuz45))",fontsize=16,color="magenta"];3205 -> 4465[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3205 -> 4466[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3206[label="gcd1 (primEqInt (Neg vuz45) (fromInt (Pos Zero))) (Pos vuz178) (Neg vuz45)",fontsize=16,color="burlywood",shape="box"];5001[label="vuz45/Succ vuz450",fontsize=10,color="white",style="solid",shape="box"];3206 -> 5001[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5001 -> 3228[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 5002[label="vuz45/Zero",fontsize=10,color="white",style="solid",shape="box"];3206 -> 5002[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5002 -> 3229[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4298 -> 4255[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4298[label="primMinusNatS vuz2120 vuz2130",fontsize=16,color="magenta"];4298 -> 4342[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4298 -> 4343[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4299[label="Succ vuz2120",fontsize=16,color="green",shape="box"];4300[label="Zero",fontsize=16,color="green",shape="box"];4301[label="Zero",fontsize=16,color="green",shape="box"];4459[label="abs (Pos vuz54)",fontsize=16,color="black",shape="triangle"];4459 -> 4481[label="",style="solid", color="black", weight=3]; 113.88/79.11 4460 -> 4459[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4460[label="abs (Pos (Succ vuz2210))",fontsize=16,color="magenta"];4460 -> 4482[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4458[label="gcd0Gcd' vuz240 vuz239",fontsize=16,color="black",shape="triangle"];4458 -> 4483[label="",style="solid", color="black", weight=3]; 113.88/79.11 4479[label="gcd1 (primEqInt (Pos (Succ vuz540)) (fromInt (Pos Zero))) (Pos Zero) (Pos (Succ vuz540))",fontsize=16,color="black",shape="box"];4479 -> 4500[label="",style="solid", color="black", weight=3]; 113.88/79.11 4480[label="gcd1 (primEqInt (Pos Zero) (fromInt (Pos Zero))) (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];4480 -> 4501[label="",style="solid", color="black", weight=3]; 113.88/79.11 4461 -> 4459[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4461[label="abs (Pos vuz54)",fontsize=16,color="magenta"];4462[label="abs (Neg (Succ vuz1600))",fontsize=16,color="black",shape="box"];4462 -> 4484[label="",style="solid", color="black", weight=3]; 113.88/79.11 3071[label="gcd1 (primEqInt (Pos (Succ vuz540)) (fromInt (Pos Zero))) (Neg Zero) (Pos (Succ vuz540))",fontsize=16,color="black",shape="box"];3071 -> 3115[label="",style="solid", color="black", weight=3]; 113.88/79.11 3072[label="gcd1 (primEqInt (Pos Zero) (fromInt (Pos Zero))) (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];3072 -> 3116[label="",style="solid", color="black", weight=3]; 113.88/79.11 4463[label="abs (Neg vuz45)",fontsize=16,color="black",shape="triangle"];4463 -> 4485[label="",style="solid", color="black", weight=3]; 113.88/79.11 4464 -> 4463[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4464[label="abs (Neg (Succ vuz1610))",fontsize=16,color="magenta"];4464 -> 4486[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3074[label="gcd1 (primEqInt (Neg (Succ vuz450)) (fromInt (Pos Zero))) (Neg Zero) (Neg (Succ vuz450))",fontsize=16,color="black",shape="box"];3074 -> 3118[label="",style="solid", color="black", weight=3]; 113.88/79.11 3075[label="gcd1 (primEqInt (Neg Zero) (fromInt (Pos Zero))) (Neg Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];3075 -> 3119[label="",style="solid", color="black", weight=3]; 113.88/79.11 4465 -> 4463[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4465[label="abs (Neg vuz45)",fontsize=16,color="magenta"];4466 -> 4459[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4466[label="abs (Pos vuz178)",fontsize=16,color="magenta"];4466 -> 4487[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3228[label="gcd1 (primEqInt (Neg (Succ vuz450)) (fromInt (Pos Zero))) (Pos vuz178) (Neg (Succ vuz450))",fontsize=16,color="black",shape="box"];3228 -> 3252[label="",style="solid", color="black", weight=3]; 113.88/79.11 3229[label="gcd1 (primEqInt (Neg Zero) (fromInt (Pos Zero))) (Pos vuz178) (Neg Zero)",fontsize=16,color="black",shape="box"];3229 -> 3253[label="",style="solid", color="black", weight=3]; 113.88/79.11 4342[label="vuz2120",fontsize=16,color="green",shape="box"];4343[label="vuz2130",fontsize=16,color="green",shape="box"];4481[label="absReal (Pos vuz54)",fontsize=16,color="black",shape="box"];4481 -> 4502[label="",style="solid", color="black", weight=3]; 113.88/79.11 4482[label="Succ vuz2210",fontsize=16,color="green",shape="box"];4483[label="gcd0Gcd'2 vuz240 vuz239",fontsize=16,color="black",shape="box"];4483 -> 4503[label="",style="solid", color="black", weight=3]; 113.88/79.11 4500[label="gcd1 (primEqInt (Pos (Succ vuz540)) (Pos Zero)) (Pos Zero) (Pos (Succ vuz540))",fontsize=16,color="black",shape="box"];4500 -> 4510[label="",style="solid", color="black", weight=3]; 113.88/79.11 4501[label="gcd1 (primEqInt (Pos Zero) (Pos Zero)) (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];4501 -> 4511[label="",style="solid", color="black", weight=3]; 113.88/79.11 4484[label="absReal (Neg (Succ vuz1600))",fontsize=16,color="black",shape="box"];4484 -> 4504[label="",style="solid", color="black", weight=3]; 113.88/79.11 3115[label="gcd1 (primEqInt (Pos (Succ vuz540)) (Pos Zero)) (Neg Zero) (Pos (Succ vuz540))",fontsize=16,color="black",shape="box"];3115 -> 3139[label="",style="solid", color="black", weight=3]; 113.88/79.11 3116[label="gcd1 (primEqInt (Pos Zero) (Pos Zero)) (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];3116 -> 3140[label="",style="solid", color="black", weight=3]; 113.88/79.11 4485[label="absReal (Neg vuz45)",fontsize=16,color="black",shape="box"];4485 -> 4505[label="",style="solid", color="black", weight=3]; 113.88/79.11 4486[label="Succ vuz1610",fontsize=16,color="green",shape="box"];3118[label="gcd1 (primEqInt (Neg (Succ vuz450)) (Pos Zero)) (Neg Zero) (Neg (Succ vuz450))",fontsize=16,color="black",shape="box"];3118 -> 3142[label="",style="solid", color="black", weight=3]; 113.88/79.11 3119[label="gcd1 (primEqInt (Neg Zero) (Pos Zero)) (Neg Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];3119 -> 3143[label="",style="solid", color="black", weight=3]; 113.88/79.11 4487[label="vuz178",fontsize=16,color="green",shape="box"];3252[label="gcd1 (primEqInt (Neg (Succ vuz450)) (Pos Zero)) (Pos vuz178) (Neg (Succ vuz450))",fontsize=16,color="black",shape="box"];3252 -> 3274[label="",style="solid", color="black", weight=3]; 113.88/79.11 3253[label="gcd1 (primEqInt (Neg Zero) (Pos Zero)) (Pos vuz178) (Neg Zero)",fontsize=16,color="black",shape="box"];3253 -> 3275[label="",style="solid", color="black", weight=3]; 113.88/79.11 4502[label="absReal2 (Pos vuz54)",fontsize=16,color="black",shape="box"];4502 -> 4512[label="",style="solid", color="black", weight=3]; 113.88/79.11 4503[label="gcd0Gcd'1 (vuz239 == fromInt (Pos Zero)) vuz240 vuz239",fontsize=16,color="black",shape="box"];4503 -> 4513[label="",style="solid", color="black", weight=3]; 113.88/79.11 4510[label="gcd1 False (Pos Zero) (Pos (Succ vuz540))",fontsize=16,color="black",shape="box"];4510 -> 4521[label="",style="solid", color="black", weight=3]; 113.88/79.11 4511[label="gcd1 True (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];4511 -> 4522[label="",style="solid", color="black", weight=3]; 113.88/79.11 4504[label="absReal2 (Neg (Succ vuz1600))",fontsize=16,color="black",shape="box"];4504 -> 4514[label="",style="solid", color="black", weight=3]; 113.88/79.11 3139[label="gcd1 False (Neg Zero) (Pos (Succ vuz540))",fontsize=16,color="black",shape="box"];3139 -> 3168[label="",style="solid", color="black", weight=3]; 113.88/79.11 3140[label="gcd1 True (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];3140 -> 3169[label="",style="solid", color="black", weight=3]; 113.88/79.11 4505[label="absReal2 (Neg vuz45)",fontsize=16,color="black",shape="box"];4505 -> 4515[label="",style="solid", color="black", weight=3]; 113.88/79.11 3142[label="gcd1 False (Neg Zero) (Neg (Succ vuz450))",fontsize=16,color="black",shape="box"];3142 -> 3171[label="",style="solid", color="black", weight=3]; 113.88/79.11 3143[label="gcd1 True (Neg Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];3143 -> 3172[label="",style="solid", color="black", weight=3]; 113.88/79.11 3274[label="gcd1 False (Pos vuz178) (Neg (Succ vuz450))",fontsize=16,color="black",shape="box"];3274 -> 3298[label="",style="solid", color="black", weight=3]; 113.88/79.11 3275[label="gcd1 True (Pos vuz178) (Neg Zero)",fontsize=16,color="black",shape="box"];3275 -> 3299[label="",style="solid", color="black", weight=3]; 113.88/79.11 4512[label="absReal1 (Pos vuz54) (Pos vuz54 >= fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];4512 -> 4523[label="",style="solid", color="black", weight=3]; 113.88/79.11 4513[label="gcd0Gcd'1 (primEqInt vuz239 (fromInt (Pos Zero))) vuz240 vuz239",fontsize=16,color="burlywood",shape="box"];5003[label="vuz239/Pos vuz2390",fontsize=10,color="white",style="solid",shape="box"];4513 -> 5003[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5003 -> 4524[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 5004[label="vuz239/Neg vuz2390",fontsize=10,color="white",style="solid",shape="box"];4513 -> 5004[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5004 -> 4525[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4521[label="gcd0 (Pos Zero) (Pos (Succ vuz540))",fontsize=16,color="black",shape="box"];4521 -> 4528[label="",style="solid", color="black", weight=3]; 113.88/79.11 4522 -> 2810[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4522[label="error []",fontsize=16,color="magenta"];4514[label="absReal1 (Neg (Succ vuz1600)) (Neg (Succ vuz1600) >= fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];4514 -> 4526[label="",style="solid", color="black", weight=3]; 113.88/79.11 3168[label="gcd0 (Neg Zero) (Pos (Succ vuz540))",fontsize=16,color="black",shape="box"];3168 -> 3190[label="",style="solid", color="black", weight=3]; 113.88/79.11 3169 -> 2810[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3169[label="error []",fontsize=16,color="magenta"];4515[label="absReal1 (Neg vuz45) (Neg vuz45 >= fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];4515 -> 4527[label="",style="solid", color="black", weight=3]; 113.88/79.11 3171[label="gcd0 (Neg Zero) (Neg (Succ vuz450))",fontsize=16,color="black",shape="box"];3171 -> 3192[label="",style="solid", color="black", weight=3]; 113.88/79.11 3172 -> 2810[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3172[label="error []",fontsize=16,color="magenta"];3298 -> 3187[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3298[label="gcd0 (Pos vuz178) (Neg (Succ vuz450))",fontsize=16,color="magenta"];3298 -> 3328[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3299 -> 2810[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3299[label="error []",fontsize=16,color="magenta"];4523[label="absReal1 (Pos vuz54) (compare (Pos vuz54) (fromInt (Pos Zero)) /= LT)",fontsize=16,color="black",shape="box"];4523 -> 4529[label="",style="solid", color="black", weight=3]; 113.88/79.11 4524[label="gcd0Gcd'1 (primEqInt (Pos vuz2390) (fromInt (Pos Zero))) vuz240 (Pos vuz2390)",fontsize=16,color="burlywood",shape="box"];5005[label="vuz2390/Succ vuz23900",fontsize=10,color="white",style="solid",shape="box"];4524 -> 5005[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5005 -> 4530[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 5006[label="vuz2390/Zero",fontsize=10,color="white",style="solid",shape="box"];4524 -> 5006[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5006 -> 4531[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4525[label="gcd0Gcd'1 (primEqInt (Neg vuz2390) (fromInt (Pos Zero))) vuz240 (Neg vuz2390)",fontsize=16,color="burlywood",shape="box"];5007[label="vuz2390/Succ vuz23900",fontsize=10,color="white",style="solid",shape="box"];4525 -> 5007[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5007 -> 4532[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 5008[label="vuz2390/Zero",fontsize=10,color="white",style="solid",shape="box"];4525 -> 5008[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5008 -> 4533[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4528 -> 4458[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4528[label="gcd0Gcd' (abs (Pos Zero)) (abs (Pos (Succ vuz540)))",fontsize=16,color="magenta"];4528 -> 4536[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4528 -> 4537[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4526[label="absReal1 (Neg (Succ vuz1600)) (compare (Neg (Succ vuz1600)) (fromInt (Pos Zero)) /= LT)",fontsize=16,color="black",shape="box"];4526 -> 4534[label="",style="solid", color="black", weight=3]; 113.88/79.11 3190 -> 4458[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3190[label="gcd0Gcd' (abs (Neg Zero)) (abs (Pos (Succ vuz540)))",fontsize=16,color="magenta"];3190 -> 4467[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3190 -> 4468[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4527[label="absReal1 (Neg vuz45) (compare (Neg vuz45) (fromInt (Pos Zero)) /= LT)",fontsize=16,color="black",shape="box"];4527 -> 4535[label="",style="solid", color="black", weight=3]; 113.88/79.11 3192 -> 4458[label="",style="dashed", color="red", weight=0]; 113.88/79.11 3192[label="gcd0Gcd' (abs (Neg Zero)) (abs (Neg (Succ vuz450)))",fontsize=16,color="magenta"];3192 -> 4469[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3192 -> 4470[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 3328[label="Succ vuz450",fontsize=16,color="green",shape="box"];4529[label="absReal1 (Pos vuz54) (not (compare (Pos vuz54) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];4529 -> 4538[label="",style="solid", color="black", weight=3]; 113.88/79.11 4530[label="gcd0Gcd'1 (primEqInt (Pos (Succ vuz23900)) (fromInt (Pos Zero))) vuz240 (Pos (Succ vuz23900))",fontsize=16,color="black",shape="box"];4530 -> 4539[label="",style="solid", color="black", weight=3]; 113.88/79.11 4531[label="gcd0Gcd'1 (primEqInt (Pos Zero) (fromInt (Pos Zero))) vuz240 (Pos Zero)",fontsize=16,color="black",shape="box"];4531 -> 4540[label="",style="solid", color="black", weight=3]; 113.88/79.11 4532[label="gcd0Gcd'1 (primEqInt (Neg (Succ vuz23900)) (fromInt (Pos Zero))) vuz240 (Neg (Succ vuz23900))",fontsize=16,color="black",shape="box"];4532 -> 4541[label="",style="solid", color="black", weight=3]; 113.88/79.11 4533[label="gcd0Gcd'1 (primEqInt (Neg Zero) (fromInt (Pos Zero))) vuz240 (Neg Zero)",fontsize=16,color="black",shape="box"];4533 -> 4542[label="",style="solid", color="black", weight=3]; 113.88/79.11 4536 -> 4459[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4536[label="abs (Pos (Succ vuz540))",fontsize=16,color="magenta"];4536 -> 4545[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4537 -> 4459[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4537[label="abs (Pos Zero)",fontsize=16,color="magenta"];4537 -> 4546[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4534[label="absReal1 (Neg (Succ vuz1600)) (not (compare (Neg (Succ vuz1600)) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];4534 -> 4543[label="",style="solid", color="black", weight=3]; 113.88/79.11 4467 -> 4459[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4467[label="abs (Pos (Succ vuz540))",fontsize=16,color="magenta"];4467 -> 4488[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4468 -> 4463[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4468[label="abs (Neg Zero)",fontsize=16,color="magenta"];4468 -> 4489[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4535[label="absReal1 (Neg vuz45) (not (compare (Neg vuz45) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];4535 -> 4544[label="",style="solid", color="black", weight=3]; 113.88/79.11 4469 -> 4463[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4469[label="abs (Neg (Succ vuz450))",fontsize=16,color="magenta"];4469 -> 4490[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4470 -> 4463[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4470[label="abs (Neg Zero)",fontsize=16,color="magenta"];4470 -> 4491[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4538[label="absReal1 (Pos vuz54) (not (primCmpInt (Pos vuz54) (fromInt (Pos Zero)) == LT))",fontsize=16,color="burlywood",shape="box"];5009[label="vuz54/Succ vuz540",fontsize=10,color="white",style="solid",shape="box"];4538 -> 5009[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5009 -> 4547[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 5010[label="vuz54/Zero",fontsize=10,color="white",style="solid",shape="box"];4538 -> 5010[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5010 -> 4548[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4539[label="gcd0Gcd'1 (primEqInt (Pos (Succ vuz23900)) (Pos Zero)) vuz240 (Pos (Succ vuz23900))",fontsize=16,color="black",shape="box"];4539 -> 4549[label="",style="solid", color="black", weight=3]; 113.88/79.11 4540[label="gcd0Gcd'1 (primEqInt (Pos Zero) (Pos Zero)) vuz240 (Pos Zero)",fontsize=16,color="black",shape="box"];4540 -> 4550[label="",style="solid", color="black", weight=3]; 113.88/79.11 4541[label="gcd0Gcd'1 (primEqInt (Neg (Succ vuz23900)) (Pos Zero)) vuz240 (Neg (Succ vuz23900))",fontsize=16,color="black",shape="box"];4541 -> 4551[label="",style="solid", color="black", weight=3]; 113.88/79.11 4542[label="gcd0Gcd'1 (primEqInt (Neg Zero) (Pos Zero)) vuz240 (Neg Zero)",fontsize=16,color="black",shape="box"];4542 -> 4552[label="",style="solid", color="black", weight=3]; 113.88/79.11 4545[label="Succ vuz540",fontsize=16,color="green",shape="box"];4546[label="Zero",fontsize=16,color="green",shape="box"];4543[label="absReal1 (Neg (Succ vuz1600)) (not (primCmpInt (Neg (Succ vuz1600)) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];4543 -> 4553[label="",style="solid", color="black", weight=3]; 113.88/79.11 4488[label="Succ vuz540",fontsize=16,color="green",shape="box"];4489[label="Zero",fontsize=16,color="green",shape="box"];4544[label="absReal1 (Neg vuz45) (not (primCmpInt (Neg vuz45) (fromInt (Pos Zero)) == LT))",fontsize=16,color="burlywood",shape="box"];5011[label="vuz45/Succ vuz450",fontsize=10,color="white",style="solid",shape="box"];4544 -> 5011[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5011 -> 4554[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 5012[label="vuz45/Zero",fontsize=10,color="white",style="solid",shape="box"];4544 -> 5012[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5012 -> 4555[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4490[label="Succ vuz450",fontsize=16,color="green",shape="box"];4491[label="Zero",fontsize=16,color="green",shape="box"];4547[label="absReal1 (Pos (Succ vuz540)) (not (primCmpInt (Pos (Succ vuz540)) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];4547 -> 4556[label="",style="solid", color="black", weight=3]; 113.88/79.11 4548[label="absReal1 (Pos Zero) (not (primCmpInt (Pos Zero) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];4548 -> 4557[label="",style="solid", color="black", weight=3]; 113.88/79.11 4549[label="gcd0Gcd'1 False vuz240 (Pos (Succ vuz23900))",fontsize=16,color="black",shape="box"];4549 -> 4558[label="",style="solid", color="black", weight=3]; 113.88/79.11 4550[label="gcd0Gcd'1 True vuz240 (Pos Zero)",fontsize=16,color="black",shape="box"];4550 -> 4559[label="",style="solid", color="black", weight=3]; 113.88/79.11 4551[label="gcd0Gcd'1 False vuz240 (Neg (Succ vuz23900))",fontsize=16,color="black",shape="box"];4551 -> 4560[label="",style="solid", color="black", weight=3]; 113.88/79.11 4552[label="gcd0Gcd'1 True vuz240 (Neg Zero)",fontsize=16,color="black",shape="box"];4552 -> 4561[label="",style="solid", color="black", weight=3]; 113.88/79.11 4553[label="absReal1 (Neg (Succ vuz1600)) (not (primCmpInt (Neg (Succ vuz1600)) (Pos Zero) == LT))",fontsize=16,color="black",shape="triangle"];4553 -> 4562[label="",style="solid", color="black", weight=3]; 113.88/79.11 4554[label="absReal1 (Neg (Succ vuz450)) (not (primCmpInt (Neg (Succ vuz450)) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];4554 -> 4563[label="",style="solid", color="black", weight=3]; 113.88/79.11 4555[label="absReal1 (Neg Zero) (not (primCmpInt (Neg Zero) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];4555 -> 4564[label="",style="solid", color="black", weight=3]; 113.88/79.11 4556[label="absReal1 (Pos (Succ vuz540)) (not (primCmpInt (Pos (Succ vuz540)) (Pos Zero) == LT))",fontsize=16,color="black",shape="box"];4556 -> 4565[label="",style="solid", color="black", weight=3]; 113.88/79.11 4557[label="absReal1 (Pos Zero) (not (primCmpInt (Pos Zero) (Pos Zero) == LT))",fontsize=16,color="black",shape="box"];4557 -> 4566[label="",style="solid", color="black", weight=3]; 113.88/79.11 4558[label="gcd0Gcd'0 vuz240 (Pos (Succ vuz23900))",fontsize=16,color="black",shape="box"];4558 -> 4567[label="",style="solid", color="black", weight=3]; 113.88/79.11 4559[label="vuz240",fontsize=16,color="green",shape="box"];4560[label="gcd0Gcd'0 vuz240 (Neg (Succ vuz23900))",fontsize=16,color="black",shape="box"];4560 -> 4568[label="",style="solid", color="black", weight=3]; 113.88/79.11 4561[label="vuz240",fontsize=16,color="green",shape="box"];4562[label="absReal1 (Neg (Succ vuz1600)) (not (LT == LT))",fontsize=16,color="black",shape="box"];4562 -> 4569[label="",style="solid", color="black", weight=3]; 113.88/79.11 4563 -> 4553[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4563[label="absReal1 (Neg (Succ vuz450)) (not (primCmpInt (Neg (Succ vuz450)) (Pos Zero) == LT))",fontsize=16,color="magenta"];4563 -> 4570[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4564[label="absReal1 (Neg Zero) (not (primCmpInt (Neg Zero) (Pos Zero) == LT))",fontsize=16,color="black",shape="box"];4564 -> 4571[label="",style="solid", color="black", weight=3]; 113.88/79.11 4565[label="absReal1 (Pos (Succ vuz540)) (not (primCmpNat (Succ vuz540) Zero == LT))",fontsize=16,color="black",shape="box"];4565 -> 4572[label="",style="solid", color="black", weight=3]; 113.88/79.11 4566[label="absReal1 (Pos Zero) (not (EQ == LT))",fontsize=16,color="black",shape="box"];4566 -> 4573[label="",style="solid", color="black", weight=3]; 113.88/79.11 4567 -> 4458[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4567[label="gcd0Gcd' (Pos (Succ vuz23900)) (vuz240 `rem` Pos (Succ vuz23900))",fontsize=16,color="magenta"];4567 -> 4574[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4567 -> 4575[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4568 -> 4458[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4568[label="gcd0Gcd' (Neg (Succ vuz23900)) (vuz240 `rem` Neg (Succ vuz23900))",fontsize=16,color="magenta"];4568 -> 4576[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4568 -> 4577[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4569[label="absReal1 (Neg (Succ vuz1600)) (not True)",fontsize=16,color="black",shape="box"];4569 -> 4578[label="",style="solid", color="black", weight=3]; 113.88/79.11 4570[label="vuz450",fontsize=16,color="green",shape="box"];4571[label="absReal1 (Neg Zero) (not (EQ == LT))",fontsize=16,color="black",shape="box"];4571 -> 4579[label="",style="solid", color="black", weight=3]; 113.88/79.11 4572[label="absReal1 (Pos (Succ vuz540)) (not (GT == LT))",fontsize=16,color="black",shape="box"];4572 -> 4580[label="",style="solid", color="black", weight=3]; 113.88/79.11 4573[label="absReal1 (Pos Zero) (not False)",fontsize=16,color="black",shape="box"];4573 -> 4581[label="",style="solid", color="black", weight=3]; 113.88/79.11 4574[label="vuz240 `rem` Pos (Succ vuz23900)",fontsize=16,color="black",shape="box"];4574 -> 4582[label="",style="solid", color="black", weight=3]; 113.88/79.11 4575[label="Pos (Succ vuz23900)",fontsize=16,color="green",shape="box"];4576[label="vuz240 `rem` Neg (Succ vuz23900)",fontsize=16,color="black",shape="box"];4576 -> 4583[label="",style="solid", color="black", weight=3]; 113.88/79.11 4577[label="Neg (Succ vuz23900)",fontsize=16,color="green",shape="box"];4578[label="absReal1 (Neg (Succ vuz1600)) False",fontsize=16,color="black",shape="box"];4578 -> 4584[label="",style="solid", color="black", weight=3]; 113.88/79.11 4579[label="absReal1 (Neg Zero) (not False)",fontsize=16,color="black",shape="box"];4579 -> 4585[label="",style="solid", color="black", weight=3]; 113.88/79.11 4580[label="absReal1 (Pos (Succ vuz540)) (not False)",fontsize=16,color="black",shape="box"];4580 -> 4586[label="",style="solid", color="black", weight=3]; 113.88/79.11 4581[label="absReal1 (Pos Zero) True",fontsize=16,color="black",shape="box"];4581 -> 4587[label="",style="solid", color="black", weight=3]; 113.88/79.11 4582[label="primRemInt vuz240 (Pos (Succ vuz23900))",fontsize=16,color="burlywood",shape="box"];5013[label="vuz240/Pos vuz2400",fontsize=10,color="white",style="solid",shape="box"];4582 -> 5013[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5013 -> 4588[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 5014[label="vuz240/Neg vuz2400",fontsize=10,color="white",style="solid",shape="box"];4582 -> 5014[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5014 -> 4589[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4583[label="primRemInt vuz240 (Neg (Succ vuz23900))",fontsize=16,color="burlywood",shape="box"];5015[label="vuz240/Pos vuz2400",fontsize=10,color="white",style="solid",shape="box"];4583 -> 5015[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5015 -> 4590[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 5016[label="vuz240/Neg vuz2400",fontsize=10,color="white",style="solid",shape="box"];4583 -> 5016[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5016 -> 4591[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4584[label="absReal0 (Neg (Succ vuz1600)) otherwise",fontsize=16,color="black",shape="box"];4584 -> 4592[label="",style="solid", color="black", weight=3]; 113.88/79.11 4585[label="absReal1 (Neg Zero) True",fontsize=16,color="black",shape="box"];4585 -> 4593[label="",style="solid", color="black", weight=3]; 113.88/79.11 4586[label="absReal1 (Pos (Succ vuz540)) True",fontsize=16,color="black",shape="box"];4586 -> 4594[label="",style="solid", color="black", weight=3]; 113.88/79.11 4587[label="Pos Zero",fontsize=16,color="green",shape="box"];4588[label="primRemInt (Pos vuz2400) (Pos (Succ vuz23900))",fontsize=16,color="black",shape="box"];4588 -> 4595[label="",style="solid", color="black", weight=3]; 113.88/79.11 4589[label="primRemInt (Neg vuz2400) (Pos (Succ vuz23900))",fontsize=16,color="black",shape="box"];4589 -> 4596[label="",style="solid", color="black", weight=3]; 113.88/79.11 4590[label="primRemInt (Pos vuz2400) (Neg (Succ vuz23900))",fontsize=16,color="black",shape="box"];4590 -> 4597[label="",style="solid", color="black", weight=3]; 113.88/79.11 4591[label="primRemInt (Neg vuz2400) (Neg (Succ vuz23900))",fontsize=16,color="black",shape="box"];4591 -> 4598[label="",style="solid", color="black", weight=3]; 113.88/79.11 4592[label="absReal0 (Neg (Succ vuz1600)) True",fontsize=16,color="black",shape="box"];4592 -> 4599[label="",style="solid", color="black", weight=3]; 113.88/79.11 4593[label="Neg Zero",fontsize=16,color="green",shape="box"];4594[label="Pos (Succ vuz540)",fontsize=16,color="green",shape="box"];4595[label="Pos (primModNatS vuz2400 (Succ vuz23900))",fontsize=16,color="green",shape="box"];4595 -> 4600[label="",style="dashed", color="green", weight=3]; 113.88/79.11 4596[label="Neg (primModNatS vuz2400 (Succ vuz23900))",fontsize=16,color="green",shape="box"];4596 -> 4601[label="",style="dashed", color="green", weight=3]; 113.88/79.11 4597[label="Pos (primModNatS vuz2400 (Succ vuz23900))",fontsize=16,color="green",shape="box"];4597 -> 4602[label="",style="dashed", color="green", weight=3]; 113.88/79.11 4598[label="Neg (primModNatS vuz2400 (Succ vuz23900))",fontsize=16,color="green",shape="box"];4598 -> 4603[label="",style="dashed", color="green", weight=3]; 113.88/79.11 4599[label="`negate` Neg (Succ vuz1600)",fontsize=16,color="black",shape="box"];4599 -> 4604[label="",style="solid", color="black", weight=3]; 113.88/79.11 4600[label="primModNatS vuz2400 (Succ vuz23900)",fontsize=16,color="burlywood",shape="triangle"];5017[label="vuz2400/Succ vuz24000",fontsize=10,color="white",style="solid",shape="box"];4600 -> 5017[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5017 -> 4605[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 5018[label="vuz2400/Zero",fontsize=10,color="white",style="solid",shape="box"];4600 -> 5018[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5018 -> 4606[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4601 -> 4600[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4601[label="primModNatS vuz2400 (Succ vuz23900)",fontsize=16,color="magenta"];4601 -> 4607[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4602 -> 4600[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4602[label="primModNatS vuz2400 (Succ vuz23900)",fontsize=16,color="magenta"];4602 -> 4608[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4603 -> 4600[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4603[label="primModNatS vuz2400 (Succ vuz23900)",fontsize=16,color="magenta"];4603 -> 4609[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4603 -> 4610[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4604[label="primNegInt (Neg (Succ vuz1600))",fontsize=16,color="black",shape="box"];4604 -> 4611[label="",style="solid", color="black", weight=3]; 113.88/79.11 4605[label="primModNatS (Succ vuz24000) (Succ vuz23900)",fontsize=16,color="black",shape="box"];4605 -> 4612[label="",style="solid", color="black", weight=3]; 113.88/79.11 4606[label="primModNatS Zero (Succ vuz23900)",fontsize=16,color="black",shape="box"];4606 -> 4613[label="",style="solid", color="black", weight=3]; 113.88/79.11 4607[label="vuz2400",fontsize=16,color="green",shape="box"];4608[label="vuz23900",fontsize=16,color="green",shape="box"];4609[label="vuz2400",fontsize=16,color="green",shape="box"];4610[label="vuz23900",fontsize=16,color="green",shape="box"];4611[label="Pos (Succ vuz1600)",fontsize=16,color="green",shape="box"];4612[label="primModNatS0 vuz24000 vuz23900 (primGEqNatS vuz24000 vuz23900)",fontsize=16,color="burlywood",shape="box"];5019[label="vuz24000/Succ vuz240000",fontsize=10,color="white",style="solid",shape="box"];4612 -> 5019[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5019 -> 4614[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 5020[label="vuz24000/Zero",fontsize=10,color="white",style="solid",shape="box"];4612 -> 5020[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5020 -> 4615[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4613[label="Zero",fontsize=16,color="green",shape="box"];4614[label="primModNatS0 (Succ vuz240000) vuz23900 (primGEqNatS (Succ vuz240000) vuz23900)",fontsize=16,color="burlywood",shape="box"];5021[label="vuz23900/Succ vuz239000",fontsize=10,color="white",style="solid",shape="box"];4614 -> 5021[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5021 -> 4616[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 5022[label="vuz23900/Zero",fontsize=10,color="white",style="solid",shape="box"];4614 -> 5022[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5022 -> 4617[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4615[label="primModNatS0 Zero vuz23900 (primGEqNatS Zero vuz23900)",fontsize=16,color="burlywood",shape="box"];5023[label="vuz23900/Succ vuz239000",fontsize=10,color="white",style="solid",shape="box"];4615 -> 5023[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5023 -> 4618[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 5024[label="vuz23900/Zero",fontsize=10,color="white",style="solid",shape="box"];4615 -> 5024[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5024 -> 4619[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4616[label="primModNatS0 (Succ vuz240000) (Succ vuz239000) (primGEqNatS (Succ vuz240000) (Succ vuz239000))",fontsize=16,color="black",shape="box"];4616 -> 4620[label="",style="solid", color="black", weight=3]; 113.88/79.11 4617[label="primModNatS0 (Succ vuz240000) Zero (primGEqNatS (Succ vuz240000) Zero)",fontsize=16,color="black",shape="box"];4617 -> 4621[label="",style="solid", color="black", weight=3]; 113.88/79.11 4618[label="primModNatS0 Zero (Succ vuz239000) (primGEqNatS Zero (Succ vuz239000))",fontsize=16,color="black",shape="box"];4618 -> 4622[label="",style="solid", color="black", weight=3]; 113.88/79.11 4619[label="primModNatS0 Zero Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];4619 -> 4623[label="",style="solid", color="black", weight=3]; 113.88/79.11 4620 -> 4782[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4620[label="primModNatS0 (Succ vuz240000) (Succ vuz239000) (primGEqNatS vuz240000 vuz239000)",fontsize=16,color="magenta"];4620 -> 4783[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4620 -> 4784[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4620 -> 4785[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4620 -> 4786[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4621[label="primModNatS0 (Succ vuz240000) Zero True",fontsize=16,color="black",shape="box"];4621 -> 4626[label="",style="solid", color="black", weight=3]; 113.88/79.11 4622[label="primModNatS0 Zero (Succ vuz239000) False",fontsize=16,color="black",shape="box"];4622 -> 4627[label="",style="solid", color="black", weight=3]; 113.88/79.11 4623[label="primModNatS0 Zero Zero True",fontsize=16,color="black",shape="box"];4623 -> 4628[label="",style="solid", color="black", weight=3]; 113.88/79.11 4783[label="vuz239000",fontsize=16,color="green",shape="box"];4784[label="vuz239000",fontsize=16,color="green",shape="box"];4785[label="vuz240000",fontsize=16,color="green",shape="box"];4786[label="vuz240000",fontsize=16,color="green",shape="box"];4782[label="primModNatS0 (Succ vuz257) (Succ vuz258) (primGEqNatS vuz259 vuz260)",fontsize=16,color="burlywood",shape="triangle"];5025[label="vuz259/Succ vuz2590",fontsize=10,color="white",style="solid",shape="box"];4782 -> 5025[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5025 -> 4815[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 5026[label="vuz259/Zero",fontsize=10,color="white",style="solid",shape="box"];4782 -> 5026[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5026 -> 4816[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4626 -> 4600[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4626[label="primModNatS (primMinusNatS (Succ vuz240000) Zero) (Succ Zero)",fontsize=16,color="magenta"];4626 -> 4633[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4626 -> 4634[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4627[label="Succ Zero",fontsize=16,color="green",shape="box"];4628 -> 4600[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4628[label="primModNatS (primMinusNatS Zero Zero) (Succ Zero)",fontsize=16,color="magenta"];4628 -> 4635[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4628 -> 4636[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4815[label="primModNatS0 (Succ vuz257) (Succ vuz258) (primGEqNatS (Succ vuz2590) vuz260)",fontsize=16,color="burlywood",shape="box"];5027[label="vuz260/Succ vuz2600",fontsize=10,color="white",style="solid",shape="box"];4815 -> 5027[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5027 -> 4817[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 5028[label="vuz260/Zero",fontsize=10,color="white",style="solid",shape="box"];4815 -> 5028[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5028 -> 4818[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4816[label="primModNatS0 (Succ vuz257) (Succ vuz258) (primGEqNatS Zero vuz260)",fontsize=16,color="burlywood",shape="box"];5029[label="vuz260/Succ vuz2600",fontsize=10,color="white",style="solid",shape="box"];4816 -> 5029[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5029 -> 4819[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 5030[label="vuz260/Zero",fontsize=10,color="white",style="solid",shape="box"];4816 -> 5030[label="",style="solid", color="burlywood", weight=9]; 113.88/79.11 5030 -> 4820[label="",style="solid", color="burlywood", weight=3]; 113.88/79.11 4633 -> 4255[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4633[label="primMinusNatS (Succ vuz240000) Zero",fontsize=16,color="magenta"];4633 -> 4641[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4633 -> 4642[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4634[label="Zero",fontsize=16,color="green",shape="box"];4635 -> 4255[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4635[label="primMinusNatS Zero Zero",fontsize=16,color="magenta"];4635 -> 4643[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4635 -> 4644[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4636[label="Zero",fontsize=16,color="green",shape="box"];4817[label="primModNatS0 (Succ vuz257) (Succ vuz258) (primGEqNatS (Succ vuz2590) (Succ vuz2600))",fontsize=16,color="black",shape="box"];4817 -> 4821[label="",style="solid", color="black", weight=3]; 113.88/79.11 4818[label="primModNatS0 (Succ vuz257) (Succ vuz258) (primGEqNatS (Succ vuz2590) Zero)",fontsize=16,color="black",shape="box"];4818 -> 4822[label="",style="solid", color="black", weight=3]; 113.88/79.11 4819[label="primModNatS0 (Succ vuz257) (Succ vuz258) (primGEqNatS Zero (Succ vuz2600))",fontsize=16,color="black",shape="box"];4819 -> 4823[label="",style="solid", color="black", weight=3]; 113.88/79.11 4820[label="primModNatS0 (Succ vuz257) (Succ vuz258) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];4820 -> 4824[label="",style="solid", color="black", weight=3]; 113.88/79.11 4641[label="Succ vuz240000",fontsize=16,color="green",shape="box"];4642[label="Zero",fontsize=16,color="green",shape="box"];4643[label="Zero",fontsize=16,color="green",shape="box"];4644[label="Zero",fontsize=16,color="green",shape="box"];4821 -> 4782[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4821[label="primModNatS0 (Succ vuz257) (Succ vuz258) (primGEqNatS vuz2590 vuz2600)",fontsize=16,color="magenta"];4821 -> 4825[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4821 -> 4826[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4822[label="primModNatS0 (Succ vuz257) (Succ vuz258) True",fontsize=16,color="black",shape="triangle"];4822 -> 4827[label="",style="solid", color="black", weight=3]; 113.88/79.11 4823[label="primModNatS0 (Succ vuz257) (Succ vuz258) False",fontsize=16,color="black",shape="box"];4823 -> 4828[label="",style="solid", color="black", weight=3]; 113.88/79.11 4824 -> 4822[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4824[label="primModNatS0 (Succ vuz257) (Succ vuz258) True",fontsize=16,color="magenta"];4825[label="vuz2600",fontsize=16,color="green",shape="box"];4826[label="vuz2590",fontsize=16,color="green",shape="box"];4827 -> 4600[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4827[label="primModNatS (primMinusNatS (Succ vuz257) (Succ vuz258)) (Succ (Succ vuz258))",fontsize=16,color="magenta"];4827 -> 4829[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4827 -> 4830[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4828[label="Succ (Succ vuz257)",fontsize=16,color="green",shape="box"];4829 -> 4255[label="",style="dashed", color="red", weight=0]; 113.88/79.11 4829[label="primMinusNatS (Succ vuz257) (Succ vuz258)",fontsize=16,color="magenta"];4829 -> 4831[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4829 -> 4832[label="",style="dashed", color="magenta", weight=3]; 113.88/79.11 4830[label="Succ vuz258",fontsize=16,color="green",shape="box"];4831[label="Succ vuz257",fontsize=16,color="green",shape="box"];4832[label="Succ vuz258",fontsize=16,color="green",shape="box"];} 113.88/79.11 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (12) 113.88/79.11 Complex Obligation (AND) 113.88/79.11 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (13) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(vuz240, Pos(Succ(vuz23900))) -> new_gcd0Gcd'(Pos(Succ(vuz23900)), new_primRemInt(vuz240, vuz23900)) 113.88/79.11 new_gcd0Gcd'(vuz240, Neg(Succ(vuz23900))) -> new_gcd0Gcd'(Neg(Succ(vuz23900)), new_primRemInt0(vuz240, vuz23900)) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.11 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primRemInt0(Neg(vuz2400), vuz23900) -> Neg(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.11 new_primRemInt(Pos(vuz2400), vuz23900) -> Pos(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primRemInt0(Pos(vuz2400), vuz23900) -> Pos(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 new_primRemInt(Neg(vuz2400), vuz23900) -> Neg(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primRemInt(Neg(x0), x1) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primModNatS02(x0, x1) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primRemInt0(Neg(x0), x1) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.11 new_primRemInt0(Pos(x0), x1) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 new_primRemInt(Pos(x0), x1) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (14) MNOCProof (EQUIVALENT) 113.88/79.11 We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (15) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(vuz240, Pos(Succ(vuz23900))) -> new_gcd0Gcd'(Pos(Succ(vuz23900)), new_primRemInt(vuz240, vuz23900)) 113.88/79.11 new_gcd0Gcd'(vuz240, Neg(Succ(vuz23900))) -> new_gcd0Gcd'(Neg(Succ(vuz23900)), new_primRemInt0(vuz240, vuz23900)) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.11 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primRemInt0(Neg(vuz2400), vuz23900) -> Neg(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.11 new_primRemInt(Pos(vuz2400), vuz23900) -> Pos(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primRemInt0(Pos(vuz2400), vuz23900) -> Pos(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 new_primRemInt(Neg(vuz2400), vuz23900) -> Neg(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 113.88/79.11 Q is empty. 113.88/79.11 We have to consider all (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (16) InductionCalculusProof (EQUIVALENT) 113.88/79.11 Note that final constraints are written in bold face. 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 For Pair new_gcd0Gcd'(vuz240, Pos(Succ(vuz23900))) -> new_gcd0Gcd'(Pos(Succ(vuz23900)), new_primRemInt(vuz240, vuz23900)) the following chains were created: 113.88/79.11 *We consider the chain new_gcd0Gcd'(x0, Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), new_primRemInt(x0, x1)), new_gcd0Gcd'(x2, Pos(Succ(x3))) -> new_gcd0Gcd'(Pos(Succ(x3)), new_primRemInt(x2, x3)) which results in the following constraint: 113.88/79.11 113.88/79.11 (1) (new_gcd0Gcd'(Pos(Succ(x1)), new_primRemInt(x0, x1))=new_gcd0Gcd'(x2, Pos(Succ(x3))) ==> new_gcd0Gcd'(x0, Pos(Succ(x1)))_>=_new_gcd0Gcd'(Pos(Succ(x1)), new_primRemInt(x0, x1))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 113.88/79.11 113.88/79.11 (2) (new_primRemInt(x0, x1)=Pos(Succ(x3)) ==> new_gcd0Gcd'(x0, Pos(Succ(x1)))_>=_new_gcd0Gcd'(Pos(Succ(x1)), new_primRemInt(x0, x1))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primRemInt(x0, x1)=Pos(Succ(x3)) which results in the following new constraint: 113.88/79.11 113.88/79.11 (3) (Pos(new_primModNatS1(x17, x16))=Pos(Succ(x3)) ==> new_gcd0Gcd'(Pos(x17), Pos(Succ(x16)))_>=_new_gcd0Gcd'(Pos(Succ(x16)), new_primRemInt(Pos(x17), x16))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (3) using rules (I), (II) which results in the following new constraint: 113.88/79.11 113.88/79.11 (4) (new_primModNatS1(x17, x16)=Succ(x3) ==> new_gcd0Gcd'(Pos(x17), Pos(Succ(x16)))_>=_new_gcd0Gcd'(Pos(Succ(x16)), new_primRemInt(Pos(x17), x16))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS1(x17, x16)=Succ(x3) which results in the following new constraints: 113.88/79.11 113.88/79.11 (5) (Succ(Zero)=Succ(x3) ==> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x20))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(x20))), new_primRemInt(Pos(Succ(Zero)), Succ(x20)))) 113.88/79.11 113.88/79.11 (6) (new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero)=Succ(x3) ==> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero)))_>=_new_gcd0Gcd'(Pos(Succ(Zero)), new_primRemInt(Pos(Succ(Zero)), Zero))) 113.88/79.11 113.88/79.11 (7) (new_primModNatS1(new_primMinusNatS0(Succ(x21), Zero), Zero)=Succ(x3) ==> new_gcd0Gcd'(Pos(Succ(Succ(x21))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'(Pos(Succ(Zero)), new_primRemInt(Pos(Succ(Succ(x21))), Zero))) 113.88/79.11 113.88/79.11 (8) (new_primModNatS01(x23, x22, x23, x22)=Succ(x3) ==> new_gcd0Gcd'(Pos(Succ(Succ(x23))), Pos(Succ(Succ(x22))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(x22))), new_primRemInt(Pos(Succ(Succ(x23))), Succ(x22)))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (5) using rules (I), (II), (IV) which results in the following new constraint: 113.88/79.11 113.88/79.11 (9) (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x20))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(x20))), new_primRemInt(Pos(Succ(Zero)), Succ(x20)))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (6) using rules (III), (IV), (VII) which results in the following new constraint: 113.88/79.11 113.88/79.11 (10) (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero)))_>=_new_gcd0Gcd'(Pos(Succ(Zero)), new_primRemInt(Pos(Succ(Zero)), Zero))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (7) using rules (III), (IV), (VII) which results in the following new constraint: 113.88/79.11 113.88/79.11 (11) (new_gcd0Gcd'(Pos(Succ(Succ(x21))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'(Pos(Succ(Zero)), new_primRemInt(Pos(Succ(Succ(x21))), Zero))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (8) using rules (III), (IV), (VII) which results in the following new constraint: 113.88/79.11 113.88/79.11 (12) (new_gcd0Gcd'(Pos(Succ(Succ(x33))), Pos(Succ(Succ(x34))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(x34))), new_primRemInt(Pos(Succ(Succ(x33))), Succ(x34)))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 *We consider the chain new_gcd0Gcd'(x4, Pos(Succ(x5))) -> new_gcd0Gcd'(Pos(Succ(x5)), new_primRemInt(x4, x5)), new_gcd0Gcd'(x6, Neg(Succ(x7))) -> new_gcd0Gcd'(Neg(Succ(x7)), new_primRemInt0(x6, x7)) which results in the following constraint: 113.88/79.11 113.88/79.11 (1) (new_gcd0Gcd'(Pos(Succ(x5)), new_primRemInt(x4, x5))=new_gcd0Gcd'(x6, Neg(Succ(x7))) ==> new_gcd0Gcd'(x4, Pos(Succ(x5)))_>=_new_gcd0Gcd'(Pos(Succ(x5)), new_primRemInt(x4, x5))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 113.88/79.11 113.88/79.11 (2) (new_primRemInt(x4, x5)=Neg(Succ(x7)) ==> new_gcd0Gcd'(x4, Pos(Succ(x5)))_>=_new_gcd0Gcd'(Pos(Succ(x5)), new_primRemInt(x4, x5))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primRemInt(x4, x5)=Neg(Succ(x7)) which results in the following new constraint: 113.88/79.11 113.88/79.11 (3) (Neg(new_primModNatS1(x38, x37))=Neg(Succ(x7)) ==> new_gcd0Gcd'(Neg(x38), Pos(Succ(x37)))_>=_new_gcd0Gcd'(Pos(Succ(x37)), new_primRemInt(Neg(x38), x37))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (3) using rules (I), (II) which results in the following new constraint: 113.88/79.11 113.88/79.11 (4) (new_primModNatS1(x38, x37)=Succ(x7) ==> new_gcd0Gcd'(Neg(x38), Pos(Succ(x37)))_>=_new_gcd0Gcd'(Pos(Succ(x37)), new_primRemInt(Neg(x38), x37))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS1(x38, x37)=Succ(x7) which results in the following new constraints: 113.88/79.11 113.88/79.11 (5) (Succ(Zero)=Succ(x7) ==> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x39))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(x39))), new_primRemInt(Neg(Succ(Zero)), Succ(x39)))) 113.88/79.11 113.88/79.11 (6) (new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero)=Succ(x7) ==> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero)))_>=_new_gcd0Gcd'(Pos(Succ(Zero)), new_primRemInt(Neg(Succ(Zero)), Zero))) 113.88/79.11 113.88/79.11 (7) (new_primModNatS1(new_primMinusNatS0(Succ(x40), Zero), Zero)=Succ(x7) ==> new_gcd0Gcd'(Neg(Succ(Succ(x40))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'(Pos(Succ(Zero)), new_primRemInt(Neg(Succ(Succ(x40))), Zero))) 113.88/79.11 113.88/79.11 (8) (new_primModNatS01(x42, x41, x42, x41)=Succ(x7) ==> new_gcd0Gcd'(Neg(Succ(Succ(x42))), Pos(Succ(Succ(x41))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(x41))), new_primRemInt(Neg(Succ(Succ(x42))), Succ(x41)))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (5) using rules (I), (II), (IV) which results in the following new constraint: 113.88/79.11 113.88/79.11 (9) (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x39))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(x39))), new_primRemInt(Neg(Succ(Zero)), Succ(x39)))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (6) using rules (III), (IV), (VII) which results in the following new constraint: 113.88/79.11 113.88/79.11 (10) (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero)))_>=_new_gcd0Gcd'(Pos(Succ(Zero)), new_primRemInt(Neg(Succ(Zero)), Zero))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (7) using rules (III), (IV), (VII) which results in the following new constraint: 113.88/79.11 113.88/79.11 (11) (new_gcd0Gcd'(Neg(Succ(Succ(x40))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'(Pos(Succ(Zero)), new_primRemInt(Neg(Succ(Succ(x40))), Zero))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (8) using rules (III), (IV), (VII) which results in the following new constraint: 113.88/79.11 113.88/79.11 (12) (new_gcd0Gcd'(Neg(Succ(Succ(x52))), Pos(Succ(Succ(x53))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(x53))), new_primRemInt(Neg(Succ(Succ(x52))), Succ(x53)))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 For Pair new_gcd0Gcd'(vuz240, Neg(Succ(vuz23900))) -> new_gcd0Gcd'(Neg(Succ(vuz23900)), new_primRemInt0(vuz240, vuz23900)) the following chains were created: 113.88/79.11 *We consider the chain new_gcd0Gcd'(x8, Neg(Succ(x9))) -> new_gcd0Gcd'(Neg(Succ(x9)), new_primRemInt0(x8, x9)), new_gcd0Gcd'(x10, Pos(Succ(x11))) -> new_gcd0Gcd'(Pos(Succ(x11)), new_primRemInt(x10, x11)) which results in the following constraint: 113.88/79.11 113.88/79.11 (1) (new_gcd0Gcd'(Neg(Succ(x9)), new_primRemInt0(x8, x9))=new_gcd0Gcd'(x10, Pos(Succ(x11))) ==> new_gcd0Gcd'(x8, Neg(Succ(x9)))_>=_new_gcd0Gcd'(Neg(Succ(x9)), new_primRemInt0(x8, x9))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 113.88/79.11 113.88/79.11 (2) (new_primRemInt0(x8, x9)=Pos(Succ(x11)) ==> new_gcd0Gcd'(x8, Neg(Succ(x9)))_>=_new_gcd0Gcd'(Neg(Succ(x9)), new_primRemInt0(x8, x9))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primRemInt0(x8, x9)=Pos(Succ(x11)) which results in the following new constraint: 113.88/79.11 113.88/79.11 (3) (Pos(new_primModNatS1(x57, x56))=Pos(Succ(x11)) ==> new_gcd0Gcd'(Pos(x57), Neg(Succ(x56)))_>=_new_gcd0Gcd'(Neg(Succ(x56)), new_primRemInt0(Pos(x57), x56))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (3) using rules (I), (II) which results in the following new constraint: 113.88/79.11 113.88/79.11 (4) (new_primModNatS1(x57, x56)=Succ(x11) ==> new_gcd0Gcd'(Pos(x57), Neg(Succ(x56)))_>=_new_gcd0Gcd'(Neg(Succ(x56)), new_primRemInt0(Pos(x57), x56))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS1(x57, x56)=Succ(x11) which results in the following new constraints: 113.88/79.11 113.88/79.11 (5) (Succ(Zero)=Succ(x11) ==> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x58))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(x58))), new_primRemInt0(Pos(Succ(Zero)), Succ(x58)))) 113.88/79.11 113.88/79.11 (6) (new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero)=Succ(x11) ==> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero)))_>=_new_gcd0Gcd'(Neg(Succ(Zero)), new_primRemInt0(Pos(Succ(Zero)), Zero))) 113.88/79.11 113.88/79.11 (7) (new_primModNatS1(new_primMinusNatS0(Succ(x59), Zero), Zero)=Succ(x11) ==> new_gcd0Gcd'(Pos(Succ(Succ(x59))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'(Neg(Succ(Zero)), new_primRemInt0(Pos(Succ(Succ(x59))), Zero))) 113.88/79.11 113.88/79.11 (8) (new_primModNatS01(x61, x60, x61, x60)=Succ(x11) ==> new_gcd0Gcd'(Pos(Succ(Succ(x61))), Neg(Succ(Succ(x60))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(x60))), new_primRemInt0(Pos(Succ(Succ(x61))), Succ(x60)))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (5) using rules (I), (II), (IV) which results in the following new constraint: 113.88/79.11 113.88/79.11 (9) (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x58))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(x58))), new_primRemInt0(Pos(Succ(Zero)), Succ(x58)))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (6) using rules (III), (IV), (VII) which results in the following new constraint: 113.88/79.11 113.88/79.11 (10) (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero)))_>=_new_gcd0Gcd'(Neg(Succ(Zero)), new_primRemInt0(Pos(Succ(Zero)), Zero))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (7) using rules (III), (IV), (VII) which results in the following new constraint: 113.88/79.11 113.88/79.11 (11) (new_gcd0Gcd'(Pos(Succ(Succ(x59))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'(Neg(Succ(Zero)), new_primRemInt0(Pos(Succ(Succ(x59))), Zero))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (8) using rules (III), (IV), (VII) which results in the following new constraint: 113.88/79.11 113.88/79.11 (12) (new_gcd0Gcd'(Pos(Succ(Succ(x71))), Neg(Succ(Succ(x72))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(x72))), new_primRemInt0(Pos(Succ(Succ(x71))), Succ(x72)))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 *We consider the chain new_gcd0Gcd'(x12, Neg(Succ(x13))) -> new_gcd0Gcd'(Neg(Succ(x13)), new_primRemInt0(x12, x13)), new_gcd0Gcd'(x14, Neg(Succ(x15))) -> new_gcd0Gcd'(Neg(Succ(x15)), new_primRemInt0(x14, x15)) which results in the following constraint: 113.88/79.11 113.88/79.11 (1) (new_gcd0Gcd'(Neg(Succ(x13)), new_primRemInt0(x12, x13))=new_gcd0Gcd'(x14, Neg(Succ(x15))) ==> new_gcd0Gcd'(x12, Neg(Succ(x13)))_>=_new_gcd0Gcd'(Neg(Succ(x13)), new_primRemInt0(x12, x13))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (1) using rules (I), (II), (IV) which results in the following new constraint: 113.88/79.11 113.88/79.11 (2) (new_primRemInt0(x12, x13)=Neg(Succ(x15)) ==> new_gcd0Gcd'(x12, Neg(Succ(x13)))_>=_new_gcd0Gcd'(Neg(Succ(x13)), new_primRemInt0(x12, x13))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primRemInt0(x12, x13)=Neg(Succ(x15)) which results in the following new constraint: 113.88/79.11 113.88/79.11 (3) (Neg(new_primModNatS1(x74, x73))=Neg(Succ(x15)) ==> new_gcd0Gcd'(Neg(x74), Neg(Succ(x73)))_>=_new_gcd0Gcd'(Neg(Succ(x73)), new_primRemInt0(Neg(x74), x73))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (3) using rules (I), (II) which results in the following new constraint: 113.88/79.11 113.88/79.11 (4) (new_primModNatS1(x74, x73)=Succ(x15) ==> new_gcd0Gcd'(Neg(x74), Neg(Succ(x73)))_>=_new_gcd0Gcd'(Neg(Succ(x73)), new_primRemInt0(Neg(x74), x73))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (4) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS1(x74, x73)=Succ(x15) which results in the following new constraints: 113.88/79.11 113.88/79.11 (5) (Succ(Zero)=Succ(x15) ==> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x77))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(x77))), new_primRemInt0(Neg(Succ(Zero)), Succ(x77)))) 113.88/79.11 113.88/79.11 (6) (new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero)=Succ(x15) ==> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero)))_>=_new_gcd0Gcd'(Neg(Succ(Zero)), new_primRemInt0(Neg(Succ(Zero)), Zero))) 113.88/79.11 113.88/79.11 (7) (new_primModNatS1(new_primMinusNatS0(Succ(x78), Zero), Zero)=Succ(x15) ==> new_gcd0Gcd'(Neg(Succ(Succ(x78))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'(Neg(Succ(Zero)), new_primRemInt0(Neg(Succ(Succ(x78))), Zero))) 113.88/79.11 113.88/79.11 (8) (new_primModNatS01(x80, x79, x80, x79)=Succ(x15) ==> new_gcd0Gcd'(Neg(Succ(Succ(x80))), Neg(Succ(Succ(x79))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(x79))), new_primRemInt0(Neg(Succ(Succ(x80))), Succ(x79)))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (5) using rules (I), (II), (IV) which results in the following new constraint: 113.88/79.11 113.88/79.11 (9) (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x77))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(x77))), new_primRemInt0(Neg(Succ(Zero)), Succ(x77)))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (6) using rules (III), (IV), (VII) which results in the following new constraint: 113.88/79.11 113.88/79.11 (10) (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero)))_>=_new_gcd0Gcd'(Neg(Succ(Zero)), new_primRemInt0(Neg(Succ(Zero)), Zero))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (7) using rules (III), (IV), (VII) which results in the following new constraint: 113.88/79.11 113.88/79.11 (11) (new_gcd0Gcd'(Neg(Succ(Succ(x78))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'(Neg(Succ(Zero)), new_primRemInt0(Neg(Succ(Succ(x78))), Zero))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 We simplified constraint (8) using rules (III), (IV), (VII) which results in the following new constraint: 113.88/79.11 113.88/79.11 (12) (new_gcd0Gcd'(Neg(Succ(Succ(x90))), Neg(Succ(Succ(x91))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(x91))), new_primRemInt0(Neg(Succ(Succ(x90))), Succ(x91)))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 To summarize, we get the following constraints P__>=_ for the following pairs. 113.88/79.11 113.88/79.11 *new_gcd0Gcd'(vuz240, Pos(Succ(vuz23900))) -> new_gcd0Gcd'(Pos(Succ(vuz23900)), new_primRemInt(vuz240, vuz23900)) 113.88/79.11 113.88/79.11 *(new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x20))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(x20))), new_primRemInt(Pos(Succ(Zero)), Succ(x20)))) 113.88/79.11 113.88/79.11 113.88/79.11 *(new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero)))_>=_new_gcd0Gcd'(Pos(Succ(Zero)), new_primRemInt(Pos(Succ(Zero)), Zero))) 113.88/79.11 113.88/79.11 113.88/79.11 *(new_gcd0Gcd'(Pos(Succ(Succ(x21))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'(Pos(Succ(Zero)), new_primRemInt(Pos(Succ(Succ(x21))), Zero))) 113.88/79.11 113.88/79.11 113.88/79.11 *(new_gcd0Gcd'(Pos(Succ(Succ(x33))), Pos(Succ(Succ(x34))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(x34))), new_primRemInt(Pos(Succ(Succ(x33))), Succ(x34)))) 113.88/79.11 113.88/79.11 113.88/79.11 *(new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x39))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(x39))), new_primRemInt(Neg(Succ(Zero)), Succ(x39)))) 113.88/79.11 113.88/79.11 113.88/79.11 *(new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero)))_>=_new_gcd0Gcd'(Pos(Succ(Zero)), new_primRemInt(Neg(Succ(Zero)), Zero))) 113.88/79.11 113.88/79.11 113.88/79.11 *(new_gcd0Gcd'(Neg(Succ(Succ(x40))), Pos(Succ(Zero)))_>=_new_gcd0Gcd'(Pos(Succ(Zero)), new_primRemInt(Neg(Succ(Succ(x40))), Zero))) 113.88/79.11 113.88/79.11 113.88/79.11 *(new_gcd0Gcd'(Neg(Succ(Succ(x52))), Pos(Succ(Succ(x53))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(x53))), new_primRemInt(Neg(Succ(Succ(x52))), Succ(x53)))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 *new_gcd0Gcd'(vuz240, Neg(Succ(vuz23900))) -> new_gcd0Gcd'(Neg(Succ(vuz23900)), new_primRemInt0(vuz240, vuz23900)) 113.88/79.11 113.88/79.11 *(new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x58))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(x58))), new_primRemInt0(Pos(Succ(Zero)), Succ(x58)))) 113.88/79.11 113.88/79.11 113.88/79.11 *(new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero)))_>=_new_gcd0Gcd'(Neg(Succ(Zero)), new_primRemInt0(Pos(Succ(Zero)), Zero))) 113.88/79.11 113.88/79.11 113.88/79.11 *(new_gcd0Gcd'(Pos(Succ(Succ(x59))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'(Neg(Succ(Zero)), new_primRemInt0(Pos(Succ(Succ(x59))), Zero))) 113.88/79.11 113.88/79.11 113.88/79.11 *(new_gcd0Gcd'(Pos(Succ(Succ(x71))), Neg(Succ(Succ(x72))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(x72))), new_primRemInt0(Pos(Succ(Succ(x71))), Succ(x72)))) 113.88/79.11 113.88/79.11 113.88/79.11 *(new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x77))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(x77))), new_primRemInt0(Neg(Succ(Zero)), Succ(x77)))) 113.88/79.11 113.88/79.11 113.88/79.11 *(new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero)))_>=_new_gcd0Gcd'(Neg(Succ(Zero)), new_primRemInt0(Neg(Succ(Zero)), Zero))) 113.88/79.11 113.88/79.11 113.88/79.11 *(new_gcd0Gcd'(Neg(Succ(Succ(x78))), Neg(Succ(Zero)))_>=_new_gcd0Gcd'(Neg(Succ(Zero)), new_primRemInt0(Neg(Succ(Succ(x78))), Zero))) 113.88/79.11 113.88/79.11 113.88/79.11 *(new_gcd0Gcd'(Neg(Succ(Succ(x90))), Neg(Succ(Succ(x91))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(x91))), new_primRemInt0(Neg(Succ(Succ(x90))), Succ(x91)))) 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 113.88/79.11 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. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (17) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(vuz240, Pos(Succ(vuz23900))) -> new_gcd0Gcd'(Pos(Succ(vuz23900)), new_primRemInt(vuz240, vuz23900)) 113.88/79.11 new_gcd0Gcd'(vuz240, Neg(Succ(vuz23900))) -> new_gcd0Gcd'(Neg(Succ(vuz23900)), new_primRemInt0(vuz240, vuz23900)) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.11 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primRemInt0(Neg(vuz2400), vuz23900) -> Neg(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.11 new_primRemInt(Pos(vuz2400), vuz23900) -> Pos(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primRemInt0(Pos(vuz2400), vuz23900) -> Pos(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 new_primRemInt(Neg(vuz2400), vuz23900) -> Neg(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primRemInt(Neg(x0), x1) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primModNatS02(x0, x1) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primRemInt0(Neg(x0), x1) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.11 new_primRemInt0(Pos(x0), x1) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 new_primRemInt(Pos(x0), x1) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (18) TransformationProof (EQUIVALENT) 113.88/79.11 By narrowing [LPAR04] the rule new_gcd0Gcd'(vuz240, Pos(Succ(vuz23900))) -> new_gcd0Gcd'(Pos(Succ(vuz23900)), new_primRemInt(vuz240, vuz23900)) at position [1] we obtained the following new rules [LPAR04]: 113.88/79.11 113.88/79.11 (new_gcd0Gcd'(Pos(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Pos(new_primModNatS1(x0, x1))),new_gcd0Gcd'(Pos(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Pos(new_primModNatS1(x0, x1)))) 113.88/79.11 (new_gcd0Gcd'(Neg(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Neg(new_primModNatS1(x0, x1))),new_gcd0Gcd'(Neg(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Neg(new_primModNatS1(x0, x1)))) 113.88/79.11 113.88/79.11 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (19) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(vuz240, Neg(Succ(vuz23900))) -> new_gcd0Gcd'(Neg(Succ(vuz23900)), new_primRemInt0(vuz240, vuz23900)) 113.88/79.11 new_gcd0Gcd'(Pos(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Pos(new_primModNatS1(x0, x1))) 113.88/79.11 new_gcd0Gcd'(Neg(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Neg(new_primModNatS1(x0, x1))) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.11 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primRemInt0(Neg(vuz2400), vuz23900) -> Neg(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.11 new_primRemInt(Pos(vuz2400), vuz23900) -> Pos(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primRemInt0(Pos(vuz2400), vuz23900) -> Pos(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 new_primRemInt(Neg(vuz2400), vuz23900) -> Neg(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primRemInt(Neg(x0), x1) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primModNatS02(x0, x1) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primRemInt0(Neg(x0), x1) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.11 new_primRemInt0(Pos(x0), x1) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 new_primRemInt(Pos(x0), x1) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (20) DependencyGraphProof (EQUIVALENT) 113.88/79.11 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (21) 113.88/79.11 Complex Obligation (AND) 113.88/79.11 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (22) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(Pos(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Pos(new_primModNatS1(x0, x1))) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.11 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primRemInt0(Neg(vuz2400), vuz23900) -> Neg(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.11 new_primRemInt(Pos(vuz2400), vuz23900) -> Pos(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primRemInt0(Pos(vuz2400), vuz23900) -> Pos(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 new_primRemInt(Neg(vuz2400), vuz23900) -> Neg(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primRemInt(Neg(x0), x1) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primModNatS02(x0, x1) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primRemInt0(Neg(x0), x1) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.11 new_primRemInt0(Pos(x0), x1) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 new_primRemInt(Pos(x0), x1) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (23) UsableRulesProof (EQUIVALENT) 113.88/79.11 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (24) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(Pos(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Pos(new_primModNatS1(x0, x1))) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primRemInt(Neg(x0), x1) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primModNatS02(x0, x1) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primRemInt0(Neg(x0), x1) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.11 new_primRemInt0(Pos(x0), x1) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 new_primRemInt(Pos(x0), x1) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (25) QReductionProof (EQUIVALENT) 113.88/79.11 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 113.88/79.11 113.88/79.11 new_primRemInt(Neg(x0), x1) 113.88/79.11 new_primRemInt0(Neg(x0), x1) 113.88/79.11 new_primRemInt0(Pos(x0), x1) 113.88/79.11 new_primRemInt(Pos(x0), x1) 113.88/79.11 113.88/79.11 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (26) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(Pos(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Pos(new_primModNatS1(x0, x1))) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primModNatS02(x0, x1) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (27) TransformationProof (EQUIVALENT) 113.88/79.11 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Pos(new_primModNatS1(x0, x1))) at position [1,0] we obtained the following new rules [LPAR04]: 113.88/79.11 113.88/79.11 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero)))) 113.88/79.11 (new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero)))) 113.88/79.11 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero)))) 113.88/79.11 (new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(new_primModNatS01(x0, x1, x0, x1))),new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(new_primModNatS01(x0, x1, x0, x1)))) 113.88/79.11 (new_gcd0Gcd'(Pos(Zero), Pos(Succ(x0))) -> new_gcd0Gcd'(Pos(Succ(x0)), Pos(Zero)),new_gcd0Gcd'(Pos(Zero), Pos(Succ(x0))) -> new_gcd0Gcd'(Pos(Succ(x0)), Pos(Zero))) 113.88/79.11 113.88/79.11 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (28) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(new_primModNatS01(x0, x1, x0, x1))) 113.88/79.11 new_gcd0Gcd'(Pos(Zero), Pos(Succ(x0))) -> new_gcd0Gcd'(Pos(Succ(x0)), Pos(Zero)) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primModNatS02(x0, x1) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (29) DependencyGraphProof (EQUIVALENT) 113.88/79.11 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 1 less node. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (30) 113.88/79.11 Complex Obligation (AND) 113.88/79.11 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (31) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.11 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primModNatS02(x0, x1) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (32) UsableRulesProof (EQUIVALENT) 113.88/79.11 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (33) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primModNatS02(x0, x1) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (34) QReductionProof (EQUIVALENT) 113.88/79.11 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 113.88/79.11 113.88/79.11 new_primModNatS02(x0, x1) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.11 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.11 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.11 113.88/79.11 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (35) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (36) TransformationProof (EQUIVALENT) 113.88/79.11 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 113.88/79.11 113.88/79.11 (new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero)))) 113.88/79.11 113.88/79.11 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (37) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (38) TransformationProof (EQUIVALENT) 113.88/79.11 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 113.88/79.11 113.88/79.11 (new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero))),new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero)))) 113.88/79.11 113.88/79.11 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (39) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero))) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (40) DependencyGraphProof (EQUIVALENT) 113.88/79.11 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (41) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (42) TransformationProof (EQUIVALENT) 113.88/79.11 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 113.88/79.11 113.88/79.11 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero)))) 113.88/79.11 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero)))) 113.88/79.11 113.88/79.11 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (43) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (44) TransformationProof (EQUIVALENT) 113.88/79.11 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 113.88/79.11 113.88/79.11 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero)))) 113.88/79.11 113.88/79.11 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (45) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero))) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (46) DependencyGraphProof (EQUIVALENT) 113.88/79.11 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (47) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (48) TransformationProof (EQUIVALENT) 113.88/79.11 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 113.88/79.11 113.88/79.11 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero)))) 113.88/79.11 113.88/79.11 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (49) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (50) TransformationProof (EQUIVALENT) 113.88/79.11 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 113.88/79.11 113.88/79.11 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero)))) 113.88/79.11 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero)))) 113.88/79.11 113.88/79.11 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (51) 113.88/79.11 Obligation: 113.88/79.11 Q DP problem: 113.88/79.11 The TRS P consists of the following rules: 113.88/79.11 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 113.88/79.11 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 113.88/79.11 113.88/79.11 The TRS R consists of the following rules: 113.88/79.11 113.88/79.11 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.11 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.11 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.11 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.11 113.88/79.11 The set Q consists of the following terms: 113.88/79.11 113.88/79.11 new_primModNatS1(Zero, x0) 113.88/79.11 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.11 new_primMinusNatS0(Zero, Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.11 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.11 new_primModNatS1(Succ(Zero), Zero) 113.88/79.11 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.11 113.88/79.11 We have to consider all minimal (P,Q,R)-chains. 113.88/79.11 ---------------------------------------- 113.88/79.11 113.88/79.11 (52) TransformationProof (EQUIVALENT) 113.88/79.11 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 113.88/79.11 113.88/79.11 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero)))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (53) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (54) DependencyGraphProof (EQUIVALENT) 113.88/79.12 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (55) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (56) TransformationProof (EQUIVALENT) 113.88/79.12 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero)))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (57) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (58) QDPSizeChangeProof (EQUIVALENT) 113.88/79.12 We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. 113.88/79.12 113.88/79.12 Order:Polynomial interpretation [POLO]: 113.88/79.12 113.88/79.12 POL(Pos(x_1)) = x_1 113.88/79.12 POL(Succ(x_1)) = 1 + x_1 113.88/79.12 POL(Zero) = 1 113.88/79.12 POL(new_primMinusNatS0(x_1, x_2)) = x_1 113.88/79.12 POL(new_primModNatS1(x_1, x_2)) = x_1 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 From the DPs we obtained the following set of size-change graphs: 113.88/79.12 *new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) (allowed arguments on rhs = {1, 2}) 113.88/79.12 The graph contains the following edges 2 >= 1, 1 > 2 113.88/79.12 113.88/79.12 113.88/79.12 *new_gcd0Gcd'(Pos(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Zero))) (allowed arguments on rhs = {1, 2}) 113.88/79.12 The graph contains the following edges 2 >= 1, 1 >= 2 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 We oriented the following set of usable rules [AAECC05,FROCOS05]. 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (59) 113.88/79.12 YES 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (60) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(new_primModNatS01(x0, x1, x0, x1))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (61) UsableRulesProof (EQUIVALENT) 113.88/79.12 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (62) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(new_primModNatS01(x0, x1, x0, x1))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (63) TransformationProof (EQUIVALENT) 113.88/79.12 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Pos(new_primModNatS01(x0, x1, x0, x1))) at position [1,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS02(Zero, Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS02(Zero, Zero)))) 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3)))) 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS02(Succ(x2), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS02(Succ(x2), Zero)))) 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero))))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (64) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS02(Zero, Zero))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS02(Succ(x2), Zero))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (65) DependencyGraphProof (EQUIVALENT) 113.88/79.12 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (66) 113.88/79.12 Complex Obligation (AND) 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (67) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS02(Zero, Zero))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS02(Succ(x2), Zero))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (68) TransformationProof (EQUIVALENT) 113.88/79.12 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS02(Zero, Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Zero))))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (69) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS02(Succ(x2), Zero))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Zero)))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (70) TransformationProof (EQUIVALENT) 113.88/79.12 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS02(Succ(x2), Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero))))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (71) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Zero)))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (72) TransformationProof (EQUIVALENT) 113.88/79.12 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Zero))))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (73) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Zero)))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (74) TransformationProof (EQUIVALENT) 113.88/79.12 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero))))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (75) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Zero)))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (76) TransformationProof (EQUIVALENT) 113.88/79.12 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(Zero, Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(Zero, Succ(Zero))))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (77) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(Zero, Succ(Zero)))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (78) DependencyGraphProof (EQUIVALENT) 113.88/79.12 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (79) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (80) TransformationProof (EQUIVALENT) 113.88/79.12 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero))))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (81) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (82) TransformationProof (EQUIVALENT) 113.88/79.12 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS01(x0, Zero, x0, Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS01(x0, Zero, x0, Zero)))) 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Zero)))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (83) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS01(x0, Zero, x0, Zero))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Zero))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (84) DependencyGraphProof (EQUIVALENT) 113.88/79.12 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (85) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS01(x0, Zero, x0, Zero))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (86) QDPOrderProof (EQUIVALENT) 113.88/79.12 We use the reduction pair processor [LPAR04,JAR06]. 113.88/79.12 113.88/79.12 113.88/79.12 The following pairs can be oriented strictly and are deleted. 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(new_primModNatS01(x0, Zero, x0, Zero))) 113.88/79.12 The remaining pairs can at least be oriented weakly. 113.88/79.12 Used ordering: Polynomial interpretation [POLO]: 113.88/79.12 113.88/79.12 POL(Pos(x_1)) = 2*x_1 113.88/79.12 POL(Succ(x_1)) = 1 + x_1 113.88/79.12 POL(Zero) = 0 113.88/79.12 POL(new_gcd0Gcd'(x_1, x_2)) = 2*x_1 + 2*x_2 113.88/79.12 POL(new_primMinusNatS0(x_1, x_2)) = x_1 113.88/79.12 POL(new_primModNatS01(x_1, x_2, x_3, x_4)) = 3 + x_1 113.88/79.12 POL(new_primModNatS02(x_1, x_2)) = 3 + x_1 113.88/79.12 POL(new_primModNatS1(x_1, x_2)) = 2 + x_1 113.88/79.12 113.88/79.12 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (87) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (88) DependencyGraphProof (EQUIVALENT) 113.88/79.12 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (89) 113.88/79.12 TRUE 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (90) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (91) TransformationProof (EQUIVALENT) 113.88/79.12 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) at position [1,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Zero), Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Zero), Succ(Zero))))) 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3)))) 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero))))) 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero)))))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (92) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Zero), Succ(Zero)))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (93) DependencyGraphProof (EQUIVALENT) 113.88/79.12 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (94) 113.88/79.12 Complex Obligation (AND) 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (95) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Zero), Succ(Zero)))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (96) TransformationProof (EQUIVALENT) 113.88/79.12 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Zero), Succ(Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero)))))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (97) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (98) TransformationProof (EQUIVALENT) 113.88/79.12 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero)))))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (99) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (100) TransformationProof (EQUIVALENT) 113.88/79.12 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Succ(Zero)))))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (101) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (102) TransformationProof (EQUIVALENT) 113.88/79.12 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero)))))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (103) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (104) TransformationProof (EQUIVALENT) 113.88/79.12 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Succ(Zero)))))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (105) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Succ(Zero))))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (106) TransformationProof (EQUIVALENT) 113.88/79.12 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero)))))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (107) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Succ(Zero))))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (108) TransformationProof (EQUIVALENT) 113.88/79.12 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Zero, Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Zero, Succ(Succ(Zero)))))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (109) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Zero, Succ(Succ(Zero))))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (110) DependencyGraphProof (EQUIVALENT) 113.88/79.12 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (111) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (112) TransformationProof (EQUIVALENT) 113.88/79.12 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero)))))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (113) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (114) QDPOrderProof (EQUIVALENT) 113.88/79.12 We use the reduction pair processor [LPAR04,JAR06]. 113.88/79.12 113.88/79.12 113.88/79.12 The following pairs can be oriented strictly and are deleted. 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))) 113.88/79.12 The remaining pairs can at least be oriented weakly. 113.88/79.12 Used ordering: Polynomial interpretation [POLO]: 113.88/79.12 113.88/79.12 POL(Pos(x_1)) = 2*x_1 113.88/79.12 POL(Succ(x_1)) = 1 + x_1 113.88/79.12 POL(Zero) = 0 113.88/79.12 POL(new_gcd0Gcd'(x_1, x_2)) = 2*x_1 + 2*x_2 113.88/79.12 POL(new_primMinusNatS0(x_1, x_2)) = x_1 113.88/79.12 POL(new_primModNatS01(x_1, x_2, x_3, x_4)) = 2 + x_1 113.88/79.12 POL(new_primModNatS02(x_1, x_2)) = 1 + x_1 113.88/79.12 POL(new_primModNatS1(x_1, x_2)) = x_1 113.88/79.12 113.88/79.12 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (115) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (116) DependencyGraphProof (EQUIVALENT) 113.88/79.12 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (117) 113.88/79.12 TRUE 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (118) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (119) InductionCalculusProof (EQUIVALENT) 113.88/79.12 Note that final constraints are written in bold face. 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 For Pair new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) the following chains were created: 113.88/79.12 *We consider the chain new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Succ(Succ(Succ(x1)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x1))))), Pos(new_primModNatS01(Succ(Succ(x0)), Succ(Succ(x1)), x0, x1))), new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) which results in the following constraint: 113.88/79.12 113.88/79.12 (1) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x1))))), Pos(new_primModNatS01(Succ(Succ(x0)), Succ(Succ(x1)), x0, x1)))=new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3)))))) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Succ(Succ(Succ(x1))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x1))))), Pos(new_primModNatS01(Succ(Succ(x0)), Succ(Succ(x1)), x0, x1)))) 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 113.88/79.12 113.88/79.12 (2) (Succ(Succ(x0))=x4 & Succ(Succ(x1))=x5 & new_primModNatS01(x4, x5, x0, x1)=Succ(Succ(Succ(Succ(x3)))) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Succ(Succ(Succ(x1))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x1))))), Pos(new_primModNatS01(Succ(Succ(x0)), Succ(Succ(x1)), x0, x1)))) 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x4, x5, x0, x1)=Succ(Succ(Succ(Succ(x3)))) which results in the following new constraints: 113.88/79.12 113.88/79.12 (3) (new_primModNatS02(x7, x6)=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Zero))=x7 & Succ(Succ(Zero))=x6 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero)))) 113.88/79.12 113.88/79.12 (4) (new_primModNatS01(x11, x10, x9, x8)=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Succ(x9)))=x11 & Succ(Succ(Succ(x8)))=x10 & (\/x12:new_primModNatS01(x11, x10, x9, x8)=Succ(Succ(Succ(Succ(x12)))) & Succ(Succ(x9))=x11 & Succ(Succ(x8))=x10 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x9))))), Pos(Succ(Succ(Succ(Succ(x8))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x8))))), Pos(new_primModNatS01(Succ(Succ(x9)), Succ(Succ(x8)), x9, x8)))) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x9)))))), Pos(Succ(Succ(Succ(Succ(Succ(x8)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x8)))))), Pos(new_primModNatS01(Succ(Succ(Succ(x9))), Succ(Succ(Succ(x8))), Succ(x9), Succ(x8))))) 113.88/79.12 113.88/79.12 (5) (new_primModNatS02(x15, x14)=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Succ(x13)))=x15 & Succ(Succ(Zero))=x14 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x13)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(new_primModNatS01(Succ(Succ(Succ(x13))), Succ(Succ(Zero)), Succ(x13), Zero)))) 113.88/79.12 113.88/79.12 (6) (Succ(Succ(x18))=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Zero))=x18 & Succ(Succ(Succ(x16)))=x17 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x16)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x16)))))), Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x16))), Zero, Succ(x16))))) 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 We simplified constraint (3) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x7, x6)=Succ(Succ(Succ(Succ(x3)))) which results in the following new constraint: 113.88/79.12 113.88/79.12 (7) (new_primModNatS1(new_primMinusNatS0(Succ(x20), Succ(x19)), Succ(x19))=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Zero))=x20 & Succ(Succ(Zero))=x19 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero)))) 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 We simplified constraint (4) using rule (IV) which results in the following new constraint: 113.88/79.12 113.88/79.12 (8) (new_primModNatS01(x11, x10, x9, x8)=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Succ(x9)))=x11 & Succ(Succ(Succ(x8)))=x10 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x9)))))), Pos(Succ(Succ(Succ(Succ(Succ(x8)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x8)))))), Pos(new_primModNatS01(Succ(Succ(Succ(x9))), Succ(Succ(Succ(x8))), Succ(x9), Succ(x8))))) 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 We simplified constraint (5) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x15, x14)=Succ(Succ(Succ(Succ(x3)))) which results in the following new constraint: 113.88/79.12 113.88/79.12 (9) (new_primModNatS1(new_primMinusNatS0(Succ(x39), Succ(x38)), Succ(x38))=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Succ(x13)))=x39 & Succ(Succ(Zero))=x38 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x13)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(new_primModNatS01(Succ(Succ(Succ(x13))), Succ(Succ(Zero)), Succ(x13), Zero)))) 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 We simplified constraint (6) using rules (I), (II), (III), (IV) which results in the following new constraint: 113.88/79.12 113.88/79.12 (10) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x16)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x16)))))), Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x16))), Zero, Succ(x16))))) 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 We simplified constraint (7) using rules (III), (IV), (VII) which results in the following new constraint: 113.88/79.12 113.88/79.12 (11) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero)))) 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 We simplified constraint (8) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x11, x10, x9, x8)=Succ(Succ(Succ(Succ(x3)))) which results in the following new constraints: 113.88/79.12 113.88/79.12 (12) (new_primModNatS02(x26, x25)=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Succ(Zero)))=x26 & Succ(Succ(Succ(Zero)))=x25 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero))))) 113.88/79.12 113.88/79.12 (13) (new_primModNatS01(x30, x29, x28, x27)=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Succ(Succ(x28))))=x30 & Succ(Succ(Succ(Succ(x27))))=x29 & (\/x31:new_primModNatS01(x30, x29, x28, x27)=Succ(Succ(Succ(Succ(x31)))) & Succ(Succ(Succ(x28)))=x30 & Succ(Succ(Succ(x27)))=x29 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x28)))))), Pos(Succ(Succ(Succ(Succ(Succ(x27)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x27)))))), Pos(new_primModNatS01(Succ(Succ(Succ(x28))), Succ(Succ(Succ(x27))), Succ(x28), Succ(x27))))) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x28))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x27))))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x27))))))), Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x28)))), Succ(Succ(Succ(Succ(x27)))), Succ(Succ(x28)), Succ(Succ(x27)))))) 113.88/79.12 113.88/79.12 (14) (new_primModNatS02(x34, x33)=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Succ(Succ(x32))))=x34 & Succ(Succ(Succ(Zero)))=x33 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x32))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x32)))), Succ(Succ(Succ(Zero))), Succ(Succ(x32)), Succ(Zero))))) 113.88/79.12 113.88/79.12 (15) (Succ(Succ(x37))=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Succ(Zero)))=x37 & Succ(Succ(Succ(Succ(x35))))=x36 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))), Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x35)))), Succ(Zero), Succ(Succ(x35)))))) 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 We simplified constraint (12) using rules (III), (IV) which results in the following new constraint: 113.88/79.12 113.88/79.12 (16) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero))))) 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 We simplified constraint (13) using rules (III), (IV) which results in the following new constraint: 113.88/79.12 113.88/79.12 (17) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x28))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x27))))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x27))))))), Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x28)))), Succ(Succ(Succ(Succ(x27)))), Succ(Succ(x28)), Succ(Succ(x27)))))) 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 We simplified constraint (14) using rules (III), (IV) which results in the following new constraint: 113.88/79.12 113.88/79.12 (18) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x32))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x32)))), Succ(Succ(Succ(Zero))), Succ(Succ(x32)), Succ(Zero))))) 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 We simplified constraint (15) using rules (I), (II), (III), (IV) which results in the following new constraint: 113.88/79.12 113.88/79.12 (19) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))), Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x35)))), Succ(Zero), Succ(Succ(x35)))))) 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 We simplified constraint (9) using rules (III), (IV), (VII) which results in the following new constraint: 113.88/79.12 113.88/79.12 (20) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x13)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(new_primModNatS01(Succ(Succ(Succ(x13))), Succ(Succ(Zero)), Succ(x13), Zero)))) 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 To summarize, we get the following constraints P__>=_ for the following pairs. 113.88/79.12 113.88/79.12 *new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 113.88/79.12 113.88/79.12 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))), Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x35)))), Succ(Zero), Succ(Succ(x35)))))) 113.88/79.12 113.88/79.12 113.88/79.12 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x16)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x16)))))), Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x16))), Zero, Succ(x16))))) 113.88/79.12 113.88/79.12 113.88/79.12 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero)))) 113.88/79.12 113.88/79.12 113.88/79.12 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero))))) 113.88/79.12 113.88/79.12 113.88/79.12 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x28))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x27))))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x27))))))), Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x28)))), Succ(Succ(Succ(Succ(x27)))), Succ(Succ(x28)), Succ(Succ(x27)))))) 113.88/79.12 113.88/79.12 113.88/79.12 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x32))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x32)))), Succ(Succ(Succ(Zero))), Succ(Succ(x32)), Succ(Zero))))) 113.88/79.12 113.88/79.12 113.88/79.12 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x13)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Pos(new_primModNatS01(Succ(Succ(Succ(x13))), Succ(Succ(Zero)), Succ(x13), Zero)))) 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 113.88/79.12 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. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (120) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (121) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(vuz240, Neg(Succ(vuz23900))) -> new_gcd0Gcd'(Neg(Succ(vuz23900)), new_primRemInt0(vuz240, vuz23900)) 113.88/79.12 new_gcd0Gcd'(Neg(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Neg(new_primModNatS1(x0, x1))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.12 new_primRemInt0(Neg(vuz2400), vuz23900) -> Neg(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primRemInt(Pos(vuz2400), vuz23900) -> Pos(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primRemInt0(Pos(vuz2400), vuz23900) -> Pos(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.12 new_primRemInt(Neg(vuz2400), vuz23900) -> Neg(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primRemInt(Neg(x0), x1) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primRemInt0(Neg(x0), x1) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primRemInt0(Pos(x0), x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primRemInt(Pos(x0), x1) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (122) UsableRulesProof (EQUIVALENT) 113.88/79.12 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (123) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(vuz240, Neg(Succ(vuz23900))) -> new_gcd0Gcd'(Neg(Succ(vuz23900)), new_primRemInt0(vuz240, vuz23900)) 113.88/79.12 new_gcd0Gcd'(Neg(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Neg(new_primModNatS1(x0, x1))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 new_primRemInt0(Neg(vuz2400), vuz23900) -> Neg(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.12 new_primRemInt0(Pos(vuz2400), vuz23900) -> Pos(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primRemInt(Neg(x0), x1) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primRemInt0(Neg(x0), x1) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primRemInt0(Pos(x0), x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primRemInt(Pos(x0), x1) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (124) QReductionProof (EQUIVALENT) 113.88/79.12 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 113.88/79.12 113.88/79.12 new_primRemInt(Neg(x0), x1) 113.88/79.12 new_primRemInt(Pos(x0), x1) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (125) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(vuz240, Neg(Succ(vuz23900))) -> new_gcd0Gcd'(Neg(Succ(vuz23900)), new_primRemInt0(vuz240, vuz23900)) 113.88/79.12 new_gcd0Gcd'(Neg(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Neg(new_primModNatS1(x0, x1))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.12 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.12 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.12 new_primRemInt0(Neg(vuz2400), vuz23900) -> Neg(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.12 new_primRemInt0(Pos(vuz2400), vuz23900) -> Pos(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.12 113.88/79.12 The set Q consists of the following terms: 113.88/79.12 113.88/79.12 new_primModNatS1(Zero, x0) 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.12 new_primMinusNatS0(Zero, Zero) 113.88/79.12 new_primModNatS02(x0, x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.12 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.12 new_primRemInt0(Neg(x0), x1) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.12 new_primRemInt0(Pos(x0), x1) 113.88/79.12 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.12 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.12 113.88/79.12 We have to consider all minimal (P,Q,R)-chains. 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (126) TransformationProof (EQUIVALENT) 113.88/79.12 By narrowing [LPAR04] the rule new_gcd0Gcd'(vuz240, Neg(Succ(vuz23900))) -> new_gcd0Gcd'(Neg(Succ(vuz23900)), new_primRemInt0(vuz240, vuz23900)) at position [1] we obtained the following new rules [LPAR04]: 113.88/79.12 113.88/79.12 (new_gcd0Gcd'(Neg(x0), Neg(Succ(x1))) -> new_gcd0Gcd'(Neg(Succ(x1)), Neg(new_primModNatS1(x0, x1))),new_gcd0Gcd'(Neg(x0), Neg(Succ(x1))) -> new_gcd0Gcd'(Neg(Succ(x1)), Neg(new_primModNatS1(x0, x1)))) 113.88/79.12 (new_gcd0Gcd'(Pos(x0), Neg(Succ(x1))) -> new_gcd0Gcd'(Neg(Succ(x1)), Pos(new_primModNatS1(x0, x1))),new_gcd0Gcd'(Pos(x0), Neg(Succ(x1))) -> new_gcd0Gcd'(Neg(Succ(x1)), Pos(new_primModNatS1(x0, x1)))) 113.88/79.12 113.88/79.12 113.88/79.12 ---------------------------------------- 113.88/79.12 113.88/79.12 (127) 113.88/79.12 Obligation: 113.88/79.12 Q DP problem: 113.88/79.12 The TRS P consists of the following rules: 113.88/79.12 113.88/79.12 new_gcd0Gcd'(Neg(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Neg(new_primModNatS1(x0, x1))) 113.88/79.12 new_gcd0Gcd'(Neg(x0), Neg(Succ(x1))) -> new_gcd0Gcd'(Neg(Succ(x1)), Neg(new_primModNatS1(x0, x1))) 113.88/79.12 new_gcd0Gcd'(Pos(x0), Neg(Succ(x1))) -> new_gcd0Gcd'(Neg(Succ(x1)), Pos(new_primModNatS1(x0, x1))) 113.88/79.12 113.88/79.12 The TRS R consists of the following rules: 113.88/79.12 113.88/79.12 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.12 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.12 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.12 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.12 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.13 new_primRemInt0(Neg(vuz2400), vuz23900) -> Neg(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.13 new_primRemInt0(Pos(vuz2400), vuz23900) -> Pos(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.13 113.88/79.13 The set Q consists of the following terms: 113.88/79.13 113.88/79.13 new_primModNatS1(Zero, x0) 113.88/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.13 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.13 new_primMinusNatS0(Zero, Zero) 113.88/79.13 new_primModNatS02(x0, x1) 113.88/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.13 new_primRemInt0(Neg(x0), x1) 113.88/79.13 new_primModNatS1(Succ(Zero), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.13 new_primRemInt0(Pos(x0), x1) 113.88/79.13 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.13 113.88/79.13 We have to consider all minimal (P,Q,R)-chains. 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (128) DependencyGraphProof (EQUIVALENT) 113.88/79.13 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (129) 113.88/79.13 Complex Obligation (AND) 113.88/79.13 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (130) 113.88/79.13 Obligation: 113.88/79.13 Q DP problem: 113.88/79.13 The TRS P consists of the following rules: 113.88/79.13 113.88/79.13 new_gcd0Gcd'(Neg(x0), Neg(Succ(x1))) -> new_gcd0Gcd'(Neg(Succ(x1)), Neg(new_primModNatS1(x0, x1))) 113.88/79.13 113.88/79.13 The TRS R consists of the following rules: 113.88/79.13 113.88/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.13 new_primRemInt0(Neg(vuz2400), vuz23900) -> Neg(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.13 new_primRemInt0(Pos(vuz2400), vuz23900) -> Pos(new_primModNatS1(vuz2400, vuz23900)) 113.88/79.13 113.88/79.13 The set Q consists of the following terms: 113.88/79.13 113.88/79.13 new_primModNatS1(Zero, x0) 113.88/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.13 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.13 new_primMinusNatS0(Zero, Zero) 113.88/79.13 new_primModNatS02(x0, x1) 113.88/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.13 new_primRemInt0(Neg(x0), x1) 113.88/79.13 new_primModNatS1(Succ(Zero), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.13 new_primRemInt0(Pos(x0), x1) 113.88/79.13 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.13 113.88/79.13 We have to consider all minimal (P,Q,R)-chains. 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (131) UsableRulesProof (EQUIVALENT) 113.88/79.13 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (132) 113.88/79.13 Obligation: 113.88/79.13 Q DP problem: 113.88/79.13 The TRS P consists of the following rules: 113.88/79.13 113.88/79.13 new_gcd0Gcd'(Neg(x0), Neg(Succ(x1))) -> new_gcd0Gcd'(Neg(Succ(x1)), Neg(new_primModNatS1(x0, x1))) 113.88/79.13 113.88/79.13 The TRS R consists of the following rules: 113.88/79.13 113.88/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.13 113.88/79.13 The set Q consists of the following terms: 113.88/79.13 113.88/79.13 new_primModNatS1(Zero, x0) 113.88/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.13 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.13 new_primMinusNatS0(Zero, Zero) 113.88/79.13 new_primModNatS02(x0, x1) 113.88/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.13 new_primRemInt0(Neg(x0), x1) 113.88/79.13 new_primModNatS1(Succ(Zero), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.13 new_primRemInt0(Pos(x0), x1) 113.88/79.13 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.13 113.88/79.13 We have to consider all minimal (P,Q,R)-chains. 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (133) QReductionProof (EQUIVALENT) 113.88/79.13 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 113.88/79.13 113.88/79.13 new_primRemInt0(Neg(x0), x1) 113.88/79.13 new_primRemInt0(Pos(x0), x1) 113.88/79.13 113.88/79.13 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (134) 113.88/79.13 Obligation: 113.88/79.13 Q DP problem: 113.88/79.13 The TRS P consists of the following rules: 113.88/79.13 113.88/79.13 new_gcd0Gcd'(Neg(x0), Neg(Succ(x1))) -> new_gcd0Gcd'(Neg(Succ(x1)), Neg(new_primModNatS1(x0, x1))) 113.88/79.13 113.88/79.13 The TRS R consists of the following rules: 113.88/79.13 113.88/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.13 113.88/79.13 The set Q consists of the following terms: 113.88/79.13 113.88/79.13 new_primModNatS1(Zero, x0) 113.88/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.13 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.13 new_primMinusNatS0(Zero, Zero) 113.88/79.13 new_primModNatS02(x0, x1) 113.88/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.13 new_primModNatS1(Succ(Zero), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.13 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.13 113.88/79.13 We have to consider all minimal (P,Q,R)-chains. 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (135) TransformationProof (EQUIVALENT) 113.88/79.13 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(x0), Neg(Succ(x1))) -> new_gcd0Gcd'(Neg(Succ(x1)), Neg(new_primModNatS1(x0, x1))) at position [1,0] we obtained the following new rules [LPAR04]: 113.88/79.13 113.88/79.13 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero)))) 113.88/79.13 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero)))) 113.88/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero)))) 113.88/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Succ(x1)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))),new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Succ(x1)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1)))) 113.88/79.13 (new_gcd0Gcd'(Neg(Zero), Neg(Succ(x0))) -> new_gcd0Gcd'(Neg(Succ(x0)), Neg(Zero)),new_gcd0Gcd'(Neg(Zero), Neg(Succ(x0))) -> new_gcd0Gcd'(Neg(Succ(x0)), Neg(Zero))) 113.88/79.13 113.88/79.13 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (136) 113.88/79.13 Obligation: 113.88/79.13 Q DP problem: 113.88/79.13 The TRS P consists of the following rules: 113.88/79.13 113.88/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 113.88/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 113.88/79.13 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 113.88/79.13 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Succ(x1)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 113.88/79.13 new_gcd0Gcd'(Neg(Zero), Neg(Succ(x0))) -> new_gcd0Gcd'(Neg(Succ(x0)), Neg(Zero)) 113.88/79.13 113.88/79.13 The TRS R consists of the following rules: 113.88/79.13 113.88/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.13 113.88/79.13 The set Q consists of the following terms: 113.88/79.13 113.88/79.13 new_primModNatS1(Zero, x0) 113.88/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.13 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.13 new_primMinusNatS0(Zero, Zero) 113.88/79.13 new_primModNatS02(x0, x1) 113.88/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.13 new_primModNatS1(Succ(Zero), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.13 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.13 113.88/79.13 We have to consider all minimal (P,Q,R)-chains. 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (137) DependencyGraphProof (EQUIVALENT) 113.88/79.13 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 1 less node. 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (138) 113.88/79.13 Complex Obligation (AND) 113.88/79.13 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (139) 113.88/79.13 Obligation: 113.88/79.13 Q DP problem: 113.88/79.13 The TRS P consists of the following rules: 113.88/79.13 113.88/79.13 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 113.88/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 113.88/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 113.88/79.13 113.88/79.13 The TRS R consists of the following rules: 113.88/79.13 113.88/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 113.88/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 113.88/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 113.88/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 113.88/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 113.88/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 113.88/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.13 113.88/79.13 The set Q consists of the following terms: 113.88/79.13 113.88/79.13 new_primModNatS1(Zero, x0) 113.88/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.13 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.13 new_primMinusNatS0(Zero, Zero) 113.88/79.13 new_primModNatS02(x0, x1) 113.88/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.13 new_primModNatS1(Succ(Zero), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.13 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.13 113.88/79.13 We have to consider all minimal (P,Q,R)-chains. 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (140) UsableRulesProof (EQUIVALENT) 113.88/79.13 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (141) 113.88/79.13 Obligation: 113.88/79.13 Q DP problem: 113.88/79.13 The TRS P consists of the following rules: 113.88/79.13 113.88/79.13 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 113.88/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 113.88/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 113.88/79.13 113.88/79.13 The TRS R consists of the following rules: 113.88/79.13 113.88/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.13 113.88/79.13 The set Q consists of the following terms: 113.88/79.13 113.88/79.13 new_primModNatS1(Zero, x0) 113.88/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.13 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.13 new_primMinusNatS0(Zero, Zero) 113.88/79.13 new_primModNatS02(x0, x1) 113.88/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.13 new_primModNatS1(Succ(Zero), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.13 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.13 113.88/79.13 We have to consider all minimal (P,Q,R)-chains. 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (142) QReductionProof (EQUIVALENT) 113.88/79.13 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 113.88/79.13 113.88/79.13 new_primModNatS02(x0, x1) 113.88/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 113.88/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 113.88/79.13 new_primModNatS01(x0, x1, Zero, Zero) 113.88/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 113.88/79.13 113.88/79.13 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (143) 113.88/79.13 Obligation: 113.88/79.13 Q DP problem: 113.88/79.13 The TRS P consists of the following rules: 113.88/79.13 113.88/79.13 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 113.88/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 113.88/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 113.88/79.13 113.88/79.13 The TRS R consists of the following rules: 113.88/79.13 113.88/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 113.88/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 113.88/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 113.88/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 113.88/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 113.88/79.13 113.88/79.13 The set Q consists of the following terms: 113.88/79.13 113.88/79.13 new_primModNatS1(Zero, x0) 113.88/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 113.88/79.13 new_primMinusNatS0(Zero, Succ(x0)) 113.88/79.13 new_primMinusNatS0(Zero, Zero) 113.88/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 113.88/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 113.88/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 113.88/79.13 new_primModNatS1(Succ(Zero), Zero) 113.88/79.13 new_primMinusNatS0(Succ(x0), Zero) 113.88/79.13 113.88/79.13 We have to consider all minimal (P,Q,R)-chains. 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (144) TransformationProof (EQUIVALENT) 113.88/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 113.88/79.13 113.88/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero)))) 113.88/79.13 113.88/79.13 113.88/79.13 ---------------------------------------- 113.88/79.13 113.88/79.13 (145) 113.88/79.13 Obligation: 113.88/79.13 Q DP problem: 113.88/79.13 The TRS P consists of the following rules: 113.88/79.13 113.88/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 113.88/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 113.88/79.13 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (146) TransformationProof (EQUIVALENT) 114.04/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Zero, Zero))),new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Zero, Zero)))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (147) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Zero, Zero))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (148) DependencyGraphProof (EQUIVALENT) 114.04/79.13 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (149) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (150) TransformationProof (EQUIVALENT) 114.04/79.13 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero)))) 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero)))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (151) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (152) TransformationProof (EQUIVALENT) 114.04/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero)))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (153) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (154) TransformationProof (EQUIVALENT) 114.04/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Zero, Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Zero, Zero)))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (155) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Zero, Zero))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (156) DependencyGraphProof (EQUIVALENT) 114.04/79.13 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (157) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (158) TransformationProof (EQUIVALENT) 114.04/79.13 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero)))) 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero)))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (159) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (160) TransformationProof (EQUIVALENT) 114.04/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero)))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (161) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (162) TransformationProof (EQUIVALENT) 114.04/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Zero, Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Zero, Zero)))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (163) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Zero, Zero))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (164) DependencyGraphProof (EQUIVALENT) 114.04/79.13 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (165) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (166) MRRProof (EQUIVALENT) 114.04/79.13 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. 114.04/79.13 114.04/79.13 Strictly oriented dependency pairs: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) 114.04/79.13 114.04/79.13 Strictly oriented rules of the TRS R: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 Used ordering: Polynomial interpretation [POLO]: 114.04/79.13 114.04/79.13 POL(Neg(x_1)) = x_1 114.04/79.13 POL(Succ(x_1)) = 1 + 2*x_1 114.04/79.13 POL(Zero) = 0 114.04/79.13 POL(new_gcd0Gcd'(x_1, x_2)) = 2*x_1 + 2*x_2 114.04/79.13 POL(new_primMinusNatS0(x_1, x_2)) = 2*x_1 + 2*x_2 114.04/79.13 POL(new_primModNatS1(x_1, x_2)) = 2*x_1 + 2*x_2 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (167) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (168) DependencyGraphProof (EQUIVALENT) 114.04/79.13 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (169) 114.04/79.13 TRUE 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (170) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Succ(x1)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (171) UsableRulesProof (EQUIVALENT) 114.04/79.13 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (172) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Succ(x1)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (173) TransformationProof (EQUIVALENT) 114.04/79.13 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(x0))), Neg(Succ(Succ(x1)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS02(Zero, Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS02(Zero, Zero)))) 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3)))) 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS02(Succ(x2), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS02(Succ(x2), Zero)))) 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero))))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (174) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS02(Zero, Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS02(Succ(x2), Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (175) DependencyGraphProof (EQUIVALENT) 114.04/79.13 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (176) 114.04/79.13 Complex Obligation (AND) 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (177) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS02(Zero, Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS02(Succ(x2), Zero))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (178) TransformationProof (EQUIVALENT) 114.04/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS02(Zero, Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Zero))))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (179) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS02(Succ(x2), Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Zero)))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (180) TransformationProof (EQUIVALENT) 114.04/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS02(Succ(x2), Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero))))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (181) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Zero)))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (182) TransformationProof (EQUIVALENT) 114.04/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Zero))))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (183) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Zero)))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (184) TransformationProof (EQUIVALENT) 114.04/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero))))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (185) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Zero)))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (186) TransformationProof (EQUIVALENT) 114.04/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(Zero, Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(Zero, Succ(Zero))))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (187) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(Zero, Succ(Zero)))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (188) DependencyGraphProof (EQUIVALENT) 114.04/79.13 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (189) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (190) TransformationProof (EQUIVALENT) 114.04/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(Succ(x2), Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(Succ(x2), Succ(Zero))))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (191) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(Succ(x2), Succ(Zero)))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (192) TransformationProof (EQUIVALENT) 114.04/79.13 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS1(Succ(x2), Succ(Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS01(x0, Zero, x0, Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS01(x0, Zero, x0, Zero)))) 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Zero)))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (193) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS01(x0, Zero, x0, Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Zero))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (194) DependencyGraphProof (EQUIVALENT) 114.04/79.13 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (195) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS01(x0, Zero, x0, Zero))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (196) QDPOrderProof (EQUIVALENT) 114.04/79.13 We use the reduction pair processor [LPAR04,JAR06]. 114.04/79.13 114.04/79.13 114.04/79.13 The following pairs can be oriented strictly and are deleted. 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(new_primModNatS01(x0, Zero, x0, Zero))) 114.04/79.13 The remaining pairs can at least be oriented weakly. 114.04/79.13 Used ordering: Polynomial interpretation [POLO]: 114.04/79.13 114.04/79.13 POL(Neg(x_1)) = 2*x_1 114.04/79.13 POL(Succ(x_1)) = 1 + x_1 114.04/79.13 POL(Zero) = 0 114.04/79.13 POL(new_gcd0Gcd'(x_1, x_2)) = 2*x_1 + 2*x_2 114.04/79.13 POL(new_primMinusNatS0(x_1, x_2)) = x_1 114.04/79.13 POL(new_primModNatS01(x_1, x_2, x_3, x_4)) = 3 + x_1 114.04/79.13 POL(new_primModNatS02(x_1, x_2)) = 3 + x_1 114.04/79.13 POL(new_primModNatS1(x_1, x_2)) = 2 + x_1 114.04/79.13 114.04/79.13 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (197) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (198) DependencyGraphProof (EQUIVALENT) 114.04/79.13 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (199) 114.04/79.13 TRUE 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (200) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (201) TransformationProof (EQUIVALENT) 114.04/79.13 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Zero), Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Zero), Succ(Zero))))) 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3)))) 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero))))) 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero)))))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (202) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Zero), Succ(Zero)))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (203) DependencyGraphProof (EQUIVALENT) 114.04/79.13 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (204) 114.04/79.13 Complex Obligation (AND) 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (205) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Zero), Succ(Zero)))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (206) TransformationProof (EQUIVALENT) 114.04/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Zero), Succ(Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero)))))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (207) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (208) TransformationProof (EQUIVALENT) 114.04/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero)))))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (209) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (210) TransformationProof (EQUIVALENT) 114.04/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Succ(Zero)))))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (211) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (212) TransformationProof (EQUIVALENT) 114.04/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero)))))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (213) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (214) TransformationProof (EQUIVALENT) 114.04/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.13 114.04/79.13 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Succ(Zero)))))) 114.04/79.13 114.04/79.13 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (215) 114.04/79.13 Obligation: 114.04/79.13 Q DP problem: 114.04/79.13 The TRS P consists of the following rules: 114.04/79.13 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))) 114.04/79.13 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Succ(Zero))))) 114.04/79.13 114.04/79.13 The TRS R consists of the following rules: 114.04/79.13 114.04/79.13 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.13 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.13 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.13 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.13 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.13 114.04/79.13 The set Q consists of the following terms: 114.04/79.13 114.04/79.13 new_primModNatS1(Zero, x0) 114.04/79.13 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.13 new_primMinusNatS0(Zero, Zero) 114.04/79.13 new_primModNatS02(x0, x1) 114.04/79.13 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.13 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.13 new_primModNatS1(Succ(Zero), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.13 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.13 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.13 114.04/79.13 We have to consider all minimal (P,Q,R)-chains. 114.04/79.13 ---------------------------------------- 114.04/79.13 114.04/79.13 (216) TransformationProof (EQUIVALENT) 114.04/79.13 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero)))))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (217) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Succ(Zero))))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (218) TransformationProof (EQUIVALENT) 114.04/79.14 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(Zero, Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(Zero, Succ(Succ(Zero)))))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (219) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(Zero, Succ(Succ(Zero))))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (220) DependencyGraphProof (EQUIVALENT) 114.04/79.14 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (221) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (222) TransformationProof (EQUIVALENT) 114.04/79.14 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero)))))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (223) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (224) QDPOrderProof (EQUIVALENT) 114.04/79.14 We use the reduction pair processor [LPAR04,JAR06]. 114.04/79.14 114.04/79.14 114.04/79.14 The following pairs can be oriented strictly and are deleted. 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))) 114.04/79.14 The remaining pairs can at least be oriented weakly. 114.04/79.14 Used ordering: Polynomial interpretation [POLO]: 114.04/79.14 114.04/79.14 POL(Neg(x_1)) = 2*x_1 114.04/79.14 POL(Succ(x_1)) = 1 + x_1 114.04/79.14 POL(Zero) = 0 114.04/79.14 POL(new_gcd0Gcd'(x_1, x_2)) = 2*x_1 + 2*x_2 114.04/79.14 POL(new_primMinusNatS0(x_1, x_2)) = x_1 114.04/79.14 POL(new_primModNatS01(x_1, x_2, x_3, x_4)) = 2 + x_1 114.04/79.14 POL(new_primModNatS02(x_1, x_2)) = 1 + x_1 114.04/79.14 POL(new_primModNatS1(x_1, x_2)) = x_1 114.04/79.14 114.04/79.14 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (225) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (226) DependencyGraphProof (EQUIVALENT) 114.04/79.14 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (227) 114.04/79.14 TRUE 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (228) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (229) InductionCalculusProof (EQUIVALENT) 114.04/79.14 Note that final constraints are written in bold face. 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 For Pair new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) the following chains were created: 114.04/79.14 *We consider the chain new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Succ(Succ(Succ(x1)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x1))))), Neg(new_primModNatS01(Succ(Succ(x0)), Succ(Succ(x1)), x0, x1))), new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) which results in the following constraint: 114.04/79.14 114.04/79.14 (1) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x1))))), Neg(new_primModNatS01(Succ(Succ(x0)), Succ(Succ(x1)), x0, x1)))=new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Succ(Succ(Succ(x1))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x1))))), Neg(new_primModNatS01(Succ(Succ(x0)), Succ(Succ(x1)), x0, x1)))) 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 114.04/79.14 114.04/79.14 (2) (Succ(Succ(x0))=x4 & Succ(Succ(x1))=x5 & new_primModNatS01(x4, x5, x0, x1)=Succ(Succ(Succ(Succ(x3)))) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Succ(Succ(Succ(x1))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x1))))), Neg(new_primModNatS01(Succ(Succ(x0)), Succ(Succ(x1)), x0, x1)))) 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x4, x5, x0, x1)=Succ(Succ(Succ(Succ(x3)))) which results in the following new constraints: 114.04/79.14 114.04/79.14 (3) (new_primModNatS02(x7, x6)=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Zero))=x7 & Succ(Succ(Zero))=x6 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero)))) 114.04/79.14 114.04/79.14 (4) (new_primModNatS01(x11, x10, x9, x8)=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Succ(x9)))=x11 & Succ(Succ(Succ(x8)))=x10 & (\/x12:new_primModNatS01(x11, x10, x9, x8)=Succ(Succ(Succ(Succ(x12)))) & Succ(Succ(x9))=x11 & Succ(Succ(x8))=x10 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x9))))), Neg(Succ(Succ(Succ(Succ(x8))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x8))))), Neg(new_primModNatS01(Succ(Succ(x9)), Succ(Succ(x8)), x9, x8)))) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x9)))))), Neg(Succ(Succ(Succ(Succ(Succ(x8)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x8)))))), Neg(new_primModNatS01(Succ(Succ(Succ(x9))), Succ(Succ(Succ(x8))), Succ(x9), Succ(x8))))) 114.04/79.14 114.04/79.14 (5) (new_primModNatS02(x15, x14)=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Succ(x13)))=x15 & Succ(Succ(Zero))=x14 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x13)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(new_primModNatS01(Succ(Succ(Succ(x13))), Succ(Succ(Zero)), Succ(x13), Zero)))) 114.04/79.14 114.04/79.14 (6) (Succ(Succ(x18))=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Zero))=x18 & Succ(Succ(Succ(x16)))=x17 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x16)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x16)))))), Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x16))), Zero, Succ(x16))))) 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 We simplified constraint (3) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x7, x6)=Succ(Succ(Succ(Succ(x3)))) which results in the following new constraint: 114.04/79.14 114.04/79.14 (7) (new_primModNatS1(new_primMinusNatS0(Succ(x20), Succ(x19)), Succ(x19))=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Zero))=x20 & Succ(Succ(Zero))=x19 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 We simplified constraint (4) using rule (IV) which results in the following new constraint: 114.04/79.14 114.04/79.14 (8) (new_primModNatS01(x11, x10, x9, x8)=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Succ(x9)))=x11 & Succ(Succ(Succ(x8)))=x10 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x9)))))), Neg(Succ(Succ(Succ(Succ(Succ(x8)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x8)))))), Neg(new_primModNatS01(Succ(Succ(Succ(x9))), Succ(Succ(Succ(x8))), Succ(x9), Succ(x8))))) 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 We simplified constraint (5) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x15, x14)=Succ(Succ(Succ(Succ(x3)))) which results in the following new constraint: 114.04/79.14 114.04/79.14 (9) (new_primModNatS1(new_primMinusNatS0(Succ(x39), Succ(x38)), Succ(x38))=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Succ(x13)))=x39 & Succ(Succ(Zero))=x38 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x13)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(new_primModNatS01(Succ(Succ(Succ(x13))), Succ(Succ(Zero)), Succ(x13), Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 We simplified constraint (6) using rules (I), (II), (III), (IV) which results in the following new constraint: 114.04/79.14 114.04/79.14 (10) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x16)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x16)))))), Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x16))), Zero, Succ(x16))))) 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 We simplified constraint (7) using rules (III), (IV), (VII) which results in the following new constraint: 114.04/79.14 114.04/79.14 (11) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 We simplified constraint (8) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x11, x10, x9, x8)=Succ(Succ(Succ(Succ(x3)))) which results in the following new constraints: 114.04/79.14 114.04/79.14 (12) (new_primModNatS02(x26, x25)=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Succ(Zero)))=x26 & Succ(Succ(Succ(Zero)))=x25 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero))))) 114.04/79.14 114.04/79.14 (13) (new_primModNatS01(x30, x29, x28, x27)=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Succ(Succ(x28))))=x30 & Succ(Succ(Succ(Succ(x27))))=x29 & (\/x31:new_primModNatS01(x30, x29, x28, x27)=Succ(Succ(Succ(Succ(x31)))) & Succ(Succ(Succ(x28)))=x30 & Succ(Succ(Succ(x27)))=x29 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x28)))))), Neg(Succ(Succ(Succ(Succ(Succ(x27)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x27)))))), Neg(new_primModNatS01(Succ(Succ(Succ(x28))), Succ(Succ(Succ(x27))), Succ(x28), Succ(x27))))) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x28))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x27))))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x27))))))), Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x28)))), Succ(Succ(Succ(Succ(x27)))), Succ(Succ(x28)), Succ(Succ(x27)))))) 114.04/79.14 114.04/79.14 (14) (new_primModNatS02(x34, x33)=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Succ(Succ(x32))))=x34 & Succ(Succ(Succ(Zero)))=x33 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x32))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x32)))), Succ(Succ(Succ(Zero))), Succ(Succ(x32)), Succ(Zero))))) 114.04/79.14 114.04/79.14 (15) (Succ(Succ(x37))=Succ(Succ(Succ(Succ(x3)))) & Succ(Succ(Succ(Zero)))=x37 & Succ(Succ(Succ(Succ(x35))))=x36 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))), Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x35)))), Succ(Zero), Succ(Succ(x35)))))) 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 We simplified constraint (12) using rules (III), (IV) which results in the following new constraint: 114.04/79.14 114.04/79.14 (16) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero))))) 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 We simplified constraint (13) using rules (III), (IV) which results in the following new constraint: 114.04/79.14 114.04/79.14 (17) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x28))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x27))))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x27))))))), Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x28)))), Succ(Succ(Succ(Succ(x27)))), Succ(Succ(x28)), Succ(Succ(x27)))))) 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 We simplified constraint (14) using rules (III), (IV) which results in the following new constraint: 114.04/79.14 114.04/79.14 (18) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x32))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x32)))), Succ(Succ(Succ(Zero))), Succ(Succ(x32)), Succ(Zero))))) 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 We simplified constraint (15) using rules (I), (II), (III), (IV) which results in the following new constraint: 114.04/79.14 114.04/79.14 (19) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))), Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x35)))), Succ(Zero), Succ(Succ(x35)))))) 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 We simplified constraint (9) using rules (III), (IV), (VII) which results in the following new constraint: 114.04/79.14 114.04/79.14 (20) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x13)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(new_primModNatS01(Succ(Succ(Succ(x13))), Succ(Succ(Zero)), Succ(x13), Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 To summarize, we get the following constraints P__>=_ for the following pairs. 114.04/79.14 114.04/79.14 *new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.04/79.14 114.04/79.14 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))), Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x35)))), Succ(Zero), Succ(Succ(x35)))))) 114.04/79.14 114.04/79.14 114.04/79.14 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x16)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x16)))))), Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x16))), Zero, Succ(x16))))) 114.04/79.14 114.04/79.14 114.04/79.14 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero))))) 114.04/79.14 114.04/79.14 114.04/79.14 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x28))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x27))))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x27))))))), Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x28)))), Succ(Succ(Succ(Succ(x27)))), Succ(Succ(x28)), Succ(Succ(x27)))))) 114.04/79.14 114.04/79.14 114.04/79.14 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x32))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x32)))), Succ(Succ(Succ(Zero))), Succ(Succ(x32)), Succ(Zero))))) 114.04/79.14 114.04/79.14 114.04/79.14 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x13)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Neg(new_primModNatS01(Succ(Succ(Succ(x13))), Succ(Succ(Zero)), Succ(x13), Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 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. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (230) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (231) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Pos(x0), Neg(Succ(x1))) -> new_gcd0Gcd'(Neg(Succ(x1)), Pos(new_primModNatS1(x0, x1))) 114.04/79.14 new_gcd0Gcd'(Neg(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Neg(new_primModNatS1(x0, x1))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primRemInt0(Neg(vuz2400), vuz23900) -> Neg(new_primModNatS1(vuz2400, vuz23900)) 114.04/79.14 new_primRemInt0(Pos(vuz2400), vuz23900) -> Pos(new_primModNatS1(vuz2400, vuz23900)) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primRemInt0(Neg(x0), x1) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primRemInt0(Pos(x0), x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (232) UsableRulesProof (EQUIVALENT) 114.04/79.14 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (233) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Pos(x0), Neg(Succ(x1))) -> new_gcd0Gcd'(Neg(Succ(x1)), Pos(new_primModNatS1(x0, x1))) 114.04/79.14 new_gcd0Gcd'(Neg(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Neg(new_primModNatS1(x0, x1))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primRemInt0(Neg(x0), x1) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primRemInt0(Pos(x0), x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (234) QReductionProof (EQUIVALENT) 114.04/79.14 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 114.04/79.14 114.04/79.14 new_primRemInt0(Neg(x0), x1) 114.04/79.14 new_primRemInt0(Pos(x0), x1) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (235) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Pos(x0), Neg(Succ(x1))) -> new_gcd0Gcd'(Neg(Succ(x1)), Pos(new_primModNatS1(x0, x1))) 114.04/79.14 new_gcd0Gcd'(Neg(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Neg(new_primModNatS1(x0, x1))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (236) TransformationProof (EQUIVALENT) 114.04/79.14 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(x0), Neg(Succ(x1))) -> new_gcd0Gcd'(Neg(Succ(x1)), Pos(new_primModNatS1(x0, x1))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero)))) 114.04/79.14 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero)))) 114.04/79.14 (new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero)))) 114.04/79.14 (new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Succ(x1)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(new_primModNatS01(x0, x1, x0, x1))),new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Succ(x1)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(new_primModNatS01(x0, x1, x0, x1)))) 114.04/79.14 (new_gcd0Gcd'(Pos(Zero), Neg(Succ(x0))) -> new_gcd0Gcd'(Neg(Succ(x0)), Pos(Zero)),new_gcd0Gcd'(Pos(Zero), Neg(Succ(x0))) -> new_gcd0Gcd'(Neg(Succ(x0)), Pos(Zero))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (237) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Neg(new_primModNatS1(x0, x1))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Succ(x1)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.14 new_gcd0Gcd'(Pos(Zero), Neg(Succ(x0))) -> new_gcd0Gcd'(Neg(Succ(x0)), Pos(Zero)) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (238) DependencyGraphProof (EQUIVALENT) 114.04/79.14 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (239) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Neg(new_primModNatS1(x0, x1))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Succ(x1)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (240) TransformationProof (EQUIVALENT) 114.04/79.14 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero))),new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (241) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Neg(new_primModNatS1(x0, x1))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Succ(x1)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (242) DependencyGraphProof (EQUIVALENT) 114.04/79.14 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (243) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Neg(new_primModNatS1(x0, x1))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Succ(x1)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (244) TransformationProof (EQUIVALENT) 114.04/79.14 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (245) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Neg(new_primModNatS1(x0, x1))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Succ(x1)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (246) TransformationProof (EQUIVALENT) 114.04/79.14 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(x0), Pos(Succ(x1))) -> new_gcd0Gcd'(Pos(Succ(x1)), Neg(new_primModNatS1(x0, x1))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))),new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero)))) 114.04/79.14 (new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))),new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero)))) 114.04/79.14 (new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero)))) 114.04/79.14 (new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))),new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1)))) 114.04/79.14 (new_gcd0Gcd'(Neg(Zero), Pos(Succ(x0))) -> new_gcd0Gcd'(Pos(Succ(x0)), Neg(Zero)),new_gcd0Gcd'(Neg(Zero), Pos(Succ(x0))) -> new_gcd0Gcd'(Pos(Succ(x0)), Neg(Zero))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (247) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Succ(x1)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.14 new_gcd0Gcd'(Neg(Zero), Pos(Succ(x0))) -> new_gcd0Gcd'(Pos(Succ(x0)), Neg(Zero)) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (248) DependencyGraphProof (EQUIVALENT) 114.04/79.14 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 3 SCCs with 2 less nodes. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (249) 114.04/79.14 Complex Obligation (AND) 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (250) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (251) UsableRulesProof (EQUIVALENT) 114.04/79.14 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (252) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (253) QReductionProof (EQUIVALENT) 114.04/79.14 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 114.04/79.14 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (254) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (255) TransformationProof (EQUIVALENT) 114.04/79.14 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (256) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (257) TransformationProof (EQUIVALENT) 114.04/79.14 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero)))) 114.04/79.14 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (258) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (259) TransformationProof (EQUIVALENT) 114.04/79.14 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (260) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (261) TransformationProof (EQUIVALENT) 114.04/79.14 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Zero, Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Zero, Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (262) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Zero, Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (263) DependencyGraphProof (EQUIVALENT) 114.04/79.14 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (264) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (265) TransformationProof (EQUIVALENT) 114.04/79.14 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x0)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero)))) 114.04/79.14 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (266) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (267) TransformationProof (EQUIVALENT) 114.04/79.14 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (268) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (269) TransformationProof (EQUIVALENT) 114.04/79.14 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Zero, Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Zero, Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (270) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Zero, Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (271) DependencyGraphProof (EQUIVALENT) 114.04/79.14 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (272) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (273) QDPSizeChangeProof (EQUIVALENT) 114.04/79.14 We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. 114.04/79.14 114.04/79.14 Order:Polynomial interpretation [POLO]: 114.04/79.14 114.04/79.14 POL(Neg(x_1)) = x_1 114.04/79.14 POL(Pos(x_1)) = 1 114.04/79.14 POL(Succ(x_1)) = 1 + x_1 114.04/79.14 POL(Zero) = 1 114.04/79.14 POL(new_primMinusNatS0(x_1, x_2)) = x_1 114.04/79.14 POL(new_primModNatS1(x_1, x_2)) = x_1 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 From the DPs we obtained the following set of size-change graphs: 114.04/79.14 *new_gcd0Gcd'(Pos(Succ(Zero)), Neg(Succ(Succ(x0)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Zero))) (allowed arguments on rhs = {1, 2}) 114.04/79.14 The graph contains the following edges 2 >= 1, 1 >= 2 114.04/79.14 114.04/79.14 114.04/79.14 *new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Zero))) -> new_gcd0Gcd'(Pos(Succ(Zero)), Neg(new_primModNatS1(Succ(x0), Zero))) (allowed arguments on rhs = {1, 2}) 114.04/79.14 The graph contains the following edges 2 >= 1, 1 > 2 114.04/79.14 114.04/79.14 114.04/79.14 114.04/79.14 We oriented the following set of usable rules [AAECC05,FROCOS05]. 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (274) 114.04/79.14 YES 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (275) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.14 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.14 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (276) UsableRulesProof (EQUIVALENT) 114.04/79.14 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (277) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (278) QReductionProof (EQUIVALENT) 114.04/79.14 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 114.04/79.14 114.04/79.14 new_primModNatS02(x0, x1) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.14 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.14 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (279) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (280) TransformationProof (EQUIVALENT) 114.04/79.14 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero)))) 114.04/79.14 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (281) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (282) TransformationProof (EQUIVALENT) 114.04/79.14 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (283) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (284) TransformationProof (EQUIVALENT) 114.04/79.14 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (285) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (286) DependencyGraphProof (EQUIVALENT) 114.04/79.14 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (287) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (288) TransformationProof (EQUIVALENT) 114.04/79.14 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x0)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero)))) 114.04/79.14 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (289) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (290) TransformationProof (EQUIVALENT) 114.04/79.14 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x0), Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (291) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (292) TransformationProof (EQUIVALENT) 114.04/79.14 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.14 114.04/79.14 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero)))) 114.04/79.14 114.04/79.14 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (293) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Zero, Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (294) DependencyGraphProof (EQUIVALENT) 114.04/79.14 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (295) 114.04/79.14 Obligation: 114.04/79.14 Q DP problem: 114.04/79.14 The TRS P consists of the following rules: 114.04/79.14 114.04/79.14 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) 114.04/79.14 new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) 114.04/79.14 114.04/79.14 The TRS R consists of the following rules: 114.04/79.14 114.04/79.14 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.14 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.14 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.14 114.04/79.14 The set Q consists of the following terms: 114.04/79.14 114.04/79.14 new_primModNatS1(Zero, x0) 114.04/79.14 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.14 new_primMinusNatS0(Zero, Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.14 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.14 new_primModNatS1(Succ(Zero), Zero) 114.04/79.14 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.14 114.04/79.14 We have to consider all minimal (P,Q,R)-chains. 114.04/79.14 ---------------------------------------- 114.04/79.14 114.04/79.14 (296) QDPSizeChangeProof (EQUIVALENT) 114.04/79.14 We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. 114.04/79.14 114.04/79.14 Order:Polynomial interpretation [POLO]: 114.04/79.14 114.04/79.14 POL(Neg(x_1)) = 1 114.04/79.14 POL(Pos(x_1)) = x_1 114.04/79.14 POL(Succ(x_1)) = 1 + x_1 114.04/79.14 POL(Zero) = 1 114.04/79.15 POL(new_primMinusNatS0(x_1, x_2)) = x_1 114.04/79.15 POL(new_primModNatS1(x_1, x_2)) = x_1 114.04/79.15 114.04/79.15 114.04/79.15 114.04/79.15 114.04/79.15 From the DPs we obtained the following set of size-change graphs: 114.04/79.15 *new_gcd0Gcd'(Neg(Succ(Zero)), Pos(Succ(Succ(x0)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Zero))) (allowed arguments on rhs = {1, 2}) 114.04/79.15 The graph contains the following edges 2 >= 1, 1 >= 2 114.04/79.15 114.04/79.15 114.04/79.15 *new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Zero))) -> new_gcd0Gcd'(Neg(Succ(Zero)), Pos(new_primModNatS1(Succ(x0), Zero))) (allowed arguments on rhs = {1, 2}) 114.04/79.15 The graph contains the following edges 2 >= 1, 1 > 2 114.04/79.15 114.04/79.15 114.04/79.15 114.04/79.15 We oriented the following set of usable rules [AAECC05,FROCOS05]. 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (297) 114.04/79.15 YES 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (298) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Succ(x1)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) -> new_primModNatS1(new_primMinusNatS0(Zero, Zero), Zero) 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Zero) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (299) UsableRulesProof (EQUIVALENT) 114.04/79.15 As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (300) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Succ(x1)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (301) TransformationProof (EQUIVALENT) 114.04/79.15 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(x0))), Neg(Succ(Succ(x1)))) -> new_gcd0Gcd'(Neg(Succ(Succ(x1))), Pos(new_primModNatS01(x0, x1, x0, x1))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS02(Zero, Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS02(Zero, Zero)))) 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3)))) 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS02(Succ(x2), Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS02(Succ(x2), Zero)))) 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (302) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS02(Zero, Zero))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS02(Succ(x2), Zero))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (303) TransformationProof (EQUIVALENT) 114.04/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS02(Zero, Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Zero))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (304) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS02(Succ(x2), Zero))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Zero)))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (305) TransformationProof (EQUIVALENT) 114.04/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS02(Succ(x2), Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (306) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (307) TransformationProof (EQUIVALENT) 114.04/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Zero))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (308) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Zero)))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (309) TransformationProof (EQUIVALENT) 114.04/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (310) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (311) TransformationProof (EQUIVALENT) 114.04/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Zero, Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Zero, Succ(Zero))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (312) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Zero, Succ(Zero)))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (313) DependencyGraphProof (EQUIVALENT) 114.04/79.15 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (314) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (315) TransformationProof (EQUIVALENT) 114.04/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (316) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (317) TransformationProof (EQUIVALENT) 114.04/79.15 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x3)))), Pos(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Zero), Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Zero), Succ(Zero))))) 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3)))) 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero))))) 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero)))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (318) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Zero), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (319) TransformationProof (EQUIVALENT) 114.04/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Zero), Succ(Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero)))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (320) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (321) TransformationProof (EQUIVALENT) 114.04/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero)))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (322) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (323) TransformationProof (EQUIVALENT) 114.04/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Zero)), Succ(Succ(Zero))), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Succ(Zero)))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (324) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (325) TransformationProof (EQUIVALENT) 114.04/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero)))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (326) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (327) TransformationProof (EQUIVALENT) 114.04/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Zero), Succ(Zero)), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Succ(Zero)))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (328) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Succ(Zero))))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (329) TransformationProof (EQUIVALENT) 114.04/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero)))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (330) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Succ(Zero))))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (331) TransformationProof (EQUIVALENT) 114.04/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Zero, Zero), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Zero, Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Zero, Succ(Succ(Zero)))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (332) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Zero, Succ(Succ(Zero))))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (333) DependencyGraphProof (EQUIVALENT) 114.04/79.15 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (334) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (335) TransformationProof (EQUIVALENT) 114.04/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero)))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (336) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (337) TransformationProof (EQUIVALENT) 114.04/79.15 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(x0))), Pos(Succ(Succ(x1)))) -> new_gcd0Gcd'(Pos(Succ(Succ(x1))), Neg(new_primModNatS01(x0, x1, x0, x1))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS02(Zero, Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS02(Zero, Zero)))) 114.04/79.15 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3)))) 114.04/79.15 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS02(Succ(x2), Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS02(Succ(x2), Zero)))) 114.04/79.15 (new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (338) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))) 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS02(Zero, Zero))) 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS02(Succ(x2), Zero))) 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (339) DependencyGraphProof (EQUIVALENT) 114.04/79.15 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 3 SCCs with 1 less node. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (340) 114.04/79.15 Complex Obligation (AND) 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (341) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS02(Succ(x2), Zero))) 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.04/79.15 114.04/79.15 The set Q consists of the following terms: 114.04/79.15 114.04/79.15 new_primModNatS1(Zero, x0) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.04/79.15 new_primMinusNatS0(Zero, Zero) 114.04/79.15 new_primModNatS02(x0, x1) 114.04/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.04/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.04/79.15 new_primModNatS1(Succ(Zero), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.04/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.04/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.04/79.15 114.04/79.15 We have to consider all minimal (P,Q,R)-chains. 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (342) TransformationProof (EQUIVALENT) 114.04/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS02(Succ(x2), Zero))) at position [1,0] we obtained the following new rules [LPAR04]: 114.04/79.15 114.04/79.15 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero))))) 114.04/79.15 114.04/79.15 114.04/79.15 ---------------------------------------- 114.04/79.15 114.04/79.15 (343) 114.04/79.15 Obligation: 114.04/79.15 Q DP problem: 114.04/79.15 The TRS P consists of the following rules: 114.04/79.15 114.04/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.04/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))) 114.04/79.15 114.04/79.15 The TRS R consists of the following rules: 114.04/79.15 114.04/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.04/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.04/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.04/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.04/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.04/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.15 114.10/79.15 The set Q consists of the following terms: 114.10/79.15 114.10/79.15 new_primModNatS1(Zero, x0) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Zero) 114.10/79.15 new_primModNatS02(x0, x1) 114.10/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.15 new_primModNatS1(Succ(Zero), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.15 114.10/79.15 We have to consider all minimal (P,Q,R)-chains. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (344) TransformationProof (EQUIVALENT) 114.10/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.10/79.15 114.10/79.15 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero))))) 114.10/79.15 114.10/79.15 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (345) 114.10/79.15 Obligation: 114.10/79.15 Q DP problem: 114.10/79.15 The TRS P consists of the following rules: 114.10/79.15 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.10/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))) 114.10/79.15 114.10/79.15 The TRS R consists of the following rules: 114.10/79.15 114.10/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.15 114.10/79.15 The set Q consists of the following terms: 114.10/79.15 114.10/79.15 new_primModNatS1(Zero, x0) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Zero) 114.10/79.15 new_primModNatS02(x0, x1) 114.10/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.15 new_primModNatS1(Succ(Zero), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.15 114.10/79.15 We have to consider all minimal (P,Q,R)-chains. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (346) TransformationProof (EQUIVALENT) 114.10/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Zero)))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.10/79.15 114.10/79.15 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS1(Succ(x2), Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS1(Succ(x2), Succ(Zero))))) 114.10/79.15 114.10/79.15 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (347) 114.10/79.15 Obligation: 114.10/79.15 Q DP problem: 114.10/79.15 The TRS P consists of the following rules: 114.10/79.15 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.10/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS1(Succ(x2), Succ(Zero)))) 114.10/79.15 114.10/79.15 The TRS R consists of the following rules: 114.10/79.15 114.10/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.15 114.10/79.15 The set Q consists of the following terms: 114.10/79.15 114.10/79.15 new_primModNatS1(Zero, x0) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Zero) 114.10/79.15 new_primModNatS02(x0, x1) 114.10/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.15 new_primModNatS1(Succ(Zero), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.15 114.10/79.15 We have to consider all minimal (P,Q,R)-chains. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (348) TransformationProof (EQUIVALENT) 114.10/79.15 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS1(Succ(x2), Succ(Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 114.10/79.15 114.10/79.15 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS01(x0, Zero, x0, Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS01(x0, Zero, x0, Zero)))) 114.10/79.15 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Zero))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Zero)))) 114.10/79.15 114.10/79.15 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (349) 114.10/79.15 Obligation: 114.10/79.15 Q DP problem: 114.10/79.15 The TRS P consists of the following rules: 114.10/79.15 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.10/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS01(x0, Zero, x0, Zero))) 114.10/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Zero))) 114.10/79.15 114.10/79.15 The TRS R consists of the following rules: 114.10/79.15 114.10/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.15 114.10/79.15 The set Q consists of the following terms: 114.10/79.15 114.10/79.15 new_primModNatS1(Zero, x0) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Zero) 114.10/79.15 new_primModNatS02(x0, x1) 114.10/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.15 new_primModNatS1(Succ(Zero), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.15 114.10/79.15 We have to consider all minimal (P,Q,R)-chains. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (350) DependencyGraphProof (EQUIVALENT) 114.10/79.15 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (351) 114.10/79.15 Obligation: 114.10/79.15 Q DP problem: 114.10/79.15 The TRS P consists of the following rules: 114.10/79.15 114.10/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS01(x0, Zero, x0, Zero))) 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.10/79.15 114.10/79.15 The TRS R consists of the following rules: 114.10/79.15 114.10/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.15 114.10/79.15 The set Q consists of the following terms: 114.10/79.15 114.10/79.15 new_primModNatS1(Zero, x0) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Zero) 114.10/79.15 new_primModNatS02(x0, x1) 114.10/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.15 new_primModNatS1(Succ(Zero), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.15 114.10/79.15 We have to consider all minimal (P,Q,R)-chains. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (352) QDPOrderProof (EQUIVALENT) 114.10/79.15 We use the reduction pair processor [LPAR04,JAR06]. 114.10/79.15 114.10/79.15 114.10/79.15 The following pairs can be oriented strictly and are deleted. 114.10/79.15 114.10/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x0))))), Pos(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(new_primModNatS01(x0, Zero, x0, Zero))) 114.10/79.15 The remaining pairs can at least be oriented weakly. 114.10/79.15 Used ordering: Polynomial interpretation [POLO]: 114.10/79.15 114.10/79.15 POL(Neg(x_1)) = x_1 114.10/79.15 POL(Pos(x_1)) = 0 114.10/79.15 POL(Succ(x_1)) = 1 + x_1 114.10/79.15 POL(Zero) = 0 114.10/79.15 POL(new_gcd0Gcd'(x_1, x_2)) = 2*x_1 + 2*x_2 114.10/79.15 POL(new_primMinusNatS0(x_1, x_2)) = x_1 114.10/79.15 POL(new_primModNatS01(x_1, x_2, x_3, x_4)) = 2 + x_1 114.10/79.15 POL(new_primModNatS02(x_1, x_2)) = 2 + x_1 114.10/79.15 POL(new_primModNatS1(x_1, x_2)) = x_1 114.10/79.15 114.10/79.15 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 114.10/79.15 114.10/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.15 114.10/79.15 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (353) 114.10/79.15 Obligation: 114.10/79.15 Q DP problem: 114.10/79.15 The TRS P consists of the following rules: 114.10/79.15 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Zero))), Neg(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Zero)))) 114.10/79.15 114.10/79.15 The TRS R consists of the following rules: 114.10/79.15 114.10/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.15 114.10/79.15 The set Q consists of the following terms: 114.10/79.15 114.10/79.15 new_primModNatS1(Zero, x0) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Zero) 114.10/79.15 new_primModNatS02(x0, x1) 114.10/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.15 new_primModNatS1(Succ(Zero), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.15 114.10/79.15 We have to consider all minimal (P,Q,R)-chains. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (354) DependencyGraphProof (EQUIVALENT) 114.10/79.15 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (355) 114.10/79.15 TRUE 114.10/79.15 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (356) 114.10/79.15 Obligation: 114.10/79.15 Q DP problem: 114.10/79.15 The TRS P consists of the following rules: 114.10/79.15 114.10/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))) 114.10/79.15 114.10/79.15 The TRS R consists of the following rules: 114.10/79.15 114.10/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.15 114.10/79.15 The set Q consists of the following terms: 114.10/79.15 114.10/79.15 new_primModNatS1(Zero, x0) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Zero) 114.10/79.15 new_primModNatS02(x0, x1) 114.10/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.15 new_primModNatS1(Succ(Zero), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.15 114.10/79.15 We have to consider all minimal (P,Q,R)-chains. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (357) TransformationProof (EQUIVALENT) 114.10/79.15 By narrowing [LPAR04] the rule new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS1(Succ(x2), Succ(Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 114.10/79.15 114.10/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS01(x0, Zero, x0, Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS01(x0, Zero, x0, Zero)))) 114.10/79.15 (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Zero))),new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Zero)))) 114.10/79.15 114.10/79.15 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (358) 114.10/79.15 Obligation: 114.10/79.15 Q DP problem: 114.10/79.15 The TRS P consists of the following rules: 114.10/79.15 114.10/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS01(x0, Zero, x0, Zero))) 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Zero))) 114.10/79.15 114.10/79.15 The TRS R consists of the following rules: 114.10/79.15 114.10/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.15 114.10/79.15 The set Q consists of the following terms: 114.10/79.15 114.10/79.15 new_primModNatS1(Zero, x0) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Zero) 114.10/79.15 new_primModNatS02(x0, x1) 114.10/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.15 new_primModNatS1(Succ(Zero), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.15 114.10/79.15 We have to consider all minimal (P,Q,R)-chains. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (359) DependencyGraphProof (EQUIVALENT) 114.10/79.15 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (360) 114.10/79.15 Obligation: 114.10/79.15 Q DP problem: 114.10/79.15 The TRS P consists of the following rules: 114.10/79.15 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS01(x0, Zero, x0, Zero))) 114.10/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 114.10/79.15 114.10/79.15 The TRS R consists of the following rules: 114.10/79.15 114.10/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.15 114.10/79.15 The set Q consists of the following terms: 114.10/79.15 114.10/79.15 new_primModNatS1(Zero, x0) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Zero) 114.10/79.15 new_primModNatS02(x0, x1) 114.10/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.15 new_primModNatS1(Succ(Zero), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.15 114.10/79.15 We have to consider all minimal (P,Q,R)-chains. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (361) QDPOrderProof (EQUIVALENT) 114.10/79.15 We use the reduction pair processor [LPAR04,JAR06]. 114.10/79.15 114.10/79.15 114.10/79.15 The following pairs can be oriented strictly and are deleted. 114.10/79.15 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x0))))), Neg(Succ(Succ(Zero)))) -> new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(new_primModNatS01(x0, Zero, x0, Zero))) 114.10/79.15 The remaining pairs can at least be oriented weakly. 114.10/79.15 Used ordering: Polynomial interpretation [POLO]: 114.10/79.15 114.10/79.15 POL(Neg(x_1)) = 0 114.10/79.15 POL(Pos(x_1)) = x_1 114.10/79.15 POL(Succ(x_1)) = 1 + x_1 114.10/79.15 POL(Zero) = 0 114.10/79.15 POL(new_gcd0Gcd'(x_1, x_2)) = 2*x_1 + 2*x_2 114.10/79.15 POL(new_primMinusNatS0(x_1, x_2)) = x_1 114.10/79.15 POL(new_primModNatS01(x_1, x_2, x_3, x_4)) = 2 + x_1 114.10/79.15 POL(new_primModNatS02(x_1, x_2)) = 2 + x_1 114.10/79.15 POL(new_primModNatS1(x_1, x_2)) = x_1 114.10/79.15 114.10/79.15 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 114.10/79.15 114.10/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.15 114.10/79.15 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (362) 114.10/79.15 Obligation: 114.10/79.15 Q DP problem: 114.10/79.15 The TRS P consists of the following rules: 114.10/79.15 114.10/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Zero))), Pos(Succ(Succ(Succ(x2))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x2)))), Neg(Succ(Succ(Zero)))) 114.10/79.15 114.10/79.15 The TRS R consists of the following rules: 114.10/79.15 114.10/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.15 114.10/79.15 The set Q consists of the following terms: 114.10/79.15 114.10/79.15 new_primModNatS1(Zero, x0) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Zero) 114.10/79.15 new_primModNatS02(x0, x1) 114.10/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.15 new_primModNatS1(Succ(Zero), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.15 114.10/79.15 We have to consider all minimal (P,Q,R)-chains. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (363) DependencyGraphProof (EQUIVALENT) 114.10/79.15 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (364) 114.10/79.15 TRUE 114.10/79.15 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (365) 114.10/79.15 Obligation: 114.10/79.15 Q DP problem: 114.10/79.15 The TRS P consists of the following rules: 114.10/79.15 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.10/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))) 114.10/79.15 114.10/79.15 The TRS R consists of the following rules: 114.10/79.15 114.10/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.15 114.10/79.15 The set Q consists of the following terms: 114.10/79.15 114.10/79.15 new_primModNatS1(Zero, x0) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Zero) 114.10/79.15 new_primModNatS02(x0, x1) 114.10/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.15 new_primModNatS1(Succ(Zero), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.15 114.10/79.15 We have to consider all minimal (P,Q,R)-chains. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (366) TransformationProof (EQUIVALENT) 114.10/79.15 By narrowing [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(x2)))), Pos(Succ(Succ(Succ(x3))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(x3)))), Neg(new_primModNatS01(Succ(x2), Succ(x3), x2, x3))) at position [1,0] we obtained the following new rules [LPAR04]: 114.10/79.15 114.10/79.15 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Zero), Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Zero), Succ(Zero))))) 114.10/79.15 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3)))) 114.10/79.15 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero))))) 114.10/79.15 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero)))))) 114.10/79.15 114.10/79.15 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (367) 114.10/79.15 Obligation: 114.10/79.15 Q DP problem: 114.10/79.15 The TRS P consists of the following rules: 114.10/79.15 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))) 114.10/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Zero), Succ(Zero)))) 114.10/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.10/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))) 114.10/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 114.10/79.15 114.10/79.15 The TRS R consists of the following rules: 114.10/79.15 114.10/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.15 114.10/79.15 The set Q consists of the following terms: 114.10/79.15 114.10/79.15 new_primModNatS1(Zero, x0) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Zero) 114.10/79.15 new_primModNatS02(x0, x1) 114.10/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.15 new_primModNatS1(Succ(Zero), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.15 114.10/79.15 We have to consider all minimal (P,Q,R)-chains. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (368) DependencyGraphProof (EQUIVALENT) 114.10/79.15 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 3 SCCs with 1 less node. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (369) 114.10/79.15 Complex Obligation (AND) 114.10/79.15 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (370) 114.10/79.15 Obligation: 114.10/79.15 Q DP problem: 114.10/79.15 The TRS P consists of the following rules: 114.10/79.15 114.10/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))) 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.10/79.15 114.10/79.15 The TRS R consists of the following rules: 114.10/79.15 114.10/79.15 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.15 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.15 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.15 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.15 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.15 114.10/79.15 The set Q consists of the following terms: 114.10/79.15 114.10/79.15 new_primModNatS1(Zero, x0) 114.10/79.15 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.15 new_primMinusNatS0(Zero, Zero) 114.10/79.15 new_primModNatS02(x0, x1) 114.10/79.15 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.15 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.15 new_primModNatS1(Succ(Zero), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.15 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.15 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.15 114.10/79.15 We have to consider all minimal (P,Q,R)-chains. 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (371) TransformationProof (EQUIVALENT) 114.10/79.15 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS02(Succ(Succ(x2)), Succ(Zero)))) at position [1,0] we obtained the following new rules [LPAR04]: 114.10/79.15 114.10/79.15 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero)))))) 114.10/79.15 114.10/79.15 114.10/79.15 ---------------------------------------- 114.10/79.15 114.10/79.15 (372) 114.10/79.15 Obligation: 114.10/79.15 Q DP problem: 114.10/79.15 The TRS P consists of the following rules: 114.10/79.15 114.10/79.15 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.10/79.15 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))) 114.10/79.16 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.16 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primModNatS1(Zero, x0) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primModNatS02(x0, x1) 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.16 new_primModNatS1(Succ(Zero), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (373) TransformationProof (EQUIVALENT) 114.10/79.16 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(Succ(x2))), Succ(Succ(Zero))), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.10/79.16 114.10/79.16 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero)))))) 114.10/79.16 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (374) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.10/79.16 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))) 114.10/79.16 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.16 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primModNatS1(Zero, x0) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primModNatS02(x0, x1) 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.16 new_primModNatS1(Succ(Zero), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (375) TransformationProof (EQUIVALENT) 114.10/79.16 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(Succ(x2)), Succ(Zero)), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.10/79.16 114.10/79.16 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero)))))) 114.10/79.16 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (376) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.10/79.16 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))) 114.10/79.16 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.16 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primModNatS1(Zero, x0) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primModNatS02(x0, x1) 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.16 new_primModNatS1(Succ(Zero), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (377) TransformationProof (EQUIVALENT) 114.10/79.16 By rewriting [LPAR04] the rule new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(new_primMinusNatS0(Succ(x2), Zero), Succ(Succ(Zero))))) at position [1,0,0] we obtained the following new rules [LPAR04]: 114.10/79.16 114.10/79.16 (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))),new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero)))))) 114.10/79.16 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (378) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.10/79.16 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))) 114.10/79.16 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.16 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primModNatS1(Zero, x0) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primModNatS02(x0, x1) 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.16 new_primModNatS1(Succ(Zero), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (379) QDPOrderProof (EQUIVALENT) 114.10/79.16 We use the reduction pair processor [LPAR04,JAR06]. 114.10/79.16 114.10/79.16 114.10/79.16 The following pairs can be oriented strictly and are deleted. 114.10/79.16 114.10/79.16 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))) 114.10/79.16 The remaining pairs can at least be oriented weakly. 114.10/79.16 Used ordering: Polynomial interpretation [POLO]: 114.10/79.16 114.10/79.16 POL(Neg(x_1)) = 2*x_1 114.10/79.16 POL(Pos(x_1)) = 0 114.10/79.16 POL(Succ(x_1)) = 1 + x_1 114.10/79.16 POL(Zero) = 0 114.10/79.16 POL(new_gcd0Gcd'(x_1, x_2)) = 2*x_1 + 2*x_2 114.10/79.16 POL(new_primMinusNatS0(x_1, x_2)) = x_1 114.10/79.16 POL(new_primModNatS01(x_1, x_2, x_3, x_4)) = 2 + x_1 114.10/79.16 POL(new_primModNatS02(x_1, x_2)) = 1 + x_1 114.10/79.16 POL(new_primModNatS1(x_1, x_2)) = x_1 114.10/79.16 114.10/79.16 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 114.10/79.16 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.16 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (380) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Zero)))), Neg(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Zero))))) 114.10/79.16 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.16 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primModNatS1(Zero, x0) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primModNatS02(x0, x1) 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.16 new_primModNatS1(Succ(Zero), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (381) DependencyGraphProof (EQUIVALENT) 114.10/79.16 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (382) 114.10/79.16 TRUE 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (383) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 114.10/79.16 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))) 114.10/79.16 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.16 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primModNatS1(Zero, x0) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primModNatS02(x0, x1) 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.16 new_primModNatS1(Succ(Zero), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (384) QDPOrderProof (EQUIVALENT) 114.10/79.16 We use the reduction pair processor [LPAR04,JAR06]. 114.10/79.16 114.10/79.16 114.10/79.16 The following pairs can be oriented strictly and are deleted. 114.10/79.16 114.10/79.16 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(new_primModNatS1(Succ(x2), Succ(Succ(Zero))))) 114.10/79.16 The remaining pairs can at least be oriented weakly. 114.10/79.16 Used ordering: Polynomial interpretation [POLO]: 114.10/79.16 114.10/79.16 POL(Neg(x_1)) = 0 114.10/79.16 POL(Pos(x_1)) = 2*x_1 114.10/79.16 POL(Succ(x_1)) = 1 + x_1 114.10/79.16 POL(Zero) = 0 114.10/79.16 POL(new_gcd0Gcd'(x_1, x_2)) = 2*x_1 + 2*x_2 114.10/79.16 POL(new_primMinusNatS0(x_1, x_2)) = x_1 114.10/79.16 POL(new_primModNatS01(x_1, x_2, x_3, x_4)) = 2 + x_1 114.10/79.16 POL(new_primModNatS02(x_1, x_2)) = 1 + x_1 114.10/79.16 POL(new_primModNatS1(x_1, x_2)) = x_1 114.10/79.16 114.10/79.16 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 114.10/79.16 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.16 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (385) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Zero)))), Pos(Succ(Succ(Succ(Succ(x2)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Zero))))) 114.10/79.16 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.16 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primModNatS1(Zero, x0) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primModNatS02(x0, x1) 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.16 new_primModNatS1(Succ(Zero), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (386) DependencyGraphProof (EQUIVALENT) 114.10/79.16 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (387) 114.10/79.16 TRUE 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (388) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.10/79.16 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.10/79.16 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.16 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primModNatS1(Zero, x0) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primModNatS02(x0, x1) 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.16 new_primModNatS1(Succ(Zero), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (389) InductionCalculusProof (EQUIVALENT) 114.10/79.16 Note that final constraints are written in bold face. 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 For Pair new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) the following chains were created: 114.10/79.16 *We consider the chain new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))), new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x4))))), Neg(Succ(Succ(Succ(Succ(x5)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x5))))), Pos(new_primModNatS01(Succ(Succ(x4)), Succ(Succ(x5)), x4, x5))) which results in the following constraint: 114.10/79.16 114.10/79.16 (1) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3)))=new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x4))))), Neg(Succ(Succ(Succ(Succ(x5)))))) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3)))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 114.10/79.16 114.10/79.16 (2) (Succ(Succ(x2))=x12 & Succ(Succ(x3))=x13 & new_primModNatS01(x12, x13, x2, x3)=Succ(Succ(Succ(Succ(x5)))) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3)))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x12, x13, x2, x3)=Succ(Succ(Succ(Succ(x5)))) which results in the following new constraints: 114.10/79.16 114.10/79.16 (3) (new_primModNatS02(x15, x14)=Succ(Succ(Succ(Succ(x5)))) & Succ(Succ(Zero))=x15 & Succ(Succ(Zero))=x14 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero)))) 114.10/79.16 114.10/79.16 (4) (new_primModNatS01(x19, x18, x17, x16)=Succ(Succ(Succ(Succ(x5)))) & Succ(Succ(Succ(x17)))=x19 & Succ(Succ(Succ(x16)))=x18 & (\/x20:new_primModNatS01(x19, x18, x17, x16)=Succ(Succ(Succ(Succ(x20)))) & Succ(Succ(x17))=x19 & Succ(Succ(x16))=x18 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x17))))), Pos(Succ(Succ(Succ(Succ(x16))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x16))))), Neg(new_primModNatS01(Succ(Succ(x17)), Succ(Succ(x16)), x17, x16)))) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x17)))))), Pos(Succ(Succ(Succ(Succ(Succ(x16)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x16)))))), Neg(new_primModNatS01(Succ(Succ(Succ(x17))), Succ(Succ(Succ(x16))), Succ(x17), Succ(x16))))) 114.10/79.16 114.10/79.16 (5) (new_primModNatS02(x23, x22)=Succ(Succ(Succ(Succ(x5)))) & Succ(Succ(Succ(x21)))=x23 & Succ(Succ(Zero))=x22 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x21)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(new_primModNatS01(Succ(Succ(Succ(x21))), Succ(Succ(Zero)), Succ(x21), Zero)))) 114.10/79.16 114.10/79.16 (6) (Succ(Succ(x26))=Succ(Succ(Succ(Succ(x5)))) & Succ(Succ(Zero))=x26 & Succ(Succ(Succ(x24)))=x25 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x24)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x24)))))), Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x24))), Zero, Succ(x24))))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (3) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x15, x14)=Succ(Succ(Succ(Succ(x5)))) which results in the following new constraint: 114.10/79.16 114.10/79.16 (7) (new_primModNatS1(new_primMinusNatS0(Succ(x28), Succ(x27)), Succ(x27))=Succ(Succ(Succ(Succ(x5)))) & Succ(Succ(Zero))=x28 & Succ(Succ(Zero))=x27 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero)))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (4) using rule (IV) which results in the following new constraint: 114.10/79.16 114.10/79.16 (8) (new_primModNatS01(x19, x18, x17, x16)=Succ(Succ(Succ(Succ(x5)))) & Succ(Succ(Succ(x17)))=x19 & Succ(Succ(Succ(x16)))=x18 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x17)))))), Pos(Succ(Succ(Succ(Succ(Succ(x16)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x16)))))), Neg(new_primModNatS01(Succ(Succ(Succ(x17))), Succ(Succ(Succ(x16))), Succ(x17), Succ(x16))))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (5) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x23, x22)=Succ(Succ(Succ(Succ(x5)))) which results in the following new constraint: 114.10/79.16 114.10/79.16 (9) (new_primModNatS1(new_primMinusNatS0(Succ(x47), Succ(x46)), Succ(x46))=Succ(Succ(Succ(Succ(x5)))) & Succ(Succ(Succ(x21)))=x47 & Succ(Succ(Zero))=x46 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x21)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(new_primModNatS01(Succ(Succ(Succ(x21))), Succ(Succ(Zero)), Succ(x21), Zero)))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (6) using rules (I), (II), (III), (IV) which results in the following new constraint: 114.10/79.16 114.10/79.16 (10) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x24)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x24)))))), Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x24))), Zero, Succ(x24))))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (7) using rules (III), (IV), (VII) which results in the following new constraint: 114.10/79.16 114.10/79.16 (11) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero)))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (8) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x19, x18, x17, x16)=Succ(Succ(Succ(Succ(x5)))) which results in the following new constraints: 114.10/79.16 114.10/79.16 (12) (new_primModNatS02(x34, x33)=Succ(Succ(Succ(Succ(x5)))) & Succ(Succ(Succ(Zero)))=x34 & Succ(Succ(Succ(Zero)))=x33 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero))))) 114.10/79.16 114.10/79.16 (13) (new_primModNatS01(x38, x37, x36, x35)=Succ(Succ(Succ(Succ(x5)))) & Succ(Succ(Succ(Succ(x36))))=x38 & Succ(Succ(Succ(Succ(x35))))=x37 & (\/x39:new_primModNatS01(x38, x37, x36, x35)=Succ(Succ(Succ(Succ(x39)))) & Succ(Succ(Succ(x36)))=x38 & Succ(Succ(Succ(x35)))=x37 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x36)))))), Pos(Succ(Succ(Succ(Succ(Succ(x35)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x35)))))), Neg(new_primModNatS01(Succ(Succ(Succ(x36))), Succ(Succ(Succ(x35))), Succ(x36), Succ(x35))))) ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x36))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))), Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x36)))), Succ(Succ(Succ(Succ(x35)))), Succ(Succ(x36)), Succ(Succ(x35)))))) 114.10/79.16 114.10/79.16 (14) (new_primModNatS02(x42, x41)=Succ(Succ(Succ(Succ(x5)))) & Succ(Succ(Succ(Succ(x40))))=x42 & Succ(Succ(Succ(Zero)))=x41 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x40))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x40)))), Succ(Succ(Succ(Zero))), Succ(Succ(x40)), Succ(Zero))))) 114.10/79.16 114.10/79.16 (15) (Succ(Succ(x45))=Succ(Succ(Succ(Succ(x5)))) & Succ(Succ(Succ(Zero)))=x45 & Succ(Succ(Succ(Succ(x43))))=x44 ==> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x43))))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x43))))))), Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x43)))), Succ(Zero), Succ(Succ(x43)))))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (12) using rules (III), (IV) which results in the following new constraint: 114.10/79.16 114.10/79.16 (16) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero))))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (13) using rules (III), (IV) which results in the following new constraint: 114.10/79.16 114.10/79.16 (17) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x36))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))), Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x36)))), Succ(Succ(Succ(Succ(x35)))), Succ(Succ(x36)), Succ(Succ(x35)))))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (14) using rules (III), (IV) which results in the following new constraint: 114.10/79.16 114.10/79.16 (18) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x40))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x40)))), Succ(Succ(Succ(Zero))), Succ(Succ(x40)), Succ(Zero))))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (15) using rules (I), (II), (III), (IV) which results in the following new constraint: 114.10/79.16 114.10/79.16 (19) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x43))))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x43))))))), Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x43)))), Succ(Zero), Succ(Succ(x43)))))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (9) using rules (III), (IV), (VII) which results in the following new constraint: 114.10/79.16 114.10/79.16 (20) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x21)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(new_primModNatS01(Succ(Succ(Succ(x21))), Succ(Succ(Zero)), Succ(x21), Zero)))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 For Pair new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) the following chains were created: 114.10/79.16 *We consider the chain new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x6))))), Neg(Succ(Succ(Succ(Succ(x7)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x7))))), Pos(new_primModNatS01(Succ(Succ(x6)), Succ(Succ(x7)), x6, x7))), new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x8))))), Pos(Succ(Succ(Succ(Succ(x9)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x9))))), Neg(new_primModNatS01(Succ(Succ(x8)), Succ(Succ(x9)), x8, x9))) which results in the following constraint: 114.10/79.16 114.10/79.16 (1) (new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x7))))), Pos(new_primModNatS01(Succ(Succ(x6)), Succ(Succ(x7)), x6, x7)))=new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x8))))), Pos(Succ(Succ(Succ(Succ(x9)))))) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x6))))), Neg(Succ(Succ(Succ(Succ(x7))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x7))))), Pos(new_primModNatS01(Succ(Succ(x6)), Succ(Succ(x7)), x6, x7)))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (1) using rules (I), (II), (IV), (VII) which results in the following new constraint: 114.10/79.16 114.10/79.16 (2) (Succ(Succ(x6))=x52 & Succ(Succ(x7))=x53 & new_primModNatS01(x52, x53, x6, x7)=Succ(Succ(Succ(Succ(x9)))) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x6))))), Neg(Succ(Succ(Succ(Succ(x7))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x7))))), Pos(new_primModNatS01(Succ(Succ(x6)), Succ(Succ(x7)), x6, x7)))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (2) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x52, x53, x6, x7)=Succ(Succ(Succ(Succ(x9)))) which results in the following new constraints: 114.10/79.16 114.10/79.16 (3) (new_primModNatS02(x55, x54)=Succ(Succ(Succ(Succ(x9)))) & Succ(Succ(Zero))=x55 & Succ(Succ(Zero))=x54 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero)))) 114.10/79.16 114.10/79.16 (4) (new_primModNatS01(x59, x58, x57, x56)=Succ(Succ(Succ(Succ(x9)))) & Succ(Succ(Succ(x57)))=x59 & Succ(Succ(Succ(x56)))=x58 & (\/x60:new_primModNatS01(x59, x58, x57, x56)=Succ(Succ(Succ(Succ(x60)))) & Succ(Succ(x57))=x59 & Succ(Succ(x56))=x58 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x57))))), Neg(Succ(Succ(Succ(Succ(x56))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x56))))), Pos(new_primModNatS01(Succ(Succ(x57)), Succ(Succ(x56)), x57, x56)))) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x57)))))), Neg(Succ(Succ(Succ(Succ(Succ(x56)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x56)))))), Pos(new_primModNatS01(Succ(Succ(Succ(x57))), Succ(Succ(Succ(x56))), Succ(x57), Succ(x56))))) 114.10/79.16 114.10/79.16 (5) (new_primModNatS02(x63, x62)=Succ(Succ(Succ(Succ(x9)))) & Succ(Succ(Succ(x61)))=x63 & Succ(Succ(Zero))=x62 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x61)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(new_primModNatS01(Succ(Succ(Succ(x61))), Succ(Succ(Zero)), Succ(x61), Zero)))) 114.10/79.16 114.10/79.16 (6) (Succ(Succ(x66))=Succ(Succ(Succ(Succ(x9)))) & Succ(Succ(Zero))=x66 & Succ(Succ(Succ(x64)))=x65 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x64)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x64)))))), Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x64))), Zero, Succ(x64))))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (3) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x55, x54)=Succ(Succ(Succ(Succ(x9)))) which results in the following new constraint: 114.10/79.16 114.10/79.16 (7) (new_primModNatS1(new_primMinusNatS0(Succ(x68), Succ(x67)), Succ(x67))=Succ(Succ(Succ(Succ(x9)))) & Succ(Succ(Zero))=x68 & Succ(Succ(Zero))=x67 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero)))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (4) using rule (IV) which results in the following new constraint: 114.10/79.16 114.10/79.16 (8) (new_primModNatS01(x59, x58, x57, x56)=Succ(Succ(Succ(Succ(x9)))) & Succ(Succ(Succ(x57)))=x59 & Succ(Succ(Succ(x56)))=x58 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x57)))))), Neg(Succ(Succ(Succ(Succ(Succ(x56)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x56)))))), Pos(new_primModNatS01(Succ(Succ(Succ(x57))), Succ(Succ(Succ(x56))), Succ(x57), Succ(x56))))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (5) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS02(x63, x62)=Succ(Succ(Succ(Succ(x9)))) which results in the following new constraint: 114.10/79.16 114.10/79.16 (9) (new_primModNatS1(new_primMinusNatS0(Succ(x87), Succ(x86)), Succ(x86))=Succ(Succ(Succ(Succ(x9)))) & Succ(Succ(Succ(x61)))=x87 & Succ(Succ(Zero))=x86 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x61)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(new_primModNatS01(Succ(Succ(Succ(x61))), Succ(Succ(Zero)), Succ(x61), Zero)))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (6) using rules (I), (II), (III), (IV) which results in the following new constraint: 114.10/79.16 114.10/79.16 (10) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x64)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x64)))))), Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x64))), Zero, Succ(x64))))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (7) using rules (III), (IV), (VII) which results in the following new constraint: 114.10/79.16 114.10/79.16 (11) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero)))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (8) using rule (V) (with possible (I) afterwards) using induction on new_primModNatS01(x59, x58, x57, x56)=Succ(Succ(Succ(Succ(x9)))) which results in the following new constraints: 114.10/79.16 114.10/79.16 (12) (new_primModNatS02(x74, x73)=Succ(Succ(Succ(Succ(x9)))) & Succ(Succ(Succ(Zero)))=x74 & Succ(Succ(Succ(Zero)))=x73 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero))))) 114.10/79.16 114.10/79.16 (13) (new_primModNatS01(x78, x77, x76, x75)=Succ(Succ(Succ(Succ(x9)))) & Succ(Succ(Succ(Succ(x76))))=x78 & Succ(Succ(Succ(Succ(x75))))=x77 & (\/x79:new_primModNatS01(x78, x77, x76, x75)=Succ(Succ(Succ(Succ(x79)))) & Succ(Succ(Succ(x76)))=x78 & Succ(Succ(Succ(x75)))=x77 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x76)))))), Neg(Succ(Succ(Succ(Succ(Succ(x75)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x75)))))), Pos(new_primModNatS01(Succ(Succ(Succ(x76))), Succ(Succ(Succ(x75))), Succ(x76), Succ(x75))))) ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x76))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x75))))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x75))))))), Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x76)))), Succ(Succ(Succ(Succ(x75)))), Succ(Succ(x76)), Succ(Succ(x75)))))) 114.10/79.16 114.10/79.16 (14) (new_primModNatS02(x82, x81)=Succ(Succ(Succ(Succ(x9)))) & Succ(Succ(Succ(Succ(x80))))=x82 & Succ(Succ(Succ(Zero)))=x81 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x80))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x80)))), Succ(Succ(Succ(Zero))), Succ(Succ(x80)), Succ(Zero))))) 114.10/79.16 114.10/79.16 (15) (Succ(Succ(x85))=Succ(Succ(Succ(Succ(x9)))) & Succ(Succ(Succ(Zero)))=x85 & Succ(Succ(Succ(Succ(x83))))=x84 ==> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x83))))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x83))))))), Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x83)))), Succ(Zero), Succ(Succ(x83)))))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (12) using rules (III), (IV) which results in the following new constraint: 114.10/79.16 114.10/79.16 (16) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero))))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (13) using rules (III), (IV) which results in the following new constraint: 114.10/79.16 114.10/79.16 (17) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x76))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x75))))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x75))))))), Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x76)))), Succ(Succ(Succ(Succ(x75)))), Succ(Succ(x76)), Succ(Succ(x75)))))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (14) using rules (III), (IV) which results in the following new constraint: 114.10/79.16 114.10/79.16 (18) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x80))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x80)))), Succ(Succ(Succ(Zero))), Succ(Succ(x80)), Succ(Zero))))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (15) using rules (I), (II), (III), (IV) which results in the following new constraint: 114.10/79.16 114.10/79.16 (19) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x83))))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x83))))))), Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x83)))), Succ(Zero), Succ(Succ(x83)))))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We simplified constraint (9) using rules (III), (IV), (VII) which results in the following new constraint: 114.10/79.16 114.10/79.16 (20) (new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x61)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(new_primModNatS01(Succ(Succ(Succ(x61))), Succ(Succ(Zero)), Succ(x61), Zero)))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 To summarize, we get the following constraints P__>=_ for the following pairs. 114.10/79.16 114.10/79.16 *new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.10/79.16 114.10/79.16 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x43))))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x43))))))), Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x43)))), Succ(Zero), Succ(Succ(x43)))))) 114.10/79.16 114.10/79.16 114.10/79.16 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Succ(x24)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x24)))))), Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x24))), Zero, Succ(x24))))) 114.10/79.16 114.10/79.16 114.10/79.16 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero)))) 114.10/79.16 114.10/79.16 114.10/79.16 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero))))) 114.10/79.16 114.10/79.16 114.10/79.16 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x36))))))), Pos(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x35))))))), Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x36)))), Succ(Succ(Succ(Succ(x35)))), Succ(Succ(x36)), Succ(Succ(x35)))))) 114.10/79.16 114.10/79.16 114.10/79.16 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x40))))))), Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(new_primModNatS01(Succ(Succ(Succ(Succ(x40)))), Succ(Succ(Succ(Zero))), Succ(Succ(x40)), Succ(Zero))))) 114.10/79.16 114.10/79.16 114.10/79.16 *(new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x21)))))), Pos(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(new_primModNatS01(Succ(Succ(Succ(x21))), Succ(Succ(Zero)), Succ(x21), Zero)))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 *new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.10/79.16 114.10/79.16 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x83))))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x83))))))), Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Succ(x83)))), Succ(Zero), Succ(Succ(x83)))))) 114.10/79.16 114.10/79.16 114.10/79.16 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Succ(x64)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(x64)))))), Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Succ(x64))), Zero, Succ(x64))))) 114.10/79.16 114.10/79.16 114.10/79.16 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Zero))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(new_primModNatS01(Succ(Succ(Zero)), Succ(Succ(Zero)), Zero, Zero)))) 114.10/79.16 114.10/79.16 114.10/79.16 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Zero)))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(new_primModNatS01(Succ(Succ(Succ(Zero))), Succ(Succ(Succ(Zero))), Succ(Zero), Succ(Zero))))) 114.10/79.16 114.10/79.16 114.10/79.16 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x76))))))), Neg(Succ(Succ(Succ(Succ(Succ(Succ(x75))))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Succ(x75))))))), Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x76)))), Succ(Succ(Succ(Succ(x75)))), Succ(Succ(x76)), Succ(Succ(x75)))))) 114.10/79.16 114.10/79.16 114.10/79.16 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(Succ(x80))))))), Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Succ(Zero)))))), Pos(new_primModNatS01(Succ(Succ(Succ(Succ(x80)))), Succ(Succ(Succ(Zero))), Succ(Succ(x80)), Succ(Zero))))) 114.10/79.16 114.10/79.16 114.10/79.16 *(new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(Succ(x61)))))), Neg(Succ(Succ(Succ(Succ(Zero))))))_>=_new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(Zero))))), Pos(new_primModNatS01(Succ(Succ(Succ(x61))), Succ(Succ(Zero)), Succ(x61), Zero)))) 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 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. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (390) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x2))))), Pos(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x3))))), Neg(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.10/79.16 new_gcd0Gcd'(Pos(Succ(Succ(Succ(Succ(x2))))), Neg(Succ(Succ(Succ(Succ(x3)))))) -> new_gcd0Gcd'(Neg(Succ(Succ(Succ(Succ(x3))))), Pos(new_primModNatS01(Succ(Succ(x2)), Succ(Succ(x3)), x2, x3))) 114.10/79.16 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primModNatS1(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS01(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS02(vuz257, vuz258) -> new_primModNatS1(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS01(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS02(vuz257, vuz258) 114.10/79.16 new_primModNatS01(vuz257, vuz258, Zero, Succ(vuz2600)) -> Succ(Succ(vuz257)) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(vuz239000)) -> Succ(Zero) 114.10/79.16 new_primModNatS1(Zero, vuz23900) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primModNatS1(Zero, x0) 114.10/79.16 new_primModNatS1(Succ(Zero), Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primModNatS02(x0, x1) 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Succ(x2), Succ(x3)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Succ(x1)) 114.10/79.16 new_primModNatS1(Succ(Succ(x0)), Zero) 114.10/79.16 new_primModNatS1(Succ(Zero), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Zero) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 new_primModNatS01(x0, x1, Zero, Succ(x2)) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (391) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_primMulNat(Succ(vuz310000), vuz4100) -> new_primMulNat(vuz310000, vuz4100) 114.10/79.16 114.10/79.16 R is empty. 114.10/79.16 Q is empty. 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (392) QDPSizeChangeProof (EQUIVALENT) 114.10/79.16 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. 114.10/79.16 114.10/79.16 From the DPs we obtained the following set of size-change graphs: 114.10/79.16 *new_primMulNat(Succ(vuz310000), vuz4100) -> new_primMulNat(vuz310000, vuz4100) 114.10/79.16 The graph contains the following edges 1 > 1, 2 >= 2 114.10/79.16 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (393) 114.10/79.16 YES 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (394) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_gcd2(Succ(vuz1710), Succ(vuz1630), vuz45) -> new_gcd2(vuz1710, vuz1630, vuz45) 114.10/79.16 114.10/79.16 R is empty. 114.10/79.16 Q is empty. 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (395) QDPSizeChangeProof (EQUIVALENT) 114.10/79.16 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. 114.10/79.16 114.10/79.16 From the DPs we obtained the following set of size-change graphs: 114.10/79.16 *new_gcd2(Succ(vuz1710), Succ(vuz1630), vuz45) -> new_gcd2(vuz1710, vuz1630, vuz45) 114.10/79.16 The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3 114.10/79.16 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (396) 114.10/79.16 YES 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (397) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_primQuotInt(Succ(vuz1050), Succ(vuz770), vuz45) -> new_primQuotInt(vuz1050, vuz770, vuz45) 114.10/79.16 114.10/79.16 R is empty. 114.10/79.16 Q is empty. 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (398) QDPSizeChangeProof (EQUIVALENT) 114.10/79.16 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. 114.10/79.16 114.10/79.16 From the DPs we obtained the following set of size-change graphs: 114.10/79.16 *new_primQuotInt(Succ(vuz1050), Succ(vuz770), vuz45) -> new_primQuotInt(vuz1050, vuz770, vuz45) 114.10/79.16 The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3 114.10/79.16 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (399) 114.10/79.16 YES 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (400) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_primModNatS(Succ(Zero), Zero) -> new_primModNatS(new_primMinusNatS0(Zero, Zero), Zero) 114.10/79.16 new_primModNatS(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS0(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.16 new_primModNatS00(vuz257, vuz258) -> new_primModNatS(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.16 new_primModNatS0(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.16 new_primModNatS(Succ(Succ(vuz240000)), Zero) -> new_primModNatS(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.10/79.16 new_primModNatS0(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS0(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.16 new_primModNatS0(vuz257, vuz258, Zero, Zero) -> new_primModNatS00(vuz257, vuz258) 114.10/79.16 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (401) DependencyGraphProof (EQUIVALENT) 114.10/79.16 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 1 less node. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (402) 114.10/79.16 Complex Obligation (AND) 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (403) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_primModNatS0(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.16 new_primModNatS(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS0(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.16 new_primModNatS0(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS0(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.16 new_primModNatS0(vuz257, vuz258, Zero, Zero) -> new_primModNatS00(vuz257, vuz258) 114.10/79.16 new_primModNatS00(vuz257, vuz258) -> new_primModNatS(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.16 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (404) TransformationProof (EQUIVALENT) 114.10/79.16 By rewriting [LPAR04] the rule new_primModNatS0(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) at position [0] we obtained the following new rules [LPAR04]: 114.10/79.16 114.10/79.16 (new_primModNatS0(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS(new_primMinusNatS0(vuz257, vuz258), Succ(vuz258)),new_primModNatS0(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS(new_primMinusNatS0(vuz257, vuz258), Succ(vuz258))) 114.10/79.16 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (405) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_primModNatS(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS0(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.16 new_primModNatS0(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS0(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.16 new_primModNatS0(vuz257, vuz258, Zero, Zero) -> new_primModNatS00(vuz257, vuz258) 114.10/79.16 new_primModNatS00(vuz257, vuz258) -> new_primModNatS(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) 114.10/79.16 new_primModNatS0(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS(new_primMinusNatS0(vuz257, vuz258), Succ(vuz258)) 114.10/79.16 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (406) TransformationProof (EQUIVALENT) 114.10/79.16 By rewriting [LPAR04] the rule new_primModNatS00(vuz257, vuz258) -> new_primModNatS(new_primMinusNatS0(Succ(vuz257), Succ(vuz258)), Succ(vuz258)) at position [0] we obtained the following new rules [LPAR04]: 114.10/79.16 114.10/79.16 (new_primModNatS00(vuz257, vuz258) -> new_primModNatS(new_primMinusNatS0(vuz257, vuz258), Succ(vuz258)),new_primModNatS00(vuz257, vuz258) -> new_primModNatS(new_primMinusNatS0(vuz257, vuz258), Succ(vuz258))) 114.10/79.16 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (407) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_primModNatS(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS0(vuz240000, vuz239000, vuz240000, vuz239000) 114.10/79.16 new_primModNatS0(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS0(vuz257, vuz258, vuz2590, vuz2600) 114.10/79.16 new_primModNatS0(vuz257, vuz258, Zero, Zero) -> new_primModNatS00(vuz257, vuz258) 114.10/79.16 new_primModNatS0(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS(new_primMinusNatS0(vuz257, vuz258), Succ(vuz258)) 114.10/79.16 new_primModNatS00(vuz257, vuz258) -> new_primModNatS(new_primMinusNatS0(vuz257, vuz258), Succ(vuz258)) 114.10/79.16 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (408) QDPSizeChangeProof (EQUIVALENT) 114.10/79.16 We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. 114.10/79.16 114.10/79.16 Order:Polynomial interpretation [POLO]: 114.10/79.16 114.10/79.16 POL(Succ(x_1)) = 1 + x_1 114.10/79.16 POL(Zero) = 1 114.10/79.16 POL(new_primMinusNatS0(x_1, x_2)) = x_1 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 From the DPs we obtained the following set of size-change graphs: 114.10/79.16 *new_primModNatS0(vuz257, vuz258, Succ(vuz2590), Zero) -> new_primModNatS(new_primMinusNatS0(vuz257, vuz258), Succ(vuz258)) (allowed arguments on rhs = {1, 2}) 114.10/79.16 The graph contains the following edges 1 >= 1 114.10/79.16 114.10/79.16 114.10/79.16 *new_primModNatS00(vuz257, vuz258) -> new_primModNatS(new_primMinusNatS0(vuz257, vuz258), Succ(vuz258)) (allowed arguments on rhs = {1, 2}) 114.10/79.16 The graph contains the following edges 1 >= 1 114.10/79.16 114.10/79.16 114.10/79.16 *new_primModNatS(Succ(Succ(vuz240000)), Succ(vuz239000)) -> new_primModNatS0(vuz240000, vuz239000, vuz240000, vuz239000) (allowed arguments on rhs = {1, 2, 3, 4}) 114.10/79.16 The graph contains the following edges 1 > 1, 2 > 2, 1 > 3, 2 > 4 114.10/79.16 114.10/79.16 114.10/79.16 *new_primModNatS0(vuz257, vuz258, Succ(vuz2590), Succ(vuz2600)) -> new_primModNatS0(vuz257, vuz258, vuz2590, vuz2600) (allowed arguments on rhs = {1, 2, 3, 4}) 114.10/79.16 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4 114.10/79.16 114.10/79.16 114.10/79.16 *new_primModNatS0(vuz257, vuz258, Zero, Zero) -> new_primModNatS00(vuz257, vuz258) (allowed arguments on rhs = {1, 2}) 114.10/79.16 The graph contains the following edges 1 >= 1, 2 >= 2 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We oriented the following set of usable rules [AAECC05,FROCOS05]. 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (409) 114.10/79.16 YES 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (410) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_primModNatS(Succ(Succ(vuz240000)), Zero) -> new_primModNatS(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.10/79.16 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (411) MRRProof (EQUIVALENT) 114.10/79.16 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. 114.10/79.16 114.10/79.16 Strictly oriented dependency pairs: 114.10/79.16 114.10/79.16 new_primModNatS(Succ(Succ(vuz240000)), Zero) -> new_primModNatS(new_primMinusNatS0(Succ(vuz240000), Zero), Zero) 114.10/79.16 114.10/79.16 Strictly oriented rules of the TRS R: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 Used ordering: Polynomial interpretation [POLO]: 114.10/79.16 114.10/79.16 POL(Succ(x_1)) = 1 + 2*x_1 114.10/79.16 POL(Zero) = 0 114.10/79.16 POL(new_primMinusNatS0(x_1, x_2)) = 2*x_1 + 2*x_2 114.10/79.16 POL(new_primModNatS(x_1, x_2)) = x_1 + x_2 114.10/79.16 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (412) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 P is empty. 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (413) PisEmptyProof (EQUIVALENT) 114.10/79.16 The TRS P is empty. Hence, there is no (P,Q,R) chain. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (414) 114.10/79.16 YES 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (415) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_primDivNatS(Succ(Succ(vuz15800)), Succ(vuz159000)) -> new_primDivNatS0(vuz15800, vuz159000, vuz15800, vuz159000) 114.10/79.16 new_primDivNatS0(vuz212, vuz213, Succ(vuz2140), Zero) -> new_primDivNatS(new_primMinusNatS0(vuz212, vuz213), Succ(vuz213)) 114.10/79.16 new_primDivNatS0(vuz212, vuz213, Zero, Zero) -> new_primDivNatS00(vuz212, vuz213) 114.10/79.16 new_primDivNatS0(vuz212, vuz213, Succ(vuz2140), Succ(vuz2150)) -> new_primDivNatS0(vuz212, vuz213, vuz2140, vuz2150) 114.10/79.16 new_primDivNatS(Succ(Zero), Zero) -> new_primDivNatS(new_primMinusNatS2, Zero) 114.10/79.16 new_primDivNatS(Succ(Succ(vuz15800)), Zero) -> new_primDivNatS(new_primMinusNatS1(vuz15800), Zero) 114.10/79.16 new_primDivNatS00(vuz212, vuz213) -> new_primDivNatS(new_primMinusNatS0(vuz212, vuz213), Succ(vuz213)) 114.10/79.16 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS1(vuz15800) -> Succ(vuz15800) 114.10/79.16 new_primMinusNatS2 -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primMinusNatS2 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 new_primMinusNatS1(x0) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (416) DependencyGraphProof (EQUIVALENT) 114.10/79.16 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 1 less node. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (417) 114.10/79.16 Complex Obligation (AND) 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (418) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_primDivNatS(Succ(Succ(vuz15800)), Zero) -> new_primDivNatS(new_primMinusNatS1(vuz15800), Zero) 114.10/79.16 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS1(vuz15800) -> Succ(vuz15800) 114.10/79.16 new_primMinusNatS2 -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primMinusNatS2 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 new_primMinusNatS1(x0) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (419) MRRProof (EQUIVALENT) 114.10/79.16 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. 114.10/79.16 114.10/79.16 Strictly oriented dependency pairs: 114.10/79.16 114.10/79.16 new_primDivNatS(Succ(Succ(vuz15800)), Zero) -> new_primDivNatS(new_primMinusNatS1(vuz15800), Zero) 114.10/79.16 114.10/79.16 Strictly oriented rules of the TRS R: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS1(vuz15800) -> Succ(vuz15800) 114.10/79.16 new_primMinusNatS2 -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 Used ordering: Polynomial interpretation [POLO]: 114.10/79.16 114.10/79.16 POL(Succ(x_1)) = 1 + 2*x_1 114.10/79.16 POL(Zero) = 1 114.10/79.16 POL(new_primDivNatS(x_1, x_2)) = x_1 + x_2 114.10/79.16 POL(new_primMinusNatS0(x_1, x_2)) = x_1 + x_2 114.10/79.16 POL(new_primMinusNatS1(x_1)) = 2 + 2*x_1 114.10/79.16 POL(new_primMinusNatS2) = 2 114.10/79.16 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (420) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 P is empty. 114.10/79.16 R is empty. 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primMinusNatS2 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 new_primMinusNatS1(x0) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (421) PisEmptyProof (EQUIVALENT) 114.10/79.16 The TRS P is empty. Hence, there is no (P,Q,R) chain. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (422) 114.10/79.16 YES 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (423) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_primDivNatS0(vuz212, vuz213, Succ(vuz2140), Zero) -> new_primDivNatS(new_primMinusNatS0(vuz212, vuz213), Succ(vuz213)) 114.10/79.16 new_primDivNatS(Succ(Succ(vuz15800)), Succ(vuz159000)) -> new_primDivNatS0(vuz15800, vuz159000, vuz15800, vuz159000) 114.10/79.16 new_primDivNatS0(vuz212, vuz213, Zero, Zero) -> new_primDivNatS00(vuz212, vuz213) 114.10/79.16 new_primDivNatS00(vuz212, vuz213) -> new_primDivNatS(new_primMinusNatS0(vuz212, vuz213), Succ(vuz213)) 114.10/79.16 new_primDivNatS0(vuz212, vuz213, Succ(vuz2140), Succ(vuz2150)) -> new_primDivNatS0(vuz212, vuz213, vuz2140, vuz2150) 114.10/79.16 114.10/79.16 The TRS R consists of the following rules: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS1(vuz15800) -> Succ(vuz15800) 114.10/79.16 new_primMinusNatS2 -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 114.10/79.16 The set Q consists of the following terms: 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Zero) 114.10/79.16 new_primMinusNatS2 114.10/79.16 new_primMinusNatS0(Succ(x0), Succ(x1)) 114.10/79.16 new_primMinusNatS0(Zero, Succ(x0)) 114.10/79.16 new_primMinusNatS0(Succ(x0), Zero) 114.10/79.16 new_primMinusNatS1(x0) 114.10/79.16 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (424) QDPSizeChangeProof (EQUIVALENT) 114.10/79.16 We used the following order together with the size-change analysis [AAECC05] to show that there are no infinite chains for this DP problem. 114.10/79.16 114.10/79.16 Order:Polynomial interpretation [POLO]: 114.10/79.16 114.10/79.16 POL(Succ(x_1)) = 1 + x_1 114.10/79.16 POL(Zero) = 1 114.10/79.16 POL(new_primMinusNatS0(x_1, x_2)) = x_1 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 From the DPs we obtained the following set of size-change graphs: 114.10/79.16 *new_primDivNatS(Succ(Succ(vuz15800)), Succ(vuz159000)) -> new_primDivNatS0(vuz15800, vuz159000, vuz15800, vuz159000) (allowed arguments on rhs = {1, 2, 3, 4}) 114.10/79.16 The graph contains the following edges 1 > 1, 2 > 2, 1 > 3, 2 > 4 114.10/79.16 114.10/79.16 114.10/79.16 *new_primDivNatS0(vuz212, vuz213, Succ(vuz2140), Succ(vuz2150)) -> new_primDivNatS0(vuz212, vuz213, vuz2140, vuz2150) (allowed arguments on rhs = {1, 2, 3, 4}) 114.10/79.16 The graph contains the following edges 1 >= 1, 2 >= 2, 3 > 3, 4 > 4 114.10/79.16 114.10/79.16 114.10/79.16 *new_primDivNatS0(vuz212, vuz213, Succ(vuz2140), Zero) -> new_primDivNatS(new_primMinusNatS0(vuz212, vuz213), Succ(vuz213)) (allowed arguments on rhs = {1, 2}) 114.10/79.16 The graph contains the following edges 1 >= 1 114.10/79.16 114.10/79.16 114.10/79.16 *new_primDivNatS0(vuz212, vuz213, Zero, Zero) -> new_primDivNatS00(vuz212, vuz213) (allowed arguments on rhs = {1, 2}) 114.10/79.16 The graph contains the following edges 1 >= 1, 2 >= 2 114.10/79.16 114.10/79.16 114.10/79.16 *new_primDivNatS00(vuz212, vuz213) -> new_primDivNatS(new_primMinusNatS0(vuz212, vuz213), Succ(vuz213)) (allowed arguments on rhs = {1, 2}) 114.10/79.16 The graph contains the following edges 1 >= 1 114.10/79.16 114.10/79.16 114.10/79.16 114.10/79.16 We oriented the following set of usable rules [AAECC05,FROCOS05]. 114.10/79.16 114.10/79.16 new_primMinusNatS0(Zero, Zero) -> Zero 114.10/79.16 new_primMinusNatS0(Zero, Succ(vuz2130)) -> Zero 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Zero) -> Succ(vuz2120) 114.10/79.16 new_primMinusNatS0(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS0(vuz2120, vuz2130) 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (425) 114.10/79.16 YES 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (426) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_primQuotInt0(Succ(vuz850), Succ(vuz950), vuz54) -> new_primQuotInt0(vuz850, vuz950, vuz54) 114.10/79.16 114.10/79.16 R is empty. 114.10/79.16 Q is empty. 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (427) QDPSizeChangeProof (EQUIVALENT) 114.10/79.16 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. 114.10/79.16 114.10/79.16 From the DPs we obtained the following set of size-change graphs: 114.10/79.16 *new_primQuotInt0(Succ(vuz850), Succ(vuz950), vuz54) -> new_primQuotInt0(vuz850, vuz950, vuz54) 114.10/79.16 The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3 114.10/79.16 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (428) 114.10/79.16 YES 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (429) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_primMinusNatS(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS(vuz2120, vuz2130) 114.10/79.16 114.10/79.16 R is empty. 114.10/79.16 Q is empty. 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (430) QDPSizeChangeProof (EQUIVALENT) 114.10/79.16 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. 114.10/79.16 114.10/79.16 From the DPs we obtained the following set of size-change graphs: 114.10/79.16 *new_primMinusNatS(Succ(vuz2120), Succ(vuz2130)) -> new_primMinusNatS(vuz2120, vuz2130) 114.10/79.16 The graph contains the following edges 1 > 1, 2 > 2 114.10/79.16 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (431) 114.10/79.16 YES 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (432) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_primPlusNat(Succ(vuz4300), Succ(vuz41000)) -> new_primPlusNat(vuz4300, vuz41000) 114.10/79.16 114.10/79.16 R is empty. 114.10/79.16 Q is empty. 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (433) QDPSizeChangeProof (EQUIVALENT) 114.10/79.16 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. 114.10/79.16 114.10/79.16 From the DPs we obtained the following set of size-change graphs: 114.10/79.16 *new_primPlusNat(Succ(vuz4300), Succ(vuz41000)) -> new_primPlusNat(vuz4300, vuz41000) 114.10/79.16 The graph contains the following edges 1 > 1, 2 > 2 114.10/79.16 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (434) 114.10/79.16 YES 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (435) 114.10/79.16 Obligation: 114.10/79.16 Q DP problem: 114.10/79.16 The TRS P consists of the following rules: 114.10/79.16 114.10/79.16 new_gcd20(Succ(vuz2240), Succ(vuz2340), vuz54) -> new_gcd20(vuz2240, vuz2340, vuz54) 114.10/79.16 114.10/79.16 R is empty. 114.10/79.16 Q is empty. 114.10/79.16 We have to consider all minimal (P,Q,R)-chains. 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (436) QDPSizeChangeProof (EQUIVALENT) 114.10/79.16 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. 114.10/79.16 114.10/79.16 From the DPs we obtained the following set of size-change graphs: 114.10/79.16 *new_gcd20(Succ(vuz2240), Succ(vuz2340), vuz54) -> new_gcd20(vuz2240, vuz2340, vuz54) 114.10/79.16 The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3 114.10/79.16 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (437) 114.10/79.16 YES 114.10/79.16 114.10/79.16 ---------------------------------------- 114.10/79.16 114.10/79.16 (438) Narrow (COMPLETE) 114.10/79.16 Haskell To QDPs 114.10/79.16 114.10/79.16 digraph dp_graph { 114.10/79.16 node [outthreshold=100, inthreshold=100];1[label="(+)",fontsize=16,color="grey",shape="box"];1 -> 3[label="",style="dashed", color="grey", weight=3]; 114.10/79.16 3[label="(+) vuz3",fontsize=16,color="grey",shape="box"];3 -> 4[label="",style="dashed", color="grey", weight=3]; 114.10/79.16 4[label="(+) vuz3 vuz4",fontsize=16,color="burlywood",shape="triangle"];4833[label="vuz3/vuz30 :% vuz31",fontsize=10,color="white",style="solid",shape="box"];4 -> 4833[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4833 -> 5[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 5[label="(+) vuz30 :% vuz31 vuz4",fontsize=16,color="burlywood",shape="box"];4834[label="vuz4/vuz40 :% vuz41",fontsize=10,color="white",style="solid",shape="box"];5 -> 4834[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4834 -> 6[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 6[label="(+) vuz30 :% vuz31 vuz40 :% vuz41",fontsize=16,color="black",shape="box"];6 -> 7[label="",style="solid", color="black", weight=3]; 114.10/79.16 7[label="reduce (vuz30 * vuz41 + vuz40 * vuz31) (vuz31 * vuz41)",fontsize=16,color="black",shape="box"];7 -> 8[label="",style="solid", color="black", weight=3]; 114.10/79.16 8[label="reduce2 (vuz30 * vuz41 + vuz40 * vuz31) (vuz31 * vuz41)",fontsize=16,color="black",shape="box"];8 -> 9[label="",style="solid", color="black", weight=3]; 114.10/79.16 9[label="reduce2Reduce1 (vuz30 * vuz41 + vuz40 * vuz31) (vuz31 * vuz41) (vuz30 * vuz41 + vuz40 * vuz31) (vuz31 * vuz41) (vuz31 * vuz41 == fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];9 -> 10[label="",style="solid", color="black", weight=3]; 114.10/79.16 10[label="reduce2Reduce1 (vuz30 * vuz41 + vuz40 * vuz31) (vuz31 * vuz41) (vuz30 * vuz41 + vuz40 * vuz31) (vuz31 * vuz41) (primEqInt (vuz31 * vuz41) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];10 -> 11[label="",style="solid", color="black", weight=3]; 114.10/79.16 11[label="reduce2Reduce1 (vuz30 * vuz41 + vuz40 * vuz31) (primMulInt vuz31 vuz41) (vuz30 * vuz41 + vuz40 * vuz31) (primMulInt vuz31 vuz41) (primEqInt (primMulInt vuz31 vuz41) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4835[label="vuz31/Pos vuz310",fontsize=10,color="white",style="solid",shape="box"];11 -> 4835[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4835 -> 12[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4836[label="vuz31/Neg vuz310",fontsize=10,color="white",style="solid",shape="box"];11 -> 4836[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4836 -> 13[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 12[label="reduce2Reduce1 (vuz30 * vuz41 + vuz40 * Pos vuz310) (primMulInt (Pos vuz310) vuz41) (vuz30 * vuz41 + vuz40 * Pos vuz310) (primMulInt (Pos vuz310) vuz41) (primEqInt (primMulInt (Pos vuz310) vuz41) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4837[label="vuz41/Pos vuz410",fontsize=10,color="white",style="solid",shape="box"];12 -> 4837[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4837 -> 14[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4838[label="vuz41/Neg vuz410",fontsize=10,color="white",style="solid",shape="box"];12 -> 4838[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4838 -> 15[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 13[label="reduce2Reduce1 (vuz30 * vuz41 + vuz40 * Neg vuz310) (primMulInt (Neg vuz310) vuz41) (vuz30 * vuz41 + vuz40 * Neg vuz310) (primMulInt (Neg vuz310) vuz41) (primEqInt (primMulInt (Neg vuz310) vuz41) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4839[label="vuz41/Pos vuz410",fontsize=10,color="white",style="solid",shape="box"];13 -> 4839[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4839 -> 16[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4840[label="vuz41/Neg vuz410",fontsize=10,color="white",style="solid",shape="box"];13 -> 4840[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4840 -> 17[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 14[label="reduce2Reduce1 (vuz30 * Pos vuz410 + vuz40 * Pos vuz310) (primMulInt (Pos vuz310) (Pos vuz410)) (vuz30 * Pos vuz410 + vuz40 * Pos vuz310) (primMulInt (Pos vuz310) (Pos vuz410)) (primEqInt (primMulInt (Pos vuz310) (Pos vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];14 -> 18[label="",style="solid", color="black", weight=3]; 114.10/79.16 15[label="reduce2Reduce1 (vuz30 * Neg vuz410 + vuz40 * Pos vuz310) (primMulInt (Pos vuz310) (Neg vuz410)) (vuz30 * Neg vuz410 + vuz40 * Pos vuz310) (primMulInt (Pos vuz310) (Neg vuz410)) (primEqInt (primMulInt (Pos vuz310) (Neg vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];15 -> 19[label="",style="solid", color="black", weight=3]; 114.10/79.16 16[label="reduce2Reduce1 (vuz30 * Pos vuz410 + vuz40 * Neg vuz310) (primMulInt (Neg vuz310) (Pos vuz410)) (vuz30 * Pos vuz410 + vuz40 * Neg vuz310) (primMulInt (Neg vuz310) (Pos vuz410)) (primEqInt (primMulInt (Neg vuz310) (Pos vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];16 -> 20[label="",style="solid", color="black", weight=3]; 114.10/79.16 17[label="reduce2Reduce1 (vuz30 * Neg vuz410 + vuz40 * Neg vuz310) (primMulInt (Neg vuz310) (Neg vuz410)) (vuz30 * Neg vuz410 + vuz40 * Neg vuz310) (primMulInt (Neg vuz310) (Neg vuz410)) (primEqInt (primMulInt (Neg vuz310) (Neg vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];17 -> 21[label="",style="solid", color="black", weight=3]; 114.10/79.16 18[label="reduce2Reduce1 (vuz30 * Pos vuz410 + vuz40 * Pos vuz310) (Pos (primMulNat vuz310 vuz410)) (vuz30 * Pos vuz410 + vuz40 * Pos vuz310) (Pos (primMulNat vuz310 vuz410)) (primEqInt (Pos (primMulNat vuz310 vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4841[label="vuz310/Succ vuz3100",fontsize=10,color="white",style="solid",shape="box"];18 -> 4841[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4841 -> 22[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4842[label="vuz310/Zero",fontsize=10,color="white",style="solid",shape="box"];18 -> 4842[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4842 -> 23[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 19[label="reduce2Reduce1 (vuz30 * Neg vuz410 + vuz40 * Pos vuz310) (Neg (primMulNat vuz310 vuz410)) (vuz30 * Neg vuz410 + vuz40 * Pos vuz310) (Neg (primMulNat vuz310 vuz410)) (primEqInt (Neg (primMulNat vuz310 vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4843[label="vuz310/Succ vuz3100",fontsize=10,color="white",style="solid",shape="box"];19 -> 4843[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4843 -> 24[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4844[label="vuz310/Zero",fontsize=10,color="white",style="solid",shape="box"];19 -> 4844[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4844 -> 25[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 20[label="reduce2Reduce1 (vuz30 * Pos vuz410 + vuz40 * Neg vuz310) (Neg (primMulNat vuz310 vuz410)) (vuz30 * Pos vuz410 + vuz40 * Neg vuz310) (Neg (primMulNat vuz310 vuz410)) (primEqInt (Neg (primMulNat vuz310 vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4845[label="vuz310/Succ vuz3100",fontsize=10,color="white",style="solid",shape="box"];20 -> 4845[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4845 -> 26[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4846[label="vuz310/Zero",fontsize=10,color="white",style="solid",shape="box"];20 -> 4846[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4846 -> 27[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 21[label="reduce2Reduce1 (vuz30 * Neg vuz410 + vuz40 * Neg vuz310) (Pos (primMulNat vuz310 vuz410)) (vuz30 * Neg vuz410 + vuz40 * Neg vuz310) (Pos (primMulNat vuz310 vuz410)) (primEqInt (Pos (primMulNat vuz310 vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4847[label="vuz310/Succ vuz3100",fontsize=10,color="white",style="solid",shape="box"];21 -> 4847[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4847 -> 28[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4848[label="vuz310/Zero",fontsize=10,color="white",style="solid",shape="box"];21 -> 4848[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4848 -> 29[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 22[label="reduce2Reduce1 (vuz30 * Pos vuz410 + vuz40 * Pos (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) vuz410)) (vuz30 * Pos vuz410 + vuz40 * Pos (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) vuz410)) (primEqInt (Pos (primMulNat (Succ vuz3100) vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4849[label="vuz410/Succ vuz4100",fontsize=10,color="white",style="solid",shape="box"];22 -> 4849[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4849 -> 30[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4850[label="vuz410/Zero",fontsize=10,color="white",style="solid",shape="box"];22 -> 4850[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4850 -> 31[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 23[label="reduce2Reduce1 (vuz30 * Pos vuz410 + vuz40 * Pos Zero) (Pos (primMulNat Zero vuz410)) (vuz30 * Pos vuz410 + vuz40 * Pos Zero) (Pos (primMulNat Zero vuz410)) (primEqInt (Pos (primMulNat Zero vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4851[label="vuz410/Succ vuz4100",fontsize=10,color="white",style="solid",shape="box"];23 -> 4851[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4851 -> 32[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4852[label="vuz410/Zero",fontsize=10,color="white",style="solid",shape="box"];23 -> 4852[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4852 -> 33[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 24[label="reduce2Reduce1 (vuz30 * Neg vuz410 + vuz40 * Pos (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) vuz410)) (vuz30 * Neg vuz410 + vuz40 * Pos (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) vuz410)) (primEqInt (Neg (primMulNat (Succ vuz3100) vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4853[label="vuz410/Succ vuz4100",fontsize=10,color="white",style="solid",shape="box"];24 -> 4853[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4853 -> 34[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4854[label="vuz410/Zero",fontsize=10,color="white",style="solid",shape="box"];24 -> 4854[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4854 -> 35[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 25[label="reduce2Reduce1 (vuz30 * Neg vuz410 + vuz40 * Pos Zero) (Neg (primMulNat Zero vuz410)) (vuz30 * Neg vuz410 + vuz40 * Pos Zero) (Neg (primMulNat Zero vuz410)) (primEqInt (Neg (primMulNat Zero vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4855[label="vuz410/Succ vuz4100",fontsize=10,color="white",style="solid",shape="box"];25 -> 4855[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4855 -> 36[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4856[label="vuz410/Zero",fontsize=10,color="white",style="solid",shape="box"];25 -> 4856[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4856 -> 37[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 26[label="reduce2Reduce1 (vuz30 * Pos vuz410 + vuz40 * Neg (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) vuz410)) (vuz30 * Pos vuz410 + vuz40 * Neg (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) vuz410)) (primEqInt (Neg (primMulNat (Succ vuz3100) vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4857[label="vuz410/Succ vuz4100",fontsize=10,color="white",style="solid",shape="box"];26 -> 4857[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4857 -> 38[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4858[label="vuz410/Zero",fontsize=10,color="white",style="solid",shape="box"];26 -> 4858[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4858 -> 39[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 27[label="reduce2Reduce1 (vuz30 * Pos vuz410 + vuz40 * Neg Zero) (Neg (primMulNat Zero vuz410)) (vuz30 * Pos vuz410 + vuz40 * Neg Zero) (Neg (primMulNat Zero vuz410)) (primEqInt (Neg (primMulNat Zero vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4859[label="vuz410/Succ vuz4100",fontsize=10,color="white",style="solid",shape="box"];27 -> 4859[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4859 -> 40[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4860[label="vuz410/Zero",fontsize=10,color="white",style="solid",shape="box"];27 -> 4860[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4860 -> 41[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 28[label="reduce2Reduce1 (vuz30 * Neg vuz410 + vuz40 * Neg (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) vuz410)) (vuz30 * Neg vuz410 + vuz40 * Neg (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) vuz410)) (primEqInt (Pos (primMulNat (Succ vuz3100) vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4861[label="vuz410/Succ vuz4100",fontsize=10,color="white",style="solid",shape="box"];28 -> 4861[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4861 -> 42[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4862[label="vuz410/Zero",fontsize=10,color="white",style="solid",shape="box"];28 -> 4862[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4862 -> 43[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 29[label="reduce2Reduce1 (vuz30 * Neg vuz410 + vuz40 * Neg Zero) (Pos (primMulNat Zero vuz410)) (vuz30 * Neg vuz410 + vuz40 * Neg Zero) (Pos (primMulNat Zero vuz410)) (primEqInt (Pos (primMulNat Zero vuz410)) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="box"];4863[label="vuz410/Succ vuz4100",fontsize=10,color="white",style="solid",shape="box"];29 -> 4863[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4863 -> 44[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4864[label="vuz410/Zero",fontsize=10,color="white",style="solid",shape="box"];29 -> 4864[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4864 -> 45[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 30[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) (Succ vuz4100))) (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) (Succ vuz4100))) (primEqInt (Pos (primMulNat (Succ vuz3100) (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];30 -> 46[label="",style="solid", color="black", weight=3]; 114.10/79.16 31[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Pos (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) Zero)) (vuz30 * Pos Zero + vuz40 * Pos (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) Zero)) (primEqInt (Pos (primMulNat (Succ vuz3100) Zero)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];31 -> 47[label="",style="solid", color="black", weight=3]; 114.10/79.16 32[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos Zero) (Pos (primMulNat Zero (Succ vuz4100))) (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos Zero) (Pos (primMulNat Zero (Succ vuz4100))) (primEqInt (Pos (primMulNat Zero (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];32 -> 48[label="",style="solid", color="black", weight=3]; 114.10/79.16 33[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Pos Zero) (Pos (primMulNat Zero Zero)) (vuz30 * Pos Zero + vuz40 * Pos Zero) (Pos (primMulNat Zero Zero)) (primEqInt (Pos (primMulNat Zero Zero)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];33 -> 49[label="",style="solid", color="black", weight=3]; 114.10/79.16 34[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) (Succ vuz4100))) (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) (Succ vuz4100))) (primEqInt (Neg (primMulNat (Succ vuz3100) (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];34 -> 50[label="",style="solid", color="black", weight=3]; 114.10/79.16 35[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Pos (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) Zero)) (vuz30 * Neg Zero + vuz40 * Pos (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) Zero)) (primEqInt (Neg (primMulNat (Succ vuz3100) Zero)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];35 -> 51[label="",style="solid", color="black", weight=3]; 114.10/79.16 36[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos Zero) (Neg (primMulNat Zero (Succ vuz4100))) (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos Zero) (Neg (primMulNat Zero (Succ vuz4100))) (primEqInt (Neg (primMulNat Zero (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];36 -> 52[label="",style="solid", color="black", weight=3]; 114.10/79.16 37[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Pos Zero) (Neg (primMulNat Zero Zero)) (vuz30 * Neg Zero + vuz40 * Pos Zero) (Neg (primMulNat Zero Zero)) (primEqInt (Neg (primMulNat Zero Zero)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];37 -> 53[label="",style="solid", color="black", weight=3]; 114.10/79.16 38[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) (Succ vuz4100))) (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) (Succ vuz4100))) (primEqInt (Neg (primMulNat (Succ vuz3100) (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];38 -> 54[label="",style="solid", color="black", weight=3]; 114.10/79.16 39[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Neg (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) Zero)) (vuz30 * Pos Zero + vuz40 * Neg (Succ vuz3100)) (Neg (primMulNat (Succ vuz3100) Zero)) (primEqInt (Neg (primMulNat (Succ vuz3100) Zero)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];39 -> 55[label="",style="solid", color="black", weight=3]; 114.10/79.16 40[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg Zero) (Neg (primMulNat Zero (Succ vuz4100))) (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg Zero) (Neg (primMulNat Zero (Succ vuz4100))) (primEqInt (Neg (primMulNat Zero (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];40 -> 56[label="",style="solid", color="black", weight=3]; 114.10/79.16 41[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Neg Zero) (Neg (primMulNat Zero Zero)) (vuz30 * Pos Zero + vuz40 * Neg Zero) (Neg (primMulNat Zero Zero)) (primEqInt (Neg (primMulNat Zero Zero)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];41 -> 57[label="",style="solid", color="black", weight=3]; 114.10/79.16 42[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) (Succ vuz4100))) (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) (Succ vuz4100))) (primEqInt (Pos (primMulNat (Succ vuz3100) (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];42 -> 58[label="",style="solid", color="black", weight=3]; 114.10/79.16 43[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Neg (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) Zero)) (vuz30 * Neg Zero + vuz40 * Neg (Succ vuz3100)) (Pos (primMulNat (Succ vuz3100) Zero)) (primEqInt (Pos (primMulNat (Succ vuz3100) Zero)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];43 -> 59[label="",style="solid", color="black", weight=3]; 114.10/79.16 44[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg Zero) (Pos (primMulNat Zero (Succ vuz4100))) (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg Zero) (Pos (primMulNat Zero (Succ vuz4100))) (primEqInt (Pos (primMulNat Zero (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];44 -> 60[label="",style="solid", color="black", weight=3]; 114.10/79.16 45[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Neg Zero) (Pos (primMulNat Zero Zero)) (vuz30 * Neg Zero + vuz40 * Neg Zero) (Pos (primMulNat Zero Zero)) (primEqInt (Pos (primMulNat Zero Zero)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];45 -> 61[label="",style="solid", color="black", weight=3]; 114.10/79.16 46 -> 891[label="",style="dashed", color="red", weight=0]; 114.10/79.16 46[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos (Succ vuz3100)) (Pos (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos (Succ vuz3100)) (Pos (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (primEqInt (Pos (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="magenta"];46 -> 892[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 46 -> 893[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 46 -> 894[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 46 -> 895[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 46 -> 896[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 46 -> 897[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 46 -> 898[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 47[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Pos (Succ vuz3100)) (Pos Zero) (vuz30 * Pos Zero + vuz40 * Pos (Succ vuz3100)) (Pos Zero) (primEqInt (Pos Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];47 -> 64[label="",style="solid", color="black", weight=3]; 114.10/79.16 48[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos Zero) (Pos Zero) (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos Zero) (Pos Zero) (primEqInt (Pos Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];48 -> 65[label="",style="solid", color="black", weight=3]; 114.10/79.16 49[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Pos Zero) (Pos Zero) (vuz30 * Pos Zero + vuz40 * Pos Zero) (Pos Zero) (primEqInt (Pos Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];49 -> 66[label="",style="solid", color="black", weight=3]; 114.10/79.16 50 -> 707[label="",style="dashed", color="red", weight=0]; 114.10/79.16 50[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos (Succ vuz3100)) (Neg (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos (Succ vuz3100)) (Neg (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (primEqInt (Neg (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="magenta"];50 -> 708[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 50 -> 709[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 50 -> 710[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 50 -> 711[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 50 -> 712[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 50 -> 713[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 50 -> 714[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 51[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Pos (Succ vuz3100)) (Neg Zero) (vuz30 * Neg Zero + vuz40 * Pos (Succ vuz3100)) (Neg Zero) (primEqInt (Neg Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];51 -> 69[label="",style="solid", color="black", weight=3]; 114.10/79.16 52[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos Zero) (Neg Zero) (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos Zero) (Neg Zero) (primEqInt (Neg Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];52 -> 70[label="",style="solid", color="black", weight=3]; 114.10/79.16 53[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Pos Zero) (Neg Zero) (vuz30 * Neg Zero + vuz40 * Pos Zero) (Neg Zero) (primEqInt (Neg Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];53 -> 71[label="",style="solid", color="black", weight=3]; 114.10/79.16 54 -> 750[label="",style="dashed", color="red", weight=0]; 114.10/79.16 54[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg (Succ vuz3100)) (Neg (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg (Succ vuz3100)) (Neg (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (primEqInt (Neg (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="magenta"];54 -> 751[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 54 -> 752[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 54 -> 753[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 54 -> 754[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 54 -> 755[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 54 -> 756[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 54 -> 757[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 55[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Neg (Succ vuz3100)) (Neg Zero) (vuz30 * Pos Zero + vuz40 * Neg (Succ vuz3100)) (Neg Zero) (primEqInt (Neg Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];55 -> 74[label="",style="solid", color="black", weight=3]; 114.10/79.16 56[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg Zero) (Neg Zero) (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg Zero) (Neg Zero) (primEqInt (Neg Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];56 -> 75[label="",style="solid", color="black", weight=3]; 114.10/79.16 57[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Neg Zero) (Neg Zero) (vuz30 * Pos Zero + vuz40 * Neg Zero) (Neg Zero) (primEqInt (Neg Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];57 -> 76[label="",style="solid", color="black", weight=3]; 114.10/79.16 58 -> 803[label="",style="dashed", color="red", weight=0]; 114.10/79.16 58[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg (Succ vuz3100)) (Pos (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg (Succ vuz3100)) (Pos (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (primEqInt (Pos (primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100))) (fromInt (Pos Zero)))",fontsize=16,color="magenta"];58 -> 804[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 58 -> 805[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 58 -> 806[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 58 -> 807[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 58 -> 808[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 58 -> 809[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 58 -> 810[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 59[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Neg (Succ vuz3100)) (Pos Zero) (vuz30 * Neg Zero + vuz40 * Neg (Succ vuz3100)) (Pos Zero) (primEqInt (Pos Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];59 -> 79[label="",style="solid", color="black", weight=3]; 114.10/79.16 60[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg Zero) (Pos Zero) (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg Zero) (Pos Zero) (primEqInt (Pos Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];60 -> 80[label="",style="solid", color="black", weight=3]; 114.10/79.16 61[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Neg Zero) (Pos Zero) (vuz30 * Neg Zero + vuz40 * Neg Zero) (Pos Zero) (primEqInt (Pos Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];61 -> 81[label="",style="solid", color="black", weight=3]; 114.10/79.16 892[label="vuz4100",fontsize=16,color="green",shape="box"];893[label="vuz3100",fontsize=16,color="green",shape="box"];894 -> 691[label="",style="dashed", color="red", weight=0]; 114.10/79.16 894[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];894 -> 1062[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 894 -> 1063[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 895[label="vuz30",fontsize=16,color="green",shape="box"];896[label="vuz40",fontsize=16,color="green",shape="box"];897 -> 691[label="",style="dashed", color="red", weight=0]; 114.10/79.16 897[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];897 -> 1064[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 897 -> 1065[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 898 -> 691[label="",style="dashed", color="red", weight=0]; 114.10/79.16 898[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];898 -> 1066[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 898 -> 1067[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 891[label="reduce2Reduce1 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) (primEqInt (Pos vuz55) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="triangle"];4865[label="vuz55/Succ vuz550",fontsize=10,color="white",style="solid",shape="box"];891 -> 4865[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4865 -> 1068[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4866[label="vuz55/Zero",fontsize=10,color="white",style="solid",shape="box"];891 -> 4866[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4866 -> 1069[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 64[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Pos (Succ vuz3100)) (Pos Zero) (vuz30 * Pos Zero + vuz40 * Pos (Succ vuz3100)) (Pos Zero) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];64 -> 84[label="",style="solid", color="black", weight=3]; 114.10/79.16 65[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos Zero) (Pos Zero) (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos Zero) (Pos Zero) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];65 -> 85[label="",style="solid", color="black", weight=3]; 114.10/79.16 66[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Pos Zero) (Pos Zero) (vuz30 * Pos Zero + vuz40 * Pos Zero) (Pos Zero) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];66 -> 86[label="",style="solid", color="black", weight=3]; 114.10/79.16 708[label="vuz4100",fontsize=16,color="green",shape="box"];709[label="vuz40",fontsize=16,color="green",shape="box"];710 -> 691[label="",style="dashed", color="red", weight=0]; 114.10/79.16 710[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];710 -> 745[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 711[label="vuz3100",fontsize=16,color="green",shape="box"];712 -> 691[label="",style="dashed", color="red", weight=0]; 114.10/79.16 712[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];712 -> 746[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 713[label="vuz30",fontsize=16,color="green",shape="box"];714 -> 691[label="",style="dashed", color="red", weight=0]; 114.10/79.16 714[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];714 -> 747[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 707[label="reduce2Reduce1 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) (primEqInt (Neg vuz46) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="triangle"];4867[label="vuz46/Succ vuz460",fontsize=10,color="white",style="solid",shape="box"];707 -> 4867[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4867 -> 748[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4868[label="vuz46/Zero",fontsize=10,color="white",style="solid",shape="box"];707 -> 4868[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4868 -> 749[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 69[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Pos (Succ vuz3100)) (Neg Zero) (vuz30 * Neg Zero + vuz40 * Pos (Succ vuz3100)) (Neg Zero) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];69 -> 89[label="",style="solid", color="black", weight=3]; 114.10/79.16 70[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos Zero) (Neg Zero) (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos Zero) (Neg Zero) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];70 -> 90[label="",style="solid", color="black", weight=3]; 114.10/79.16 71[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Pos Zero) (Neg Zero) (vuz30 * Neg Zero + vuz40 * Pos Zero) (Neg Zero) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];71 -> 91[label="",style="solid", color="black", weight=3]; 114.10/79.16 751[label="vuz30",fontsize=16,color="green",shape="box"];752[label="vuz4100",fontsize=16,color="green",shape="box"];753 -> 691[label="",style="dashed", color="red", weight=0]; 114.10/79.16 753[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];753 -> 788[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 753 -> 789[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 754[label="vuz40",fontsize=16,color="green",shape="box"];755 -> 691[label="",style="dashed", color="red", weight=0]; 114.10/79.16 755[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];755 -> 790[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 755 -> 791[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 756[label="vuz3100",fontsize=16,color="green",shape="box"];757 -> 691[label="",style="dashed", color="red", weight=0]; 114.10/79.16 757[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];757 -> 792[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 757 -> 793[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 750[label="reduce2Reduce1 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) (primEqInt (Neg vuz49) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="triangle"];4869[label="vuz49/Succ vuz490",fontsize=10,color="white",style="solid",shape="box"];750 -> 4869[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4869 -> 794[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4870[label="vuz49/Zero",fontsize=10,color="white",style="solid",shape="box"];750 -> 4870[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4870 -> 795[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 74[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Neg (Succ vuz3100)) (Neg Zero) (vuz30 * Pos Zero + vuz40 * Neg (Succ vuz3100)) (Neg Zero) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];74 -> 94[label="",style="solid", color="black", weight=3]; 114.10/79.16 75[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg Zero) (Neg Zero) (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg Zero) (Neg Zero) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];75 -> 95[label="",style="solid", color="black", weight=3]; 114.10/79.16 76[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Neg Zero) (Neg Zero) (vuz30 * Pos Zero + vuz40 * Neg Zero) (Neg Zero) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];76 -> 96[label="",style="solid", color="black", weight=3]; 114.10/79.16 804[label="vuz3100",fontsize=16,color="green",shape="box"];805 -> 691[label="",style="dashed", color="red", weight=0]; 114.10/79.16 805[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];805 -> 841[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 806[label="vuz30",fontsize=16,color="green",shape="box"];807[label="vuz40",fontsize=16,color="green",shape="box"];808 -> 691[label="",style="dashed", color="red", weight=0]; 114.10/79.16 808[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];808 -> 842[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 809[label="vuz4100",fontsize=16,color="green",shape="box"];810 -> 691[label="",style="dashed", color="red", weight=0]; 114.10/79.16 810[label="primPlusNat (primMulNat vuz3100 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];810 -> 843[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 803[label="reduce2Reduce1 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) (primEqInt (Pos vuz52) (fromInt (Pos Zero)))",fontsize=16,color="burlywood",shape="triangle"];4871[label="vuz52/Succ vuz520",fontsize=10,color="white",style="solid",shape="box"];803 -> 4871[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4871 -> 844[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4872[label="vuz52/Zero",fontsize=10,color="white",style="solid",shape="box"];803 -> 4872[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4872 -> 845[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 79[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Neg (Succ vuz3100)) (Pos Zero) (vuz30 * Neg Zero + vuz40 * Neg (Succ vuz3100)) (Pos Zero) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];79 -> 99[label="",style="solid", color="black", weight=3]; 114.10/79.16 80[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg Zero) (Pos Zero) (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg Zero) (Pos Zero) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];80 -> 100[label="",style="solid", color="black", weight=3]; 114.10/79.16 81[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Neg Zero) (Pos Zero) (vuz30 * Neg Zero + vuz40 * Neg Zero) (Pos Zero) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];81 -> 101[label="",style="solid", color="black", weight=3]; 114.10/79.16 1062 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1062[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];1062 -> 1077[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1062 -> 1078[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1063[label="vuz4100",fontsize=16,color="green",shape="box"];691[label="primPlusNat vuz43 (Succ vuz4100)",fontsize=16,color="burlywood",shape="triangle"];4873[label="vuz43/Succ vuz430",fontsize=10,color="white",style="solid",shape="box"];691 -> 4873[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4873 -> 797[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4874[label="vuz43/Zero",fontsize=10,color="white",style="solid",shape="box"];691 -> 4874[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4874 -> 798[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 1064 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1064[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];1064 -> 1079[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1064 -> 1080[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1065[label="vuz4100",fontsize=16,color="green",shape="box"];1066 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1066[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];1066 -> 1081[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1066 -> 1082[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1067[label="vuz4100",fontsize=16,color="green",shape="box"];1068[label="reduce2Reduce1 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) (primEqInt (Pos (Succ vuz550)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1068 -> 1083[label="",style="solid", color="black", weight=3]; 114.10/79.16 1069[label="reduce2Reduce1 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) (primEqInt (Pos Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];1069 -> 1084[label="",style="solid", color="black", weight=3]; 114.10/79.16 84[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Pos (Succ vuz3100)) (Pos Zero) (vuz30 * Pos Zero + vuz40 * Pos (Succ vuz3100)) (Pos Zero) True",fontsize=16,color="black",shape="box"];84 -> 105[label="",style="solid", color="black", weight=3]; 114.10/79.16 85[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos Zero) (Pos Zero) (vuz30 * Pos (Succ vuz4100) + vuz40 * Pos Zero) (Pos Zero) True",fontsize=16,color="black",shape="box"];85 -> 106[label="",style="solid", color="black", weight=3]; 114.10/79.16 86[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Pos Zero) (Pos Zero) (vuz30 * Pos Zero + vuz40 * Pos Zero) (Pos Zero) True",fontsize=16,color="black",shape="box"];86 -> 107[label="",style="solid", color="black", weight=3]; 114.10/79.16 745 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 745[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];745 -> 796[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 746 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 746[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];746 -> 799[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 747 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 747[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];747 -> 800[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 748[label="reduce2Reduce1 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) (primEqInt (Neg (Succ vuz460)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];748 -> 801[label="",style="solid", color="black", weight=3]; 114.10/79.16 749[label="reduce2Reduce1 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) (primEqInt (Neg Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];749 -> 802[label="",style="solid", color="black", weight=3]; 114.10/79.16 89[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Pos (Succ vuz3100)) (Neg Zero) (vuz30 * Neg Zero + vuz40 * Pos (Succ vuz3100)) (Neg Zero) True",fontsize=16,color="black",shape="box"];89 -> 111[label="",style="solid", color="black", weight=3]; 114.10/79.16 90[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos Zero) (Neg Zero) (vuz30 * Neg (Succ vuz4100) + vuz40 * Pos Zero) (Neg Zero) True",fontsize=16,color="black",shape="box"];90 -> 112[label="",style="solid", color="black", weight=3]; 114.10/79.16 91[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Pos Zero) (Neg Zero) (vuz30 * Neg Zero + vuz40 * Pos Zero) (Neg Zero) True",fontsize=16,color="black",shape="box"];91 -> 113[label="",style="solid", color="black", weight=3]; 114.10/79.16 788 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 788[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];788 -> 846[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 788 -> 847[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 789[label="vuz4100",fontsize=16,color="green",shape="box"];790 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 790[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];790 -> 848[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 790 -> 849[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 791[label="vuz4100",fontsize=16,color="green",shape="box"];792 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 792[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];792 -> 850[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 792 -> 851[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 793[label="vuz4100",fontsize=16,color="green",shape="box"];794[label="reduce2Reduce1 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) (primEqInt (Neg (Succ vuz490)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];794 -> 852[label="",style="solid", color="black", weight=3]; 114.10/79.16 795[label="reduce2Reduce1 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) (primEqInt (Neg Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];795 -> 853[label="",style="solid", color="black", weight=3]; 114.10/79.16 94[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Neg (Succ vuz3100)) (Neg Zero) (vuz30 * Pos Zero + vuz40 * Neg (Succ vuz3100)) (Neg Zero) True",fontsize=16,color="black",shape="box"];94 -> 117[label="",style="solid", color="black", weight=3]; 114.10/79.16 95[label="reduce2Reduce1 (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg Zero) (Neg Zero) (vuz30 * Pos (Succ vuz4100) + vuz40 * Neg Zero) (Neg Zero) True",fontsize=16,color="black",shape="box"];95 -> 118[label="",style="solid", color="black", weight=3]; 114.10/79.16 96[label="reduce2Reduce1 (vuz30 * Pos Zero + vuz40 * Neg Zero) (Neg Zero) (vuz30 * Pos Zero + vuz40 * Neg Zero) (Neg Zero) True",fontsize=16,color="black",shape="box"];96 -> 119[label="",style="solid", color="black", weight=3]; 114.10/79.16 841 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 841[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];841 -> 879[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 842 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 842[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];842 -> 880[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 843 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 843[label="primMulNat vuz3100 (Succ vuz4100)",fontsize=16,color="magenta"];843 -> 881[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 844[label="reduce2Reduce1 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) (primEqInt (Pos (Succ vuz520)) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];844 -> 882[label="",style="solid", color="black", weight=3]; 114.10/79.16 845[label="reduce2Reduce1 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) (primEqInt (Pos Zero) (fromInt (Pos Zero)))",fontsize=16,color="black",shape="box"];845 -> 883[label="",style="solid", color="black", weight=3]; 114.10/79.16 99[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Neg (Succ vuz3100)) (Pos Zero) (vuz30 * Neg Zero + vuz40 * Neg (Succ vuz3100)) (Pos Zero) True",fontsize=16,color="black",shape="box"];99 -> 123[label="",style="solid", color="black", weight=3]; 114.10/79.16 100[label="reduce2Reduce1 (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg Zero) (Pos Zero) (vuz30 * Neg (Succ vuz4100) + vuz40 * Neg Zero) (Pos Zero) True",fontsize=16,color="black",shape="box"];100 -> 124[label="",style="solid", color="black", weight=3]; 114.10/79.16 101[label="reduce2Reduce1 (vuz30 * Neg Zero + vuz40 * Neg Zero) (Pos Zero) (vuz30 * Neg Zero + vuz40 * Neg Zero) (Pos Zero) True",fontsize=16,color="black",shape="box"];101 -> 125[label="",style="solid", color="black", weight=3]; 114.10/79.16 1077[label="vuz3100",fontsize=16,color="green",shape="box"];1078[label="vuz4100",fontsize=16,color="green",shape="box"];358[label="primMulNat vuz31000 (Succ vuz4100)",fontsize=16,color="burlywood",shape="triangle"];4875[label="vuz31000/Succ vuz310000",fontsize=10,color="white",style="solid",shape="box"];358 -> 4875[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4875 -> 456[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4876[label="vuz31000/Zero",fontsize=10,color="white",style="solid",shape="box"];358 -> 4876[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4876 -> 457[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 797[label="primPlusNat (Succ vuz430) (Succ vuz4100)",fontsize=16,color="black",shape="box"];797 -> 854[label="",style="solid", color="black", weight=3]; 114.10/79.16 798[label="primPlusNat Zero (Succ vuz4100)",fontsize=16,color="black",shape="box"];798 -> 855[label="",style="solid", color="black", weight=3]; 114.10/79.16 1079[label="vuz3100",fontsize=16,color="green",shape="box"];1080[label="vuz4100",fontsize=16,color="green",shape="box"];1081[label="vuz3100",fontsize=16,color="green",shape="box"];1082[label="vuz4100",fontsize=16,color="green",shape="box"];1083[label="reduce2Reduce1 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) (primEqInt (Pos (Succ vuz550)) (Pos Zero))",fontsize=16,color="black",shape="box"];1083 -> 1093[label="",style="solid", color="black", weight=3]; 114.10/79.16 1084[label="reduce2Reduce1 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];1084 -> 1094[label="",style="solid", color="black", weight=3]; 114.10/79.16 105[label="error []",fontsize=16,color="black",shape="triangle"];105 -> 129[label="",style="solid", color="black", weight=3]; 114.10/79.16 106 -> 105[label="",style="dashed", color="red", weight=0]; 114.10/79.16 106[label="error []",fontsize=16,color="magenta"];107 -> 105[label="",style="dashed", color="red", weight=0]; 114.10/79.16 107[label="error []",fontsize=16,color="magenta"];796[label="vuz3100",fontsize=16,color="green",shape="box"];799[label="vuz3100",fontsize=16,color="green",shape="box"];800[label="vuz3100",fontsize=16,color="green",shape="box"];801[label="reduce2Reduce1 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) (primEqInt (Neg (Succ vuz460)) (Pos Zero))",fontsize=16,color="black",shape="box"];801 -> 856[label="",style="solid", color="black", weight=3]; 114.10/79.16 802[label="reduce2Reduce1 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];802 -> 857[label="",style="solid", color="black", weight=3]; 114.10/79.16 111 -> 105[label="",style="dashed", color="red", weight=0]; 114.10/79.16 111[label="error []",fontsize=16,color="magenta"];112 -> 105[label="",style="dashed", color="red", weight=0]; 114.10/79.16 112[label="error []",fontsize=16,color="magenta"];113 -> 105[label="",style="dashed", color="red", weight=0]; 114.10/79.16 113[label="error []",fontsize=16,color="magenta"];846[label="vuz3100",fontsize=16,color="green",shape="box"];847[label="vuz4100",fontsize=16,color="green",shape="box"];848[label="vuz3100",fontsize=16,color="green",shape="box"];849[label="vuz4100",fontsize=16,color="green",shape="box"];850[label="vuz3100",fontsize=16,color="green",shape="box"];851[label="vuz4100",fontsize=16,color="green",shape="box"];852[label="reduce2Reduce1 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) (primEqInt (Neg (Succ vuz490)) (Pos Zero))",fontsize=16,color="black",shape="box"];852 -> 884[label="",style="solid", color="black", weight=3]; 114.10/79.16 853[label="reduce2Reduce1 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) (primEqInt (Neg Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];853 -> 885[label="",style="solid", color="black", weight=3]; 114.10/79.16 117 -> 105[label="",style="dashed", color="red", weight=0]; 114.10/79.16 117[label="error []",fontsize=16,color="magenta"];118 -> 105[label="",style="dashed", color="red", weight=0]; 114.10/79.16 118[label="error []",fontsize=16,color="magenta"];119 -> 105[label="",style="dashed", color="red", weight=0]; 114.10/79.16 119[label="error []",fontsize=16,color="magenta"];879[label="vuz3100",fontsize=16,color="green",shape="box"];880[label="vuz3100",fontsize=16,color="green",shape="box"];881[label="vuz3100",fontsize=16,color="green",shape="box"];882[label="reduce2Reduce1 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) (primEqInt (Pos (Succ vuz520)) (Pos Zero))",fontsize=16,color="black",shape="box"];882 -> 1070[label="",style="solid", color="black", weight=3]; 114.10/79.16 883[label="reduce2Reduce1 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) (primEqInt (Pos Zero) (Pos Zero))",fontsize=16,color="black",shape="box"];883 -> 1071[label="",style="solid", color="black", weight=3]; 114.10/79.16 123 -> 105[label="",style="dashed", color="red", weight=0]; 114.10/79.16 123[label="error []",fontsize=16,color="magenta"];124 -> 105[label="",style="dashed", color="red", weight=0]; 114.10/79.16 124[label="error []",fontsize=16,color="magenta"];125 -> 105[label="",style="dashed", color="red", weight=0]; 114.10/79.16 125[label="error []",fontsize=16,color="magenta"];456[label="primMulNat (Succ vuz310000) (Succ vuz4100)",fontsize=16,color="black",shape="box"];456 -> 574[label="",style="solid", color="black", weight=3]; 114.10/79.16 457[label="primMulNat Zero (Succ vuz4100)",fontsize=16,color="black",shape="box"];457 -> 575[label="",style="solid", color="black", weight=3]; 114.10/79.16 854[label="Succ (Succ (primPlusNat vuz430 vuz4100))",fontsize=16,color="green",shape="box"];854 -> 886[label="",style="dashed", color="green", weight=3]; 114.10/79.16 855[label="Succ vuz4100",fontsize=16,color="green",shape="box"];1093[label="reduce2Reduce1 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) False",fontsize=16,color="black",shape="box"];1093 -> 1103[label="",style="solid", color="black", weight=3]; 114.10/79.16 1094[label="reduce2Reduce1 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) True",fontsize=16,color="black",shape="box"];1094 -> 1104[label="",style="solid", color="black", weight=3]; 114.10/79.16 129[label="error []",fontsize=16,color="red",shape="box"];856[label="reduce2Reduce1 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) False",fontsize=16,color="black",shape="box"];856 -> 887[label="",style="solid", color="black", weight=3]; 114.10/79.16 857[label="reduce2Reduce1 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) True",fontsize=16,color="black",shape="box"];857 -> 888[label="",style="solid", color="black", weight=3]; 114.10/79.16 884[label="reduce2Reduce1 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) False",fontsize=16,color="black",shape="box"];884 -> 1072[label="",style="solid", color="black", weight=3]; 114.10/79.16 885[label="reduce2Reduce1 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) True",fontsize=16,color="black",shape="box"];885 -> 1073[label="",style="solid", color="black", weight=3]; 114.10/79.16 1070[label="reduce2Reduce1 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) False",fontsize=16,color="black",shape="box"];1070 -> 1085[label="",style="solid", color="black", weight=3]; 114.10/79.16 1071[label="reduce2Reduce1 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) True",fontsize=16,color="black",shape="box"];1071 -> 1086[label="",style="solid", color="black", weight=3]; 114.10/79.16 574 -> 691[label="",style="dashed", color="red", weight=0]; 114.10/79.16 574[label="primPlusNat (primMulNat vuz310000 (Succ vuz4100)) (Succ vuz4100)",fontsize=16,color="magenta"];574 -> 692[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 575[label="Zero",fontsize=16,color="green",shape="box"];886[label="primPlusNat vuz430 vuz4100",fontsize=16,color="burlywood",shape="triangle"];4877[label="vuz430/Succ vuz4300",fontsize=10,color="white",style="solid",shape="box"];886 -> 4877[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4877 -> 1074[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4878[label="vuz430/Zero",fontsize=10,color="white",style="solid",shape="box"];886 -> 4878[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4878 -> 1075[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 1103[label="reduce2Reduce0 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) otherwise",fontsize=16,color="black",shape="box"];1103 -> 1111[label="",style="solid", color="black", weight=3]; 114.10/79.16 1104 -> 105[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1104[label="error []",fontsize=16,color="magenta"];887[label="reduce2Reduce0 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) otherwise",fontsize=16,color="black",shape="box"];887 -> 1076[label="",style="solid", color="black", weight=3]; 114.10/79.16 888 -> 105[label="",style="dashed", color="red", weight=0]; 114.10/79.16 888[label="error []",fontsize=16,color="magenta"];1072[label="reduce2Reduce0 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) otherwise",fontsize=16,color="black",shape="box"];1072 -> 1087[label="",style="solid", color="black", weight=3]; 114.10/79.16 1073 -> 105[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1073[label="error []",fontsize=16,color="magenta"];1085[label="reduce2Reduce0 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) otherwise",fontsize=16,color="black",shape="box"];1085 -> 1095[label="",style="solid", color="black", weight=3]; 114.10/79.16 1086 -> 105[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1086[label="error []",fontsize=16,color="magenta"];692 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 692[label="primMulNat vuz310000 (Succ vuz4100)",fontsize=16,color="magenta"];692 -> 858[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1074[label="primPlusNat (Succ vuz4300) vuz4100",fontsize=16,color="burlywood",shape="box"];4879[label="vuz4100/Succ vuz41000",fontsize=10,color="white",style="solid",shape="box"];1074 -> 4879[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4879 -> 1088[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4880[label="vuz4100/Zero",fontsize=10,color="white",style="solid",shape="box"];1074 -> 4880[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4880 -> 1089[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 1075[label="primPlusNat Zero vuz4100",fontsize=16,color="burlywood",shape="box"];4881[label="vuz4100/Succ vuz41000",fontsize=10,color="white",style="solid",shape="box"];1075 -> 4881[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4881 -> 1090[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4882[label="vuz4100/Zero",fontsize=10,color="white",style="solid",shape="box"];1075 -> 4882[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4882 -> 1091[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 1111[label="reduce2Reduce0 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz53) True",fontsize=16,color="black",shape="box"];1111 -> 1120[label="",style="solid", color="black", weight=3]; 114.10/79.16 1076[label="reduce2Reduce0 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz44) True",fontsize=16,color="black",shape="box"];1076 -> 1092[label="",style="solid", color="black", weight=3]; 114.10/79.16 1087[label="reduce2Reduce0 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz47) True",fontsize=16,color="black",shape="box"];1087 -> 1096[label="",style="solid", color="black", weight=3]; 114.10/79.16 1095[label="reduce2Reduce0 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz50) True",fontsize=16,color="black",shape="box"];1095 -> 1105[label="",style="solid", color="black", weight=3]; 114.10/79.16 858[label="vuz310000",fontsize=16,color="green",shape="box"];1088[label="primPlusNat (Succ vuz4300) (Succ vuz41000)",fontsize=16,color="black",shape="box"];1088 -> 1097[label="",style="solid", color="black", weight=3]; 114.10/79.16 1089[label="primPlusNat (Succ vuz4300) Zero",fontsize=16,color="black",shape="box"];1089 -> 1098[label="",style="solid", color="black", weight=3]; 114.10/79.16 1090[label="primPlusNat Zero (Succ vuz41000)",fontsize=16,color="black",shape="box"];1090 -> 1099[label="",style="solid", color="black", weight=3]; 114.10/79.16 1091[label="primPlusNat Zero Zero",fontsize=16,color="black",shape="box"];1091 -> 1100[label="",style="solid", color="black", weight=3]; 114.10/79.16 1120[label="(vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) `quot` reduce2D (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54) :% (Pos vuz53 `quot` reduce2D (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54))",fontsize=16,color="green",shape="box"];1120 -> 1127[label="",style="dashed", color="green", weight=3]; 114.10/79.16 1120 -> 1128[label="",style="dashed", color="green", weight=3]; 114.10/79.16 1092[label="(vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) `quot` reduce2D (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45) :% (Neg vuz44 `quot` reduce2D (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45))",fontsize=16,color="green",shape="box"];1092 -> 1101[label="",style="dashed", color="green", weight=3]; 114.10/79.16 1092 -> 1102[label="",style="dashed", color="green", weight=3]; 114.10/79.16 1096[label="(vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) `quot` reduce2D (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48) :% (Neg vuz47 `quot` reduce2D (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48))",fontsize=16,color="green",shape="box"];1096 -> 1106[label="",style="dashed", color="green", weight=3]; 114.10/79.16 1096 -> 1107[label="",style="dashed", color="green", weight=3]; 114.10/79.16 1105[label="(vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) `quot` reduce2D (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51) :% (Pos vuz50 `quot` reduce2D (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51))",fontsize=16,color="green",shape="box"];1105 -> 1112[label="",style="dashed", color="green", weight=3]; 114.10/79.16 1105 -> 1113[label="",style="dashed", color="green", weight=3]; 114.10/79.16 1097[label="Succ (Succ (primPlusNat vuz4300 vuz41000))",fontsize=16,color="green",shape="box"];1097 -> 1108[label="",style="dashed", color="green", weight=3]; 114.10/79.16 1098[label="Succ vuz4300",fontsize=16,color="green",shape="box"];1099[label="Succ vuz41000",fontsize=16,color="green",shape="box"];1100[label="Zero",fontsize=16,color="green",shape="box"];1127[label="(vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) `quot` reduce2D (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54)",fontsize=16,color="black",shape="box"];1127 -> 1136[label="",style="solid", color="black", weight=3]; 114.10/79.16 1128[label="Pos vuz53 `quot` reduce2D (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54)",fontsize=16,color="black",shape="box"];1128 -> 1137[label="",style="solid", color="black", weight=3]; 114.10/79.16 1101[label="(vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) `quot` reduce2D (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45)",fontsize=16,color="black",shape="box"];1101 -> 1109[label="",style="solid", color="black", weight=3]; 114.10/79.16 1102[label="Neg vuz44 `quot` reduce2D (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45)",fontsize=16,color="black",shape="box"];1102 -> 1110[label="",style="solid", color="black", weight=3]; 114.10/79.16 1106[label="(vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) `quot` reduce2D (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48)",fontsize=16,color="black",shape="box"];1106 -> 1114[label="",style="solid", color="black", weight=3]; 114.10/79.16 1107[label="Neg vuz47 `quot` reduce2D (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48)",fontsize=16,color="black",shape="box"];1107 -> 1115[label="",style="solid", color="black", weight=3]; 114.10/79.16 1112[label="(vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) `quot` reduce2D (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51)",fontsize=16,color="black",shape="box"];1112 -> 1121[label="",style="solid", color="black", weight=3]; 114.10/79.16 1113[label="Pos vuz50 `quot` reduce2D (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51)",fontsize=16,color="black",shape="box"];1113 -> 1122[label="",style="solid", color="black", weight=3]; 114.10/79.16 1108 -> 886[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1108[label="primPlusNat vuz4300 vuz41000",fontsize=16,color="magenta"];1108 -> 1116[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1108 -> 1117[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1136[label="primQuotInt (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (reduce2D (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54))",fontsize=16,color="black",shape="box"];1136 -> 1146[label="",style="solid", color="black", weight=3]; 114.10/79.16 1137 -> 3726[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1137[label="primQuotInt (Pos vuz53) (reduce2D (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54))",fontsize=16,color="magenta"];1137 -> 3727[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1109[label="primQuotInt (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (reduce2D (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45))",fontsize=16,color="black",shape="box"];1109 -> 1118[label="",style="solid", color="black", weight=3]; 114.10/79.16 1110 -> 2269[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1110[label="primQuotInt (Neg vuz44) (reduce2D (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45))",fontsize=16,color="magenta"];1110 -> 2270[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1110 -> 2271[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1114[label="primQuotInt (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (reduce2D (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48))",fontsize=16,color="black",shape="box"];1114 -> 1123[label="",style="solid", color="black", weight=3]; 114.10/79.16 1115 -> 2269[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1115[label="primQuotInt (Neg vuz47) (reduce2D (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48))",fontsize=16,color="magenta"];1115 -> 2272[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1115 -> 2273[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1121[label="primQuotInt (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (reduce2D (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51))",fontsize=16,color="black",shape="box"];1121 -> 1129[label="",style="solid", color="black", weight=3]; 114.10/79.16 1122 -> 3726[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1122[label="primQuotInt (Pos vuz50) (reduce2D (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51))",fontsize=16,color="magenta"];1122 -> 3728[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1122 -> 3729[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1116[label="vuz4300",fontsize=16,color="green",shape="box"];1117[label="vuz41000",fontsize=16,color="green",shape="box"];1146[label="primQuotInt (primPlusInt (vuz6 * Pos (Succ vuz7)) (vuz8 * Pos (Succ vuz9))) (reduce2D (primPlusInt (vuz6 * Pos (Succ vuz7)) (vuz8 * Pos (Succ vuz9))) (Pos vuz54))",fontsize=16,color="black",shape="box"];1146 -> 1157[label="",style="solid", color="black", weight=3]; 114.10/79.16 3727[label="reduce2D (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54)",fontsize=16,color="black",shape="box"];3727 -> 4192[label="",style="solid", color="black", weight=3]; 114.10/79.16 3726[label="primQuotInt (Pos vuz53) vuz220",fontsize=16,color="burlywood",shape="triangle"];4883[label="vuz220/Pos vuz2200",fontsize=10,color="white",style="solid",shape="box"];3726 -> 4883[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4883 -> 4193[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4884[label="vuz220/Neg vuz2200",fontsize=10,color="white",style="solid",shape="box"];3726 -> 4884[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4884 -> 4194[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 1118[label="primQuotInt (primPlusInt (vuz17 * Neg (Succ vuz18)) (vuz19 * Pos (Succ vuz20))) (reduce2D (primPlusInt (vuz17 * Neg (Succ vuz18)) (vuz19 * Pos (Succ vuz20))) (Neg vuz45))",fontsize=16,color="black",shape="box"];1118 -> 1125[label="",style="solid", color="black", weight=3]; 114.10/79.16 2270[label="vuz44",fontsize=16,color="green",shape="box"];2271[label="reduce2D (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2271 -> 2788[label="",style="solid", color="black", weight=3]; 114.10/79.16 2269[label="primQuotInt (Neg vuz158) vuz159",fontsize=16,color="burlywood",shape="triangle"];4885[label="vuz159/Pos vuz1590",fontsize=10,color="white",style="solid",shape="box"];2269 -> 4885[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4885 -> 2789[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4886[label="vuz159/Neg vuz1590",fontsize=10,color="white",style="solid",shape="box"];2269 -> 4886[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4886 -> 2790[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 1123[label="primQuotInt (primPlusInt (vuz22 * Pos (Succ vuz23)) (vuz24 * Neg (Succ vuz25))) (reduce2D (primPlusInt (vuz22 * Pos (Succ vuz23)) (vuz24 * Neg (Succ vuz25))) (Neg vuz48))",fontsize=16,color="black",shape="box"];1123 -> 1131[label="",style="solid", color="black", weight=3]; 114.10/79.16 2272[label="vuz47",fontsize=16,color="green",shape="box"];2273[label="reduce2D (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48)",fontsize=16,color="black",shape="box"];2273 -> 2791[label="",style="solid", color="black", weight=3]; 114.10/79.16 1129[label="primQuotInt (primPlusInt (vuz27 * Neg (Succ vuz28)) (vuz29 * Neg (Succ vuz30))) (reduce2D (primPlusInt (vuz27 * Neg (Succ vuz28)) (vuz29 * Neg (Succ vuz30))) (Pos vuz51))",fontsize=16,color="black",shape="box"];1129 -> 1138[label="",style="solid", color="black", weight=3]; 114.10/79.16 3728[label="reduce2D (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51)",fontsize=16,color="black",shape="box"];3728 -> 4195[label="",style="solid", color="black", weight=3]; 114.10/79.16 3729[label="vuz50",fontsize=16,color="green",shape="box"];1157[label="primQuotInt (primPlusInt (primMulInt vuz6 (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (reduce2D (primPlusInt (primMulInt vuz6 (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54))",fontsize=16,color="burlywood",shape="box"];4887[label="vuz6/Pos vuz60",fontsize=10,color="white",style="solid",shape="box"];1157 -> 4887[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4887 -> 1165[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4888[label="vuz6/Neg vuz60",fontsize=10,color="white",style="solid",shape="box"];1157 -> 4888[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4888 -> 1166[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4192[label="gcd (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4192 -> 4200[label="",style="solid", color="black", weight=3]; 114.10/79.16 4193[label="primQuotInt (Pos vuz53) (Pos vuz2200)",fontsize=16,color="burlywood",shape="box"];4889[label="vuz2200/Succ vuz22000",fontsize=10,color="white",style="solid",shape="box"];4193 -> 4889[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4889 -> 4201[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4890[label="vuz2200/Zero",fontsize=10,color="white",style="solid",shape="box"];4193 -> 4890[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4890 -> 4202[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4194[label="primQuotInt (Pos vuz53) (Neg vuz2200)",fontsize=16,color="burlywood",shape="box"];4891[label="vuz2200/Succ vuz22000",fontsize=10,color="white",style="solid",shape="box"];4194 -> 4891[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4891 -> 4203[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4892[label="vuz2200/Zero",fontsize=10,color="white",style="solid",shape="box"];4194 -> 4892[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4892 -> 4204[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 1125[label="primQuotInt (primPlusInt (primMulInt vuz17 (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (reduce2D (primPlusInt (primMulInt vuz17 (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45))",fontsize=16,color="burlywood",shape="box"];4893[label="vuz17/Pos vuz170",fontsize=10,color="white",style="solid",shape="box"];1125 -> 4893[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4893 -> 1133[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4894[label="vuz17/Neg vuz170",fontsize=10,color="white",style="solid",shape="box"];1125 -> 4894[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4894 -> 1134[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 2788[label="gcd (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2788 -> 2797[label="",style="solid", color="black", weight=3]; 114.10/79.16 2789[label="primQuotInt (Neg vuz158) (Pos vuz1590)",fontsize=16,color="burlywood",shape="box"];4895[label="vuz1590/Succ vuz15900",fontsize=10,color="white",style="solid",shape="box"];2789 -> 4895[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4895 -> 2798[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4896[label="vuz1590/Zero",fontsize=10,color="white",style="solid",shape="box"];2789 -> 4896[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4896 -> 2799[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 2790[label="primQuotInt (Neg vuz158) (Neg vuz1590)",fontsize=16,color="burlywood",shape="box"];4897[label="vuz1590/Succ vuz15900",fontsize=10,color="white",style="solid",shape="box"];2790 -> 4897[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4897 -> 2800[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4898[label="vuz1590/Zero",fontsize=10,color="white",style="solid",shape="box"];2790 -> 4898[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4898 -> 2801[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 1131[label="primQuotInt (primPlusInt (primMulInt vuz22 (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (reduce2D (primPlusInt (primMulInt vuz22 (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48))",fontsize=16,color="burlywood",shape="box"];4899[label="vuz22/Pos vuz220",fontsize=10,color="white",style="solid",shape="box"];1131 -> 4899[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4899 -> 1140[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4900[label="vuz22/Neg vuz220",fontsize=10,color="white",style="solid",shape="box"];1131 -> 4900[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4900 -> 1141[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 2791[label="gcd (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48)",fontsize=16,color="black",shape="box"];2791 -> 2802[label="",style="solid", color="black", weight=3]; 114.10/79.16 1138[label="primQuotInt (primPlusInt (primMulInt vuz27 (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (reduce2D (primPlusInt (primMulInt vuz27 (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51))",fontsize=16,color="burlywood",shape="box"];4901[label="vuz27/Pos vuz270",fontsize=10,color="white",style="solid",shape="box"];1138 -> 4901[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4901 -> 1148[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4902[label="vuz27/Neg vuz270",fontsize=10,color="white",style="solid",shape="box"];1138 -> 4902[label="",style="solid", color="burlywood", weight=9]; 114.10/79.16 4902 -> 1149[label="",style="solid", color="burlywood", weight=3]; 114.10/79.16 4195[label="gcd (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51)",fontsize=16,color="black",shape="box"];4195 -> 4205[label="",style="solid", color="black", weight=3]; 114.10/79.16 1165[label="primQuotInt (primPlusInt (primMulInt (Pos vuz60) (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (reduce2D (primPlusInt (primMulInt (Pos vuz60) (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54))",fontsize=16,color="black",shape="box"];1165 -> 1172[label="",style="solid", color="black", weight=3]; 114.10/79.16 1166[label="primQuotInt (primPlusInt (primMulInt (Neg vuz60) (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (reduce2D (primPlusInt (primMulInt (Neg vuz60) (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54))",fontsize=16,color="black",shape="box"];1166 -> 1173[label="",style="solid", color="black", weight=3]; 114.10/79.16 4200[label="gcd3 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4200 -> 4212[label="",style="solid", color="black", weight=3]; 114.10/79.16 4201[label="primQuotInt (Pos vuz53) (Pos (Succ vuz22000))",fontsize=16,color="black",shape="box"];4201 -> 4213[label="",style="solid", color="black", weight=3]; 114.10/79.16 4202[label="primQuotInt (Pos vuz53) (Pos Zero)",fontsize=16,color="black",shape="box"];4202 -> 4214[label="",style="solid", color="black", weight=3]; 114.10/79.16 4203[label="primQuotInt (Pos vuz53) (Neg (Succ vuz22000))",fontsize=16,color="black",shape="box"];4203 -> 4215[label="",style="solid", color="black", weight=3]; 114.10/79.16 4204[label="primQuotInt (Pos vuz53) (Neg Zero)",fontsize=16,color="black",shape="box"];4204 -> 4216[label="",style="solid", color="black", weight=3]; 114.10/79.16 1133[label="primQuotInt (primPlusInt (primMulInt (Pos vuz170) (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (reduce2D (primPlusInt (primMulInt (Pos vuz170) (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45))",fontsize=16,color="black",shape="box"];1133 -> 1143[label="",style="solid", color="black", weight=3]; 114.10/79.16 1134[label="primQuotInt (primPlusInt (primMulInt (Neg vuz170) (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (reduce2D (primPlusInt (primMulInt (Neg vuz170) (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45))",fontsize=16,color="black",shape="box"];1134 -> 1144[label="",style="solid", color="black", weight=3]; 114.10/79.16 2797[label="gcd3 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2797 -> 2808[label="",style="solid", color="black", weight=3]; 114.10/79.16 2798[label="primQuotInt (Neg vuz158) (Pos (Succ vuz15900))",fontsize=16,color="black",shape="box"];2798 -> 2809[label="",style="solid", color="black", weight=3]; 114.10/79.16 2799[label="primQuotInt (Neg vuz158) (Pos Zero)",fontsize=16,color="black",shape="box"];2799 -> 2810[label="",style="solid", color="black", weight=3]; 114.10/79.16 2800[label="primQuotInt (Neg vuz158) (Neg (Succ vuz15900))",fontsize=16,color="black",shape="box"];2800 -> 2811[label="",style="solid", color="black", weight=3]; 114.10/79.16 2801[label="primQuotInt (Neg vuz158) (Neg Zero)",fontsize=16,color="black",shape="box"];2801 -> 2812[label="",style="solid", color="black", weight=3]; 114.10/79.16 1140[label="primQuotInt (primPlusInt (primMulInt (Pos vuz220) (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (reduce2D (primPlusInt (primMulInt (Pos vuz220) (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48))",fontsize=16,color="black",shape="box"];1140 -> 1151[label="",style="solid", color="black", weight=3]; 114.10/79.16 1141[label="primQuotInt (primPlusInt (primMulInt (Neg vuz220) (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (reduce2D (primPlusInt (primMulInt (Neg vuz220) (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48))",fontsize=16,color="black",shape="box"];1141 -> 1152[label="",style="solid", color="black", weight=3]; 114.10/79.16 2802[label="gcd3 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48)",fontsize=16,color="black",shape="box"];2802 -> 2813[label="",style="solid", color="black", weight=3]; 114.10/79.16 1148[label="primQuotInt (primPlusInt (primMulInt (Pos vuz270) (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (reduce2D (primPlusInt (primMulInt (Pos vuz270) (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51))",fontsize=16,color="black",shape="box"];1148 -> 1159[label="",style="solid", color="black", weight=3]; 114.10/79.16 1149[label="primQuotInt (primPlusInt (primMulInt (Neg vuz270) (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (reduce2D (primPlusInt (primMulInt (Neg vuz270) (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51))",fontsize=16,color="black",shape="box"];1149 -> 1160[label="",style="solid", color="black", weight=3]; 114.10/79.16 4205[label="gcd3 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51)",fontsize=16,color="black",shape="box"];4205 -> 4217[label="",style="solid", color="black", weight=3]; 114.10/79.16 1172 -> 1178[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1172[label="primQuotInt (primPlusInt (Pos (primMulNat vuz60 (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (reduce2D (primPlusInt (Pos (primMulNat vuz60 (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54))",fontsize=16,color="magenta"];1172 -> 1179[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1172 -> 1180[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1173 -> 1181[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1173[label="primQuotInt (primPlusInt (Neg (primMulNat vuz60 (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (reduce2D (primPlusInt (Neg (primMulNat vuz60 (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54))",fontsize=16,color="magenta"];1173 -> 1182[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1173 -> 1183[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 4212[label="gcd2 (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9) == fromInt (Pos Zero)) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4212 -> 4233[label="",style="solid", color="black", weight=3]; 114.10/79.16 4213[label="Pos (primDivNatS vuz53 (Succ vuz22000))",fontsize=16,color="green",shape="box"];4213 -> 4234[label="",style="dashed", color="green", weight=3]; 114.10/79.16 4214 -> 2810[label="",style="dashed", color="red", weight=0]; 114.10/79.16 4214[label="error []",fontsize=16,color="magenta"];4215[label="Neg (primDivNatS vuz53 (Succ vuz22000))",fontsize=16,color="green",shape="box"];4215 -> 4235[label="",style="dashed", color="green", weight=3]; 114.10/79.16 4216 -> 2810[label="",style="dashed", color="red", weight=0]; 114.10/79.16 4216[label="error []",fontsize=16,color="magenta"];1143 -> 1154[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1143[label="primQuotInt (primPlusInt (Neg (primMulNat vuz170 (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (reduce2D (primPlusInt (Neg (primMulNat vuz170 (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45))",fontsize=16,color="magenta"];1143 -> 1155[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1143 -> 1156[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1144 -> 1162[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1144[label="primQuotInt (primPlusInt (Pos (primMulNat vuz170 (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (reduce2D (primPlusInt (Pos (primMulNat vuz170 (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45))",fontsize=16,color="magenta"];1144 -> 1163[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1144 -> 1164[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 2808[label="gcd2 (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20) == fromInt (Pos Zero)) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2808 -> 2826[label="",style="solid", color="black", weight=3]; 114.10/79.16 2809[label="Neg (primDivNatS vuz158 (Succ vuz15900))",fontsize=16,color="green",shape="box"];2809 -> 2827[label="",style="dashed", color="green", weight=3]; 114.10/79.16 2810[label="error []",fontsize=16,color="black",shape="triangle"];2810 -> 2828[label="",style="solid", color="black", weight=3]; 114.10/79.16 2811[label="Pos (primDivNatS vuz158 (Succ vuz15900))",fontsize=16,color="green",shape="box"];2811 -> 2829[label="",style="dashed", color="green", weight=3]; 114.10/79.16 2812 -> 2810[label="",style="dashed", color="red", weight=0]; 114.10/79.16 2812[label="error []",fontsize=16,color="magenta"];1151 -> 1169[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1151[label="primQuotInt (primPlusInt (Pos (primMulNat vuz220 (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (reduce2D (primPlusInt (Pos (primMulNat vuz220 (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48))",fontsize=16,color="magenta"];1151 -> 1170[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1151 -> 1171[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1152 -> 1175[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1152[label="primQuotInt (primPlusInt (Neg (primMulNat vuz220 (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (reduce2D (primPlusInt (Neg (primMulNat vuz220 (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48))",fontsize=16,color="magenta"];1152 -> 1176[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1152 -> 1177[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 2813[label="gcd2 (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25) == fromInt (Pos Zero)) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48)",fontsize=16,color="black",shape="box"];2813 -> 2830[label="",style="solid", color="black", weight=3]; 114.10/79.16 1159 -> 1186[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1159[label="primQuotInt (primPlusInt (Neg (primMulNat vuz270 (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (reduce2D (primPlusInt (Neg (primMulNat vuz270 (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51))",fontsize=16,color="magenta"];1159 -> 1187[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1159 -> 1188[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1160 -> 1189[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1160[label="primQuotInt (primPlusInt (Pos (primMulNat vuz270 (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (reduce2D (primPlusInt (Pos (primMulNat vuz270 (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51))",fontsize=16,color="magenta"];1160 -> 1190[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1160 -> 1191[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 4217[label="gcd2 (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30) == fromInt (Pos Zero)) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51)",fontsize=16,color="black",shape="box"];4217 -> 4236[label="",style="solid", color="black", weight=3]; 114.10/79.16 1179 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1179[label="primMulNat vuz60 (Succ vuz7)",fontsize=16,color="magenta"];1179 -> 1193[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1179 -> 1194[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1180 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1180[label="primMulNat vuz60 (Succ vuz7)",fontsize=16,color="magenta"];1180 -> 1195[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1180 -> 1196[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1178[label="primQuotInt (primPlusInt (Pos vuz85) (vuz8 * Pos (Succ vuz9))) (reduce2D (primPlusInt (Pos vuz86) (vuz8 * Pos (Succ vuz9))) (Pos vuz54))",fontsize=16,color="black",shape="triangle"];1178 -> 1197[label="",style="solid", color="black", weight=3]; 114.10/79.16 1182 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1182[label="primMulNat vuz60 (Succ vuz7)",fontsize=16,color="magenta"];1182 -> 1198[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1182 -> 1199[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1183 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1183[label="primMulNat vuz60 (Succ vuz7)",fontsize=16,color="magenta"];1183 -> 1200[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1183 -> 1201[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1181[label="primQuotInt (primPlusInt (Neg vuz87) (vuz8 * Pos (Succ vuz9))) (reduce2D (primPlusInt (Neg vuz88) (vuz8 * Pos (Succ vuz9))) (Pos vuz54))",fontsize=16,color="black",shape="triangle"];1181 -> 1202[label="",style="solid", color="black", weight=3]; 114.10/79.16 4233[label="gcd2 (primEqInt (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (fromInt (Pos Zero))) (vuz6 * Pos (Succ vuz7) + vuz8 * Pos (Succ vuz9)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4233 -> 4247[label="",style="solid", color="black", weight=3]; 114.10/79.16 4234 -> 2827[label="",style="dashed", color="red", weight=0]; 114.10/79.16 4234[label="primDivNatS vuz53 (Succ vuz22000)",fontsize=16,color="magenta"];4234 -> 4248[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 4234 -> 4249[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 4235 -> 2827[label="",style="dashed", color="red", weight=0]; 114.10/79.16 4235[label="primDivNatS vuz53 (Succ vuz22000)",fontsize=16,color="magenta"];4235 -> 4250[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 4235 -> 4251[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1155 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1155[label="primMulNat vuz170 (Succ vuz18)",fontsize=16,color="magenta"];1155 -> 1204[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1155 -> 1205[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1156 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.16 1156[label="primMulNat vuz170 (Succ vuz18)",fontsize=16,color="magenta"];1156 -> 1206[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1156 -> 1207[label="",style="dashed", color="magenta", weight=3]; 114.10/79.16 1154[label="primQuotInt (primPlusInt (Neg vuz77) (vuz19 * Pos (Succ vuz20))) (reduce2D (primPlusInt (Neg vuz78) (vuz19 * Pos (Succ vuz20))) (Neg vuz45))",fontsize=16,color="black",shape="triangle"];1154 -> 1208[label="",style="solid", color="black", weight=3]; 114.10/79.16 1163 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1163[label="primMulNat vuz170 (Succ vuz18)",fontsize=16,color="magenta"];1163 -> 1209[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1163 -> 1210[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1164 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1164[label="primMulNat vuz170 (Succ vuz18)",fontsize=16,color="magenta"];1164 -> 1211[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1164 -> 1212[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1162[label="primQuotInt (primPlusInt (Pos vuz79) (vuz19 * Pos (Succ vuz20))) (reduce2D (primPlusInt (Pos vuz80) (vuz19 * Pos (Succ vuz20))) (Neg vuz45))",fontsize=16,color="black",shape="triangle"];1162 -> 1213[label="",style="solid", color="black", weight=3]; 114.10/79.17 2826[label="gcd2 (primEqInt (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (fromInt (Pos Zero))) (vuz17 * Neg (Succ vuz18) + vuz19 * Pos (Succ vuz20)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2826 -> 2841[label="",style="solid", color="black", weight=3]; 114.10/79.17 2827[label="primDivNatS vuz158 (Succ vuz15900)",fontsize=16,color="burlywood",shape="triangle"];4903[label="vuz158/Succ vuz1580",fontsize=10,color="white",style="solid",shape="box"];2827 -> 4903[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4903 -> 2842[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4904[label="vuz158/Zero",fontsize=10,color="white",style="solid",shape="box"];2827 -> 4904[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4904 -> 2843[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 2828[label="error []",fontsize=16,color="red",shape="box"];2829 -> 2827[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2829[label="primDivNatS vuz158 (Succ vuz15900)",fontsize=16,color="magenta"];2829 -> 2844[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1170 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1170[label="primMulNat vuz220 (Succ vuz23)",fontsize=16,color="magenta"];1170 -> 1215[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1170 -> 1216[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1171 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1171[label="primMulNat vuz220 (Succ vuz23)",fontsize=16,color="magenta"];1171 -> 1217[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1171 -> 1218[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1169[label="primQuotInt (primPlusInt (Pos vuz81) (vuz24 * Neg (Succ vuz25))) (reduce2D (primPlusInt (Pos vuz82) (vuz24 * Neg (Succ vuz25))) (Neg vuz48))",fontsize=16,color="black",shape="triangle"];1169 -> 1219[label="",style="solid", color="black", weight=3]; 114.10/79.17 1176 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1176[label="primMulNat vuz220 (Succ vuz23)",fontsize=16,color="magenta"];1176 -> 1220[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1176 -> 1221[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1177 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1177[label="primMulNat vuz220 (Succ vuz23)",fontsize=16,color="magenta"];1177 -> 1222[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1177 -> 1223[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1175[label="primQuotInt (primPlusInt (Neg vuz83) (vuz24 * Neg (Succ vuz25))) (reduce2D (primPlusInt (Neg vuz84) (vuz24 * Neg (Succ vuz25))) (Neg vuz48))",fontsize=16,color="black",shape="triangle"];1175 -> 1224[label="",style="solid", color="black", weight=3]; 114.10/79.17 2830[label="gcd2 (primEqInt (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (fromInt (Pos Zero))) (vuz22 * Pos (Succ vuz23) + vuz24 * Neg (Succ vuz25)) (Neg vuz48)",fontsize=16,color="black",shape="box"];2830 -> 2845[label="",style="solid", color="black", weight=3]; 114.10/79.17 1187 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1187[label="primMulNat vuz270 (Succ vuz28)",fontsize=16,color="magenta"];1187 -> 1226[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1187 -> 1227[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1188 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1188[label="primMulNat vuz270 (Succ vuz28)",fontsize=16,color="magenta"];1188 -> 1228[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1188 -> 1229[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1186[label="primQuotInt (primPlusInt (Neg vuz89) (vuz29 * Neg (Succ vuz30))) (reduce2D (primPlusInt (Neg vuz90) (vuz29 * Neg (Succ vuz30))) (Pos vuz51))",fontsize=16,color="black",shape="triangle"];1186 -> 1230[label="",style="solid", color="black", weight=3]; 114.10/79.17 1190 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1190[label="primMulNat vuz270 (Succ vuz28)",fontsize=16,color="magenta"];1190 -> 1231[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1190 -> 1232[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1191 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1191[label="primMulNat vuz270 (Succ vuz28)",fontsize=16,color="magenta"];1191 -> 1233[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1191 -> 1234[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1189[label="primQuotInt (primPlusInt (Pos vuz91) (vuz29 * Neg (Succ vuz30))) (reduce2D (primPlusInt (Pos vuz92) (vuz29 * Neg (Succ vuz30))) (Pos vuz51))",fontsize=16,color="black",shape="triangle"];1189 -> 1235[label="",style="solid", color="black", weight=3]; 114.10/79.17 4236[label="gcd2 (primEqInt (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (fromInt (Pos Zero))) (vuz27 * Neg (Succ vuz28) + vuz29 * Neg (Succ vuz30)) (Pos vuz51)",fontsize=16,color="black",shape="box"];4236 -> 4252[label="",style="solid", color="black", weight=3]; 114.10/79.17 1193[label="vuz60",fontsize=16,color="green",shape="box"];1194[label="vuz7",fontsize=16,color="green",shape="box"];1195[label="vuz60",fontsize=16,color="green",shape="box"];1196[label="vuz7",fontsize=16,color="green",shape="box"];1197[label="primQuotInt (primPlusInt (Pos vuz85) (primMulInt vuz8 (Pos (Succ vuz9)))) (reduce2D (primPlusInt (Pos vuz86) (primMulInt vuz8 (Pos (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="burlywood",shape="box"];4905[label="vuz8/Pos vuz80",fontsize=10,color="white",style="solid",shape="box"];1197 -> 4905[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4905 -> 1237[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4906[label="vuz8/Neg vuz80",fontsize=10,color="white",style="solid",shape="box"];1197 -> 4906[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4906 -> 1238[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 1198[label="vuz60",fontsize=16,color="green",shape="box"];1199[label="vuz7",fontsize=16,color="green",shape="box"];1200[label="vuz60",fontsize=16,color="green",shape="box"];1201[label="vuz7",fontsize=16,color="green",shape="box"];1202[label="primQuotInt (primPlusInt (Neg vuz87) (primMulInt vuz8 (Pos (Succ vuz9)))) (reduce2D (primPlusInt (Neg vuz88) (primMulInt vuz8 (Pos (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="burlywood",shape="box"];4907[label="vuz8/Pos vuz80",fontsize=10,color="white",style="solid",shape="box"];1202 -> 4907[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4907 -> 1239[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4908[label="vuz8/Neg vuz80",fontsize=10,color="white",style="solid",shape="box"];1202 -> 4908[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4908 -> 1240[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4247[label="gcd2 (primEqInt (primPlusInt (vuz6 * Pos (Succ vuz7)) (vuz8 * Pos (Succ vuz9))) (fromInt (Pos Zero))) (primPlusInt (vuz6 * Pos (Succ vuz7)) (vuz8 * Pos (Succ vuz9))) (Pos vuz54)",fontsize=16,color="black",shape="box"];4247 -> 4262[label="",style="solid", color="black", weight=3]; 114.10/79.17 4248[label="vuz53",fontsize=16,color="green",shape="box"];4249[label="vuz22000",fontsize=16,color="green",shape="box"];4250[label="vuz53",fontsize=16,color="green",shape="box"];4251[label="vuz22000",fontsize=16,color="green",shape="box"];1204[label="vuz170",fontsize=16,color="green",shape="box"];1205[label="vuz18",fontsize=16,color="green",shape="box"];1206[label="vuz170",fontsize=16,color="green",shape="box"];1207[label="vuz18",fontsize=16,color="green",shape="box"];1208[label="primQuotInt (primPlusInt (Neg vuz77) (primMulInt vuz19 (Pos (Succ vuz20)))) (reduce2D (primPlusInt (Neg vuz78) (primMulInt vuz19 (Pos (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="burlywood",shape="box"];4909[label="vuz19/Pos vuz190",fontsize=10,color="white",style="solid",shape="box"];1208 -> 4909[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4909 -> 1243[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4910[label="vuz19/Neg vuz190",fontsize=10,color="white",style="solid",shape="box"];1208 -> 4910[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4910 -> 1244[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 1209[label="vuz170",fontsize=16,color="green",shape="box"];1210[label="vuz18",fontsize=16,color="green",shape="box"];1211[label="vuz170",fontsize=16,color="green",shape="box"];1212[label="vuz18",fontsize=16,color="green",shape="box"];1213[label="primQuotInt (primPlusInt (Pos vuz79) (primMulInt vuz19 (Pos (Succ vuz20)))) (reduce2D (primPlusInt (Pos vuz80) (primMulInt vuz19 (Pos (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="burlywood",shape="box"];4911[label="vuz19/Pos vuz190",fontsize=10,color="white",style="solid",shape="box"];1213 -> 4911[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4911 -> 1245[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4912[label="vuz19/Neg vuz190",fontsize=10,color="white",style="solid",shape="box"];1213 -> 4912[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4912 -> 1246[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 2841[label="gcd2 (primEqInt (primPlusInt (vuz17 * Neg (Succ vuz18)) (vuz19 * Pos (Succ vuz20))) (fromInt (Pos Zero))) (primPlusInt (vuz17 * Neg (Succ vuz18)) (vuz19 * Pos (Succ vuz20))) (Neg vuz45)",fontsize=16,color="black",shape="box"];2841 -> 2854[label="",style="solid", color="black", weight=3]; 114.10/79.17 2842[label="primDivNatS (Succ vuz1580) (Succ vuz15900)",fontsize=16,color="black",shape="box"];2842 -> 2855[label="",style="solid", color="black", weight=3]; 114.10/79.17 2843[label="primDivNatS Zero (Succ vuz15900)",fontsize=16,color="black",shape="box"];2843 -> 2856[label="",style="solid", color="black", weight=3]; 114.10/79.17 2844[label="vuz15900",fontsize=16,color="green",shape="box"];1215[label="vuz220",fontsize=16,color="green",shape="box"];1216[label="vuz23",fontsize=16,color="green",shape="box"];1217[label="vuz220",fontsize=16,color="green",shape="box"];1218[label="vuz23",fontsize=16,color="green",shape="box"];1219[label="primQuotInt (primPlusInt (Pos vuz81) (primMulInt vuz24 (Neg (Succ vuz25)))) (reduce2D (primPlusInt (Pos vuz82) (primMulInt vuz24 (Neg (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="burlywood",shape="box"];4913[label="vuz24/Pos vuz240",fontsize=10,color="white",style="solid",shape="box"];1219 -> 4913[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4913 -> 1249[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4914[label="vuz24/Neg vuz240",fontsize=10,color="white",style="solid",shape="box"];1219 -> 4914[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4914 -> 1250[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 1220[label="vuz220",fontsize=16,color="green",shape="box"];1221[label="vuz23",fontsize=16,color="green",shape="box"];1222[label="vuz220",fontsize=16,color="green",shape="box"];1223[label="vuz23",fontsize=16,color="green",shape="box"];1224[label="primQuotInt (primPlusInt (Neg vuz83) (primMulInt vuz24 (Neg (Succ vuz25)))) (reduce2D (primPlusInt (Neg vuz84) (primMulInt vuz24 (Neg (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="burlywood",shape="box"];4915[label="vuz24/Pos vuz240",fontsize=10,color="white",style="solid",shape="box"];1224 -> 4915[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4915 -> 1251[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4916[label="vuz24/Neg vuz240",fontsize=10,color="white",style="solid",shape="box"];1224 -> 4916[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4916 -> 1252[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 2845[label="gcd2 (primEqInt (primPlusInt (vuz22 * Pos (Succ vuz23)) (vuz24 * Neg (Succ vuz25))) (fromInt (Pos Zero))) (primPlusInt (vuz22 * Pos (Succ vuz23)) (vuz24 * Neg (Succ vuz25))) (Neg vuz48)",fontsize=16,color="black",shape="box"];2845 -> 2857[label="",style="solid", color="black", weight=3]; 114.10/79.17 1226[label="vuz270",fontsize=16,color="green",shape="box"];1227[label="vuz28",fontsize=16,color="green",shape="box"];1228[label="vuz270",fontsize=16,color="green",shape="box"];1229[label="vuz28",fontsize=16,color="green",shape="box"];1230[label="primQuotInt (primPlusInt (Neg vuz89) (primMulInt vuz29 (Neg (Succ vuz30)))) (reduce2D (primPlusInt (Neg vuz90) (primMulInt vuz29 (Neg (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="burlywood",shape="box"];4917[label="vuz29/Pos vuz290",fontsize=10,color="white",style="solid",shape="box"];1230 -> 4917[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4917 -> 1255[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4918[label="vuz29/Neg vuz290",fontsize=10,color="white",style="solid",shape="box"];1230 -> 4918[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4918 -> 1256[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 1231[label="vuz270",fontsize=16,color="green",shape="box"];1232[label="vuz28",fontsize=16,color="green",shape="box"];1233[label="vuz270",fontsize=16,color="green",shape="box"];1234[label="vuz28",fontsize=16,color="green",shape="box"];1235[label="primQuotInt (primPlusInt (Pos vuz91) (primMulInt vuz29 (Neg (Succ vuz30)))) (reduce2D (primPlusInt (Pos vuz92) (primMulInt vuz29 (Neg (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="burlywood",shape="box"];4919[label="vuz29/Pos vuz290",fontsize=10,color="white",style="solid",shape="box"];1235 -> 4919[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4919 -> 1257[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4920[label="vuz29/Neg vuz290",fontsize=10,color="white",style="solid",shape="box"];1235 -> 4920[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4920 -> 1258[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4252[label="gcd2 (primEqInt (primPlusInt (vuz27 * Neg (Succ vuz28)) (vuz29 * Neg (Succ vuz30))) (fromInt (Pos Zero))) (primPlusInt (vuz27 * Neg (Succ vuz28)) (vuz29 * Neg (Succ vuz30))) (Pos vuz51)",fontsize=16,color="black",shape="box"];4252 -> 4263[label="",style="solid", color="black", weight=3]; 114.10/79.17 1237[label="primQuotInt (primPlusInt (Pos vuz85) (primMulInt (Pos vuz80) (Pos (Succ vuz9)))) (reduce2D (primPlusInt (Pos vuz86) (primMulInt (Pos vuz80) (Pos (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="black",shape="box"];1237 -> 1261[label="",style="solid", color="black", weight=3]; 114.10/79.17 1238[label="primQuotInt (primPlusInt (Pos vuz85) (primMulInt (Neg vuz80) (Pos (Succ vuz9)))) (reduce2D (primPlusInt (Pos vuz86) (primMulInt (Neg vuz80) (Pos (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="black",shape="box"];1238 -> 1262[label="",style="solid", color="black", weight=3]; 114.10/79.17 1239[label="primQuotInt (primPlusInt (Neg vuz87) (primMulInt (Pos vuz80) (Pos (Succ vuz9)))) (reduce2D (primPlusInt (Neg vuz88) (primMulInt (Pos vuz80) (Pos (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="black",shape="box"];1239 -> 1263[label="",style="solid", color="black", weight=3]; 114.10/79.17 1240[label="primQuotInt (primPlusInt (Neg vuz87) (primMulInt (Neg vuz80) (Pos (Succ vuz9)))) (reduce2D (primPlusInt (Neg vuz88) (primMulInt (Neg vuz80) (Pos (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="black",shape="box"];1240 -> 1264[label="",style="solid", color="black", weight=3]; 114.10/79.17 4262[label="gcd2 (primEqInt (primPlusInt (primMulInt vuz6 (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (fromInt (Pos Zero))) (primPlusInt (primMulInt vuz6 (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54)",fontsize=16,color="burlywood",shape="box"];4921[label="vuz6/Pos vuz60",fontsize=10,color="white",style="solid",shape="box"];4262 -> 4921[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4921 -> 4275[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4922[label="vuz6/Neg vuz60",fontsize=10,color="white",style="solid",shape="box"];4262 -> 4922[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4922 -> 4276[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 1243[label="primQuotInt (primPlusInt (Neg vuz77) (primMulInt (Pos vuz190) (Pos (Succ vuz20)))) (reduce2D (primPlusInt (Neg vuz78) (primMulInt (Pos vuz190) (Pos (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="black",shape="box"];1243 -> 1267[label="",style="solid", color="black", weight=3]; 114.10/79.17 1244[label="primQuotInt (primPlusInt (Neg vuz77) (primMulInt (Neg vuz190) (Pos (Succ vuz20)))) (reduce2D (primPlusInt (Neg vuz78) (primMulInt (Neg vuz190) (Pos (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="black",shape="box"];1244 -> 1268[label="",style="solid", color="black", weight=3]; 114.10/79.17 1245[label="primQuotInt (primPlusInt (Pos vuz79) (primMulInt (Pos vuz190) (Pos (Succ vuz20)))) (reduce2D (primPlusInt (Pos vuz80) (primMulInt (Pos vuz190) (Pos (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="black",shape="box"];1245 -> 1269[label="",style="solid", color="black", weight=3]; 114.10/79.17 1246[label="primQuotInt (primPlusInt (Pos vuz79) (primMulInt (Neg vuz190) (Pos (Succ vuz20)))) (reduce2D (primPlusInt (Pos vuz80) (primMulInt (Neg vuz190) (Pos (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="black",shape="box"];1246 -> 1270[label="",style="solid", color="black", weight=3]; 114.10/79.17 2854[label="gcd2 (primEqInt (primPlusInt (primMulInt vuz17 (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (fromInt (Pos Zero))) (primPlusInt (primMulInt vuz17 (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45)",fontsize=16,color="burlywood",shape="box"];4923[label="vuz17/Pos vuz170",fontsize=10,color="white",style="solid",shape="box"];2854 -> 4923[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4923 -> 2866[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4924[label="vuz17/Neg vuz170",fontsize=10,color="white",style="solid",shape="box"];2854 -> 4924[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4924 -> 2867[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 2855[label="primDivNatS0 vuz1580 vuz15900 (primGEqNatS vuz1580 vuz15900)",fontsize=16,color="burlywood",shape="box"];4925[label="vuz1580/Succ vuz15800",fontsize=10,color="white",style="solid",shape="box"];2855 -> 4925[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4925 -> 2868[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4926[label="vuz1580/Zero",fontsize=10,color="white",style="solid",shape="box"];2855 -> 4926[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4926 -> 2869[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 2856[label="Zero",fontsize=16,color="green",shape="box"];1249[label="primQuotInt (primPlusInt (Pos vuz81) (primMulInt (Pos vuz240) (Neg (Succ vuz25)))) (reduce2D (primPlusInt (Pos vuz82) (primMulInt (Pos vuz240) (Neg (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="black",shape="box"];1249 -> 1273[label="",style="solid", color="black", weight=3]; 114.10/79.17 1250[label="primQuotInt (primPlusInt (Pos vuz81) (primMulInt (Neg vuz240) (Neg (Succ vuz25)))) (reduce2D (primPlusInt (Pos vuz82) (primMulInt (Neg vuz240) (Neg (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="black",shape="box"];1250 -> 1274[label="",style="solid", color="black", weight=3]; 114.10/79.17 1251[label="primQuotInt (primPlusInt (Neg vuz83) (primMulInt (Pos vuz240) (Neg (Succ vuz25)))) (reduce2D (primPlusInt (Neg vuz84) (primMulInt (Pos vuz240) (Neg (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="black",shape="box"];1251 -> 1275[label="",style="solid", color="black", weight=3]; 114.10/79.17 1252[label="primQuotInt (primPlusInt (Neg vuz83) (primMulInt (Neg vuz240) (Neg (Succ vuz25)))) (reduce2D (primPlusInt (Neg vuz84) (primMulInt (Neg vuz240) (Neg (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="black",shape="box"];1252 -> 1276[label="",style="solid", color="black", weight=3]; 114.10/79.17 2857[label="gcd2 (primEqInt (primPlusInt (primMulInt vuz22 (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (fromInt (Pos Zero))) (primPlusInt (primMulInt vuz22 (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48)",fontsize=16,color="burlywood",shape="box"];4927[label="vuz22/Pos vuz220",fontsize=10,color="white",style="solid",shape="box"];2857 -> 4927[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4927 -> 2870[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4928[label="vuz22/Neg vuz220",fontsize=10,color="white",style="solid",shape="box"];2857 -> 4928[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4928 -> 2871[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 1255[label="primQuotInt (primPlusInt (Neg vuz89) (primMulInt (Pos vuz290) (Neg (Succ vuz30)))) (reduce2D (primPlusInt (Neg vuz90) (primMulInt (Pos vuz290) (Neg (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="black",shape="box"];1255 -> 1279[label="",style="solid", color="black", weight=3]; 114.10/79.17 1256[label="primQuotInt (primPlusInt (Neg vuz89) (primMulInt (Neg vuz290) (Neg (Succ vuz30)))) (reduce2D (primPlusInt (Neg vuz90) (primMulInt (Neg vuz290) (Neg (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="black",shape="box"];1256 -> 1280[label="",style="solid", color="black", weight=3]; 114.10/79.17 1257[label="primQuotInt (primPlusInt (Pos vuz91) (primMulInt (Pos vuz290) (Neg (Succ vuz30)))) (reduce2D (primPlusInt (Pos vuz92) (primMulInt (Pos vuz290) (Neg (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="black",shape="box"];1257 -> 1281[label="",style="solid", color="black", weight=3]; 114.10/79.17 1258[label="primQuotInt (primPlusInt (Pos vuz91) (primMulInt (Neg vuz290) (Neg (Succ vuz30)))) (reduce2D (primPlusInt (Pos vuz92) (primMulInt (Neg vuz290) (Neg (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="black",shape="box"];1258 -> 1282[label="",style="solid", color="black", weight=3]; 114.10/79.17 4263[label="gcd2 (primEqInt (primPlusInt (primMulInt vuz27 (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (fromInt (Pos Zero))) (primPlusInt (primMulInt vuz27 (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51)",fontsize=16,color="burlywood",shape="box"];4929[label="vuz27/Pos vuz270",fontsize=10,color="white",style="solid",shape="box"];4263 -> 4929[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4929 -> 4277[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4930[label="vuz27/Neg vuz270",fontsize=10,color="white",style="solid",shape="box"];4263 -> 4930[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4930 -> 4278[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 1261 -> 1285[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1261[label="primQuotInt (primPlusInt (Pos vuz85) (Pos (primMulNat vuz80 (Succ vuz9)))) (reduce2D (primPlusInt (Pos vuz86) (Pos (primMulNat vuz80 (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="magenta"];1261 -> 1286[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1261 -> 1287[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1262 -> 1293[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1262[label="primQuotInt (primPlusInt (Pos vuz85) (Neg (primMulNat vuz80 (Succ vuz9)))) (reduce2D (primPlusInt (Pos vuz86) (Neg (primMulNat vuz80 (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="magenta"];1262 -> 1294[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1262 -> 1295[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1263 -> 1301[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1263[label="primQuotInt (primPlusInt (Neg vuz87) (Pos (primMulNat vuz80 (Succ vuz9)))) (reduce2D (primPlusInt (Neg vuz88) (Pos (primMulNat vuz80 (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="magenta"];1263 -> 1302[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1263 -> 1303[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1264 -> 1309[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1264[label="primQuotInt (primPlusInt (Neg vuz87) (Neg (primMulNat vuz80 (Succ vuz9)))) (reduce2D (primPlusInt (Neg vuz88) (Neg (primMulNat vuz80 (Succ vuz9)))) (Pos vuz54))",fontsize=16,color="magenta"];1264 -> 1310[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1264 -> 1311[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4275[label="gcd2 (primEqInt (primPlusInt (primMulInt (Pos vuz60) (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Pos vuz60) (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54)",fontsize=16,color="black",shape="box"];4275 -> 4292[label="",style="solid", color="black", weight=3]; 114.10/79.17 4276[label="gcd2 (primEqInt (primPlusInt (primMulInt (Neg vuz60) (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Neg vuz60) (Pos (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54)",fontsize=16,color="black",shape="box"];4276 -> 4293[label="",style="solid", color="black", weight=3]; 114.10/79.17 1267 -> 1323[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1267[label="primQuotInt (primPlusInt (Neg vuz77) (Pos (primMulNat vuz190 (Succ vuz20)))) (reduce2D (primPlusInt (Neg vuz78) (Pos (primMulNat vuz190 (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="magenta"];1267 -> 1324[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1267 -> 1325[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1268 -> 1331[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1268[label="primQuotInt (primPlusInt (Neg vuz77) (Neg (primMulNat vuz190 (Succ vuz20)))) (reduce2D (primPlusInt (Neg vuz78) (Neg (primMulNat vuz190 (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="magenta"];1268 -> 1332[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1268 -> 1333[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1269 -> 1339[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1269[label="primQuotInt (primPlusInt (Pos vuz79) (Pos (primMulNat vuz190 (Succ vuz20)))) (reduce2D (primPlusInt (Pos vuz80) (Pos (primMulNat vuz190 (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="magenta"];1269 -> 1340[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1269 -> 1341[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1270 -> 1347[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1270[label="primQuotInt (primPlusInt (Pos vuz79) (Neg (primMulNat vuz190 (Succ vuz20)))) (reduce2D (primPlusInt (Pos vuz80) (Neg (primMulNat vuz190 (Succ vuz20)))) (Neg vuz45))",fontsize=16,color="magenta"];1270 -> 1348[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1270 -> 1349[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2866[label="gcd2 (primEqInt (primPlusInt (primMulInt (Pos vuz170) (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Pos vuz170) (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45)",fontsize=16,color="black",shape="box"];2866 -> 2883[label="",style="solid", color="black", weight=3]; 114.10/79.17 2867[label="gcd2 (primEqInt (primPlusInt (primMulInt (Neg vuz170) (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Neg vuz170) (Neg (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45)",fontsize=16,color="black",shape="box"];2867 -> 2884[label="",style="solid", color="black", weight=3]; 114.10/79.17 2868[label="primDivNatS0 (Succ vuz15800) vuz15900 (primGEqNatS (Succ vuz15800) vuz15900)",fontsize=16,color="burlywood",shape="box"];4931[label="vuz15900/Succ vuz159000",fontsize=10,color="white",style="solid",shape="box"];2868 -> 4931[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4931 -> 2885[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4932[label="vuz15900/Zero",fontsize=10,color="white",style="solid",shape="box"];2868 -> 4932[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4932 -> 2886[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 2869[label="primDivNatS0 Zero vuz15900 (primGEqNatS Zero vuz15900)",fontsize=16,color="burlywood",shape="box"];4933[label="vuz15900/Succ vuz159000",fontsize=10,color="white",style="solid",shape="box"];2869 -> 4933[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4933 -> 2887[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4934[label="vuz15900/Zero",fontsize=10,color="white",style="solid",shape="box"];2869 -> 4934[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4934 -> 2888[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 1273 -> 1347[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1273[label="primQuotInt (primPlusInt (Pos vuz81) (Neg (primMulNat vuz240 (Succ vuz25)))) (reduce2D (primPlusInt (Pos vuz82) (Neg (primMulNat vuz240 (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="magenta"];1273 -> 1350[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1273 -> 1351[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1273 -> 1352[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1273 -> 1353[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1273 -> 1354[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1274 -> 1339[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1274[label="primQuotInt (primPlusInt (Pos vuz81) (Pos (primMulNat vuz240 (Succ vuz25)))) (reduce2D (primPlusInt (Pos vuz82) (Pos (primMulNat vuz240 (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="magenta"];1274 -> 1342[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1274 -> 1343[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1274 -> 1344[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1274 -> 1345[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1274 -> 1346[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1275 -> 1331[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1275[label="primQuotInt (primPlusInt (Neg vuz83) (Neg (primMulNat vuz240 (Succ vuz25)))) (reduce2D (primPlusInt (Neg vuz84) (Neg (primMulNat vuz240 (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="magenta"];1275 -> 1334[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1275 -> 1335[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1275 -> 1336[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1275 -> 1337[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1275 -> 1338[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1276 -> 1323[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1276[label="primQuotInt (primPlusInt (Neg vuz83) (Pos (primMulNat vuz240 (Succ vuz25)))) (reduce2D (primPlusInt (Neg vuz84) (Pos (primMulNat vuz240 (Succ vuz25)))) (Neg vuz48))",fontsize=16,color="magenta"];1276 -> 1326[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1276 -> 1327[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1276 -> 1328[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1276 -> 1329[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1276 -> 1330[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2870[label="gcd2 (primEqInt (primPlusInt (primMulInt (Pos vuz220) (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Pos vuz220) (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48)",fontsize=16,color="black",shape="box"];2870 -> 2889[label="",style="solid", color="black", weight=3]; 114.10/79.17 2871[label="gcd2 (primEqInt (primPlusInt (primMulInt (Neg vuz220) (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Neg vuz220) (Pos (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48)",fontsize=16,color="black",shape="box"];2871 -> 2890[label="",style="solid", color="black", weight=3]; 114.10/79.17 1279 -> 1309[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1279[label="primQuotInt (primPlusInt (Neg vuz89) (Neg (primMulNat vuz290 (Succ vuz30)))) (reduce2D (primPlusInt (Neg vuz90) (Neg (primMulNat vuz290 (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="magenta"];1279 -> 1312[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1279 -> 1313[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1279 -> 1314[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1279 -> 1315[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1279 -> 1316[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1280 -> 1301[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1280[label="primQuotInt (primPlusInt (Neg vuz89) (Pos (primMulNat vuz290 (Succ vuz30)))) (reduce2D (primPlusInt (Neg vuz90) (Pos (primMulNat vuz290 (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="magenta"];1280 -> 1304[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1280 -> 1305[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1280 -> 1306[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1280 -> 1307[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1280 -> 1308[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1281 -> 1293[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1281[label="primQuotInt (primPlusInt (Pos vuz91) (Neg (primMulNat vuz290 (Succ vuz30)))) (reduce2D (primPlusInt (Pos vuz92) (Neg (primMulNat vuz290 (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="magenta"];1281 -> 1296[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1281 -> 1297[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1281 -> 1298[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1281 -> 1299[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1281 -> 1300[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1282 -> 1285[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1282[label="primQuotInt (primPlusInt (Pos vuz91) (Pos (primMulNat vuz290 (Succ vuz30)))) (reduce2D (primPlusInt (Pos vuz92) (Pos (primMulNat vuz290 (Succ vuz30)))) (Pos vuz51))",fontsize=16,color="magenta"];1282 -> 1288[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1282 -> 1289[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1282 -> 1290[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1282 -> 1291[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1282 -> 1292[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4277[label="gcd2 (primEqInt (primPlusInt (primMulInt (Pos vuz270) (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Pos vuz270) (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51)",fontsize=16,color="black",shape="box"];4277 -> 4294[label="",style="solid", color="black", weight=3]; 114.10/79.17 4278[label="gcd2 (primEqInt (primPlusInt (primMulInt (Neg vuz270) (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (fromInt (Pos Zero))) (primPlusInt (primMulInt (Neg vuz270) (Neg (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51)",fontsize=16,color="black",shape="box"];4278 -> 4295[label="",style="solid", color="black", weight=3]; 114.10/79.17 1286 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1286[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];1286 -> 1373[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1286 -> 1374[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1287 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1287[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];1287 -> 1375[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1287 -> 1376[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1285[label="primQuotInt (primPlusInt (Pos vuz85) (Pos vuz93)) (reduce2D (primPlusInt (Pos vuz86) (Pos vuz94)) (Pos vuz54))",fontsize=16,color="black",shape="triangle"];1285 -> 1377[label="",style="solid", color="black", weight=3]; 114.10/79.17 1294 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1294[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];1294 -> 1378[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1294 -> 1379[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1295 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1295[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];1295 -> 1380[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1295 -> 1381[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1293[label="primQuotInt (primPlusInt (Pos vuz85) (Neg vuz95)) (reduce2D (primPlusInt (Pos vuz86) (Neg vuz96)) (Pos vuz54))",fontsize=16,color="black",shape="triangle"];1293 -> 1382[label="",style="solid", color="black", weight=3]; 114.10/79.17 1302 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1302[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];1302 -> 1383[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1302 -> 1384[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1303 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1303[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];1303 -> 1385[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1303 -> 1386[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1301[label="primQuotInt (primPlusInt (Neg vuz87) (Pos vuz97)) (reduce2D (primPlusInt (Neg vuz88) (Pos vuz98)) (Pos vuz54))",fontsize=16,color="black",shape="triangle"];1301 -> 1387[label="",style="solid", color="black", weight=3]; 114.10/79.17 1310 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1310[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];1310 -> 1388[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1310 -> 1389[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1311 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1311[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];1311 -> 1390[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1311 -> 1391[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1309[label="primQuotInt (primPlusInt (Neg vuz87) (Neg vuz99)) (reduce2D (primPlusInt (Neg vuz88) (Neg vuz100)) (Pos vuz54))",fontsize=16,color="black",shape="triangle"];1309 -> 1392[label="",style="solid", color="black", weight=3]; 114.10/79.17 4292 -> 4308[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4292[label="gcd2 (primEqInt (primPlusInt (Pos (primMulNat vuz60 (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (fromInt (Pos Zero))) (primPlusInt (Pos (primMulNat vuz60 (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54)",fontsize=16,color="magenta"];4292 -> 4309[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4292 -> 4310[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4293 -> 4311[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4293[label="gcd2 (primEqInt (primPlusInt (Neg (primMulNat vuz60 (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (fromInt (Pos Zero))) (primPlusInt (Neg (primMulNat vuz60 (Succ vuz7))) (vuz8 * Pos (Succ vuz9))) (Pos vuz54)",fontsize=16,color="magenta"];4293 -> 4312[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4293 -> 4313[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1324 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1324[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];1324 -> 1403[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1324 -> 1404[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1325 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1325[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];1325 -> 1405[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1325 -> 1406[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1323[label="primQuotInt (primPlusInt (Neg vuz77) (Pos vuz105)) (reduce2D (primPlusInt (Neg vuz78) (Pos vuz106)) (Neg vuz45))",fontsize=16,color="black",shape="triangle"];1323 -> 1407[label="",style="solid", color="black", weight=3]; 114.10/79.17 1332 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1332[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];1332 -> 1408[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1332 -> 1409[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1333 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1333[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];1333 -> 1410[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1333 -> 1411[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1331[label="primQuotInt (primPlusInt (Neg vuz77) (Neg vuz107)) (reduce2D (primPlusInt (Neg vuz78) (Neg vuz108)) (Neg vuz45))",fontsize=16,color="black",shape="triangle"];1331 -> 1412[label="",style="solid", color="black", weight=3]; 114.10/79.17 1340 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1340[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];1340 -> 1413[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1340 -> 1414[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1341 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1341[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];1341 -> 1415[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1341 -> 1416[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1339[label="primQuotInt (primPlusInt (Pos vuz79) (Pos vuz109)) (reduce2D (primPlusInt (Pos vuz80) (Pos vuz110)) (Neg vuz45))",fontsize=16,color="black",shape="triangle"];1339 -> 1417[label="",style="solid", color="black", weight=3]; 114.10/79.17 1348 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1348[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];1348 -> 1418[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1348 -> 1419[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1349 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1349[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];1349 -> 1420[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1349 -> 1421[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1347[label="primQuotInt (primPlusInt (Pos vuz79) (Neg vuz111)) (reduce2D (primPlusInt (Pos vuz80) (Neg vuz112)) (Neg vuz45))",fontsize=16,color="black",shape="triangle"];1347 -> 1422[label="",style="solid", color="black", weight=3]; 114.10/79.17 2883 -> 2900[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2883[label="gcd2 (primEqInt (primPlusInt (Neg (primMulNat vuz170 (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (fromInt (Pos Zero))) (primPlusInt (Neg (primMulNat vuz170 (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45)",fontsize=16,color="magenta"];2883 -> 2901[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2883 -> 2902[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2884 -> 2903[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2884[label="gcd2 (primEqInt (primPlusInt (Pos (primMulNat vuz170 (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (fromInt (Pos Zero))) (primPlusInt (Pos (primMulNat vuz170 (Succ vuz18))) (vuz19 * Pos (Succ vuz20))) (Neg vuz45)",fontsize=16,color="magenta"];2884 -> 2904[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2884 -> 2905[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2885[label="primDivNatS0 (Succ vuz15800) (Succ vuz159000) (primGEqNatS (Succ vuz15800) (Succ vuz159000))",fontsize=16,color="black",shape="box"];2885 -> 2906[label="",style="solid", color="black", weight=3]; 114.10/79.17 2886[label="primDivNatS0 (Succ vuz15800) Zero (primGEqNatS (Succ vuz15800) Zero)",fontsize=16,color="black",shape="box"];2886 -> 2907[label="",style="solid", color="black", weight=3]; 114.10/79.17 2887[label="primDivNatS0 Zero (Succ vuz159000) (primGEqNatS Zero (Succ vuz159000))",fontsize=16,color="black",shape="box"];2887 -> 2908[label="",style="solid", color="black", weight=3]; 114.10/79.17 2888[label="primDivNatS0 Zero Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];2888 -> 2909[label="",style="solid", color="black", weight=3]; 114.10/79.17 1350[label="vuz48",fontsize=16,color="green",shape="box"];1351[label="vuz82",fontsize=16,color="green",shape="box"];1352 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1352[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];1352 -> 1433[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1352 -> 1434[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1353 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1353[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];1353 -> 1435[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1353 -> 1436[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1354[label="vuz81",fontsize=16,color="green",shape="box"];1342[label="vuz48",fontsize=16,color="green",shape="box"];1343[label="vuz82",fontsize=16,color="green",shape="box"];1344 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1344[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];1344 -> 1437[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1344 -> 1438[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1345 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1345[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];1345 -> 1439[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1345 -> 1440[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1346[label="vuz81",fontsize=16,color="green",shape="box"];1334[label="vuz83",fontsize=16,color="green",shape="box"];1335[label="vuz48",fontsize=16,color="green",shape="box"];1336[label="vuz84",fontsize=16,color="green",shape="box"];1337 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1337[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];1337 -> 1441[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1337 -> 1442[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1338 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1338[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];1338 -> 1443[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1338 -> 1444[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1326[label="vuz83",fontsize=16,color="green",shape="box"];1327[label="vuz48",fontsize=16,color="green",shape="box"];1328 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1328[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];1328 -> 1445[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1328 -> 1446[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1329 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1329[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];1329 -> 1447[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1329 -> 1448[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1330[label="vuz84",fontsize=16,color="green",shape="box"];2889 -> 2910[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2889[label="gcd2 (primEqInt (primPlusInt (Pos (primMulNat vuz220 (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (fromInt (Pos Zero))) (primPlusInt (Pos (primMulNat vuz220 (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48)",fontsize=16,color="magenta"];2889 -> 2911[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2889 -> 2912[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2890 -> 2913[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2890[label="gcd2 (primEqInt (primPlusInt (Neg (primMulNat vuz220 (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (fromInt (Pos Zero))) (primPlusInt (Neg (primMulNat vuz220 (Succ vuz23))) (vuz24 * Neg (Succ vuz25))) (Neg vuz48)",fontsize=16,color="magenta"];2890 -> 2914[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2890 -> 2915[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1312[label="vuz90",fontsize=16,color="green",shape="box"];1313 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1313[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];1313 -> 1459[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1313 -> 1460[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1314[label="vuz89",fontsize=16,color="green",shape="box"];1315 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1315[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];1315 -> 1461[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1315 -> 1462[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1316[label="vuz51",fontsize=16,color="green",shape="box"];1304[label="vuz90",fontsize=16,color="green",shape="box"];1305 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1305[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];1305 -> 1463[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1305 -> 1464[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1306[label="vuz89",fontsize=16,color="green",shape="box"];1307 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1307[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];1307 -> 1465[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1307 -> 1466[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1308[label="vuz51",fontsize=16,color="green",shape="box"];1296 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1296[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];1296 -> 1467[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1296 -> 1468[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1297[label="vuz92",fontsize=16,color="green",shape="box"];1298 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1298[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];1298 -> 1469[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1298 -> 1470[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1299[label="vuz91",fontsize=16,color="green",shape="box"];1300[label="vuz51",fontsize=16,color="green",shape="box"];1288[label="vuz92",fontsize=16,color="green",shape="box"];1289 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1289[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];1289 -> 1471[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1289 -> 1472[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1290 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1290[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];1290 -> 1473[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1290 -> 1474[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1291[label="vuz91",fontsize=16,color="green",shape="box"];1292[label="vuz51",fontsize=16,color="green",shape="box"];4294 -> 4314[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4294[label="gcd2 (primEqInt (primPlusInt (Neg (primMulNat vuz270 (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (fromInt (Pos Zero))) (primPlusInt (Neg (primMulNat vuz270 (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51)",fontsize=16,color="magenta"];4294 -> 4315[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4294 -> 4316[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4295 -> 4317[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4295[label="gcd2 (primEqInt (primPlusInt (Pos (primMulNat vuz270 (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (fromInt (Pos Zero))) (primPlusInt (Pos (primMulNat vuz270 (Succ vuz28))) (vuz29 * Neg (Succ vuz30))) (Pos vuz51)",fontsize=16,color="magenta"];4295 -> 4318[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4295 -> 4319[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1373[label="vuz80",fontsize=16,color="green",shape="box"];1374[label="vuz9",fontsize=16,color="green",shape="box"];1375[label="vuz80",fontsize=16,color="green",shape="box"];1376[label="vuz9",fontsize=16,color="green",shape="box"];1377 -> 3726[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1377[label="primQuotInt (Pos (primPlusNat vuz85 vuz93)) (reduce2D (Pos (primPlusNat vuz85 vuz93)) (Pos vuz54))",fontsize=16,color="magenta"];1377 -> 3760[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1377 -> 3761[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1378[label="vuz80",fontsize=16,color="green",shape="box"];1379[label="vuz9",fontsize=16,color="green",shape="box"];1380[label="vuz80",fontsize=16,color="green",shape="box"];1381[label="vuz9",fontsize=16,color="green",shape="box"];1382[label="primQuotInt (primMinusNat vuz85 vuz95) (reduce2D (primMinusNat vuz85 vuz95) (Pos vuz54))",fontsize=16,color="burlywood",shape="triangle"];4935[label="vuz85/Succ vuz850",fontsize=10,color="white",style="solid",shape="box"];1382 -> 4935[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4935 -> 1488[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4936[label="vuz85/Zero",fontsize=10,color="white",style="solid",shape="box"];1382 -> 4936[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4936 -> 1489[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 1383[label="vuz80",fontsize=16,color="green",shape="box"];1384[label="vuz9",fontsize=16,color="green",shape="box"];1385[label="vuz80",fontsize=16,color="green",shape="box"];1386[label="vuz9",fontsize=16,color="green",shape="box"];1387 -> 1382[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1387[label="primQuotInt (primMinusNat vuz97 vuz87) (reduce2D (primMinusNat vuz97 vuz87) (Pos vuz54))",fontsize=16,color="magenta"];1387 -> 1490[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1387 -> 1491[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1388[label="vuz80",fontsize=16,color="green",shape="box"];1389[label="vuz9",fontsize=16,color="green",shape="box"];1390[label="vuz80",fontsize=16,color="green",shape="box"];1391[label="vuz9",fontsize=16,color="green",shape="box"];1392 -> 2269[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1392[label="primQuotInt (Neg (primPlusNat vuz87 vuz99)) (reduce2D (Neg (primPlusNat vuz87 vuz99)) (Pos vuz54))",fontsize=16,color="magenta"];1392 -> 2314[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1392 -> 2315[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4309 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4309[label="primMulNat vuz60 (Succ vuz7)",fontsize=16,color="magenta"];4309 -> 4320[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4309 -> 4321[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4310 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4310[label="primMulNat vuz60 (Succ vuz7)",fontsize=16,color="magenta"];4310 -> 4322[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4310 -> 4323[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4308[label="gcd2 (primEqInt (primPlusInt (Pos vuz224) (vuz8 * Pos (Succ vuz9))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz223) (vuz8 * Pos (Succ vuz9))) (Pos vuz54)",fontsize=16,color="black",shape="triangle"];4308 -> 4324[label="",style="solid", color="black", weight=3]; 114.10/79.17 4312 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4312[label="primMulNat vuz60 (Succ vuz7)",fontsize=16,color="magenta"];4312 -> 4325[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4312 -> 4326[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4313 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4313[label="primMulNat vuz60 (Succ vuz7)",fontsize=16,color="magenta"];4313 -> 4327[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4313 -> 4328[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4311[label="gcd2 (primEqInt (primPlusInt (Neg vuz226) (vuz8 * Pos (Succ vuz9))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz225) (vuz8 * Pos (Succ vuz9))) (Pos vuz54)",fontsize=16,color="black",shape="triangle"];4311 -> 4329[label="",style="solid", color="black", weight=3]; 114.10/79.17 1403[label="vuz190",fontsize=16,color="green",shape="box"];1404[label="vuz20",fontsize=16,color="green",shape="box"];1405[label="vuz190",fontsize=16,color="green",shape="box"];1406[label="vuz20",fontsize=16,color="green",shape="box"];1407[label="primQuotInt (primMinusNat vuz105 vuz77) (reduce2D (primMinusNat vuz105 vuz77) (Neg vuz45))",fontsize=16,color="burlywood",shape="triangle"];4937[label="vuz105/Succ vuz1050",fontsize=10,color="white",style="solid",shape="box"];1407 -> 4937[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4937 -> 1499[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4938[label="vuz105/Zero",fontsize=10,color="white",style="solid",shape="box"];1407 -> 4938[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4938 -> 1500[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 1408[label="vuz190",fontsize=16,color="green",shape="box"];1409[label="vuz20",fontsize=16,color="green",shape="box"];1410[label="vuz190",fontsize=16,color="green",shape="box"];1411[label="vuz20",fontsize=16,color="green",shape="box"];1412 -> 2269[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1412[label="primQuotInt (Neg (primPlusNat vuz77 vuz107)) (reduce2D (Neg (primPlusNat vuz77 vuz107)) (Neg vuz45))",fontsize=16,color="magenta"];1412 -> 2316[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1412 -> 2317[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1413[label="vuz190",fontsize=16,color="green",shape="box"];1414[label="vuz20",fontsize=16,color="green",shape="box"];1415[label="vuz190",fontsize=16,color="green",shape="box"];1416[label="vuz20",fontsize=16,color="green",shape="box"];1417 -> 3726[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1417[label="primQuotInt (Pos (primPlusNat vuz79 vuz109)) (reduce2D (Pos (primPlusNat vuz79 vuz109)) (Neg vuz45))",fontsize=16,color="magenta"];1417 -> 3764[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1417 -> 3765[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1418[label="vuz190",fontsize=16,color="green",shape="box"];1419[label="vuz20",fontsize=16,color="green",shape="box"];1420[label="vuz190",fontsize=16,color="green",shape="box"];1421[label="vuz20",fontsize=16,color="green",shape="box"];1422 -> 1407[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1422[label="primQuotInt (primMinusNat vuz79 vuz111) (reduce2D (primMinusNat vuz79 vuz111) (Neg vuz45))",fontsize=16,color="magenta"];1422 -> 1507[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1422 -> 1508[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2901 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2901[label="primMulNat vuz170 (Succ vuz18)",fontsize=16,color="magenta"];2901 -> 2916[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2901 -> 2917[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2902 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2902[label="primMulNat vuz170 (Succ vuz18)",fontsize=16,color="magenta"];2902 -> 2918[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2902 -> 2919[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2900[label="gcd2 (primEqInt (primPlusInt (Neg vuz163) (vuz19 * Pos (Succ vuz20))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz162) (vuz19 * Pos (Succ vuz20))) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];2900 -> 2920[label="",style="solid", color="black", weight=3]; 114.10/79.17 2904 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2904[label="primMulNat vuz170 (Succ vuz18)",fontsize=16,color="magenta"];2904 -> 2921[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2904 -> 2922[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2905 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2905[label="primMulNat vuz170 (Succ vuz18)",fontsize=16,color="magenta"];2905 -> 2923[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2905 -> 2924[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2903[label="gcd2 (primEqInt (primPlusInt (Pos vuz165) (vuz19 * Pos (Succ vuz20))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz164) (vuz19 * Pos (Succ vuz20))) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];2903 -> 2925[label="",style="solid", color="black", weight=3]; 114.10/79.17 2906 -> 3623[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2906[label="primDivNatS0 (Succ vuz15800) (Succ vuz159000) (primGEqNatS vuz15800 vuz159000)",fontsize=16,color="magenta"];2906 -> 3624[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2906 -> 3625[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2906 -> 3626[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2906 -> 3627[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2907[label="primDivNatS0 (Succ vuz15800) Zero True",fontsize=16,color="black",shape="box"];2907 -> 2928[label="",style="solid", color="black", weight=3]; 114.10/79.17 2908[label="primDivNatS0 Zero (Succ vuz159000) False",fontsize=16,color="black",shape="box"];2908 -> 2929[label="",style="solid", color="black", weight=3]; 114.10/79.17 2909[label="primDivNatS0 Zero Zero True",fontsize=16,color="black",shape="box"];2909 -> 2930[label="",style="solid", color="black", weight=3]; 114.10/79.17 1433[label="vuz240",fontsize=16,color="green",shape="box"];1434[label="vuz25",fontsize=16,color="green",shape="box"];1435[label="vuz240",fontsize=16,color="green",shape="box"];1436[label="vuz25",fontsize=16,color="green",shape="box"];1437[label="vuz240",fontsize=16,color="green",shape="box"];1438[label="vuz25",fontsize=16,color="green",shape="box"];1439[label="vuz240",fontsize=16,color="green",shape="box"];1440[label="vuz25",fontsize=16,color="green",shape="box"];1441[label="vuz240",fontsize=16,color="green",shape="box"];1442[label="vuz25",fontsize=16,color="green",shape="box"];1443[label="vuz240",fontsize=16,color="green",shape="box"];1444[label="vuz25",fontsize=16,color="green",shape="box"];1445[label="vuz240",fontsize=16,color="green",shape="box"];1446[label="vuz25",fontsize=16,color="green",shape="box"];1447[label="vuz240",fontsize=16,color="green",shape="box"];1448[label="vuz25",fontsize=16,color="green",shape="box"];2911 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2911[label="primMulNat vuz220 (Succ vuz23)",fontsize=16,color="magenta"];2911 -> 2931[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2911 -> 2932[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2912 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2912[label="primMulNat vuz220 (Succ vuz23)",fontsize=16,color="magenta"];2912 -> 2933[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2912 -> 2934[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2910[label="gcd2 (primEqInt (primPlusInt (Pos vuz167) (vuz24 * Neg (Succ vuz25))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz166) (vuz24 * Neg (Succ vuz25))) (Neg vuz48)",fontsize=16,color="black",shape="triangle"];2910 -> 2935[label="",style="solid", color="black", weight=3]; 114.10/79.17 2914 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2914[label="primMulNat vuz220 (Succ vuz23)",fontsize=16,color="magenta"];2914 -> 2936[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2914 -> 2937[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2915 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2915[label="primMulNat vuz220 (Succ vuz23)",fontsize=16,color="magenta"];2915 -> 2938[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2915 -> 2939[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2913[label="gcd2 (primEqInt (primPlusInt (Neg vuz169) (vuz24 * Neg (Succ vuz25))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz168) (vuz24 * Neg (Succ vuz25))) (Neg vuz48)",fontsize=16,color="black",shape="triangle"];2913 -> 2940[label="",style="solid", color="black", weight=3]; 114.10/79.17 1459[label="vuz290",fontsize=16,color="green",shape="box"];1460[label="vuz30",fontsize=16,color="green",shape="box"];1461[label="vuz290",fontsize=16,color="green",shape="box"];1462[label="vuz30",fontsize=16,color="green",shape="box"];1463[label="vuz290",fontsize=16,color="green",shape="box"];1464[label="vuz30",fontsize=16,color="green",shape="box"];1465[label="vuz290",fontsize=16,color="green",shape="box"];1466[label="vuz30",fontsize=16,color="green",shape="box"];1467[label="vuz290",fontsize=16,color="green",shape="box"];1468[label="vuz30",fontsize=16,color="green",shape="box"];1469[label="vuz290",fontsize=16,color="green",shape="box"];1470[label="vuz30",fontsize=16,color="green",shape="box"];1471[label="vuz290",fontsize=16,color="green",shape="box"];1472[label="vuz30",fontsize=16,color="green",shape="box"];1473[label="vuz290",fontsize=16,color="green",shape="box"];1474[label="vuz30",fontsize=16,color="green",shape="box"];4315 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4315[label="primMulNat vuz270 (Succ vuz28)",fontsize=16,color="magenta"];4315 -> 4330[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4315 -> 4331[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4316 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4316[label="primMulNat vuz270 (Succ vuz28)",fontsize=16,color="magenta"];4316 -> 4332[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4316 -> 4333[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4314[label="gcd2 (primEqInt (primPlusInt (Neg vuz228) (vuz29 * Neg (Succ vuz30))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz227) (vuz29 * Neg (Succ vuz30))) (Pos vuz51)",fontsize=16,color="black",shape="triangle"];4314 -> 4334[label="",style="solid", color="black", weight=3]; 114.10/79.17 4318 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4318[label="primMulNat vuz270 (Succ vuz28)",fontsize=16,color="magenta"];4318 -> 4335[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4318 -> 4336[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4319 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4319[label="primMulNat vuz270 (Succ vuz28)",fontsize=16,color="magenta"];4319 -> 4337[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4319 -> 4338[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4317[label="gcd2 (primEqInt (primPlusInt (Pos vuz230) (vuz29 * Neg (Succ vuz30))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz229) (vuz29 * Neg (Succ vuz30))) (Pos vuz51)",fontsize=16,color="black",shape="triangle"];4317 -> 4339[label="",style="solid", color="black", weight=3]; 114.10/79.17 3760 -> 4196[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3760[label="reduce2D (Pos (primPlusNat vuz85 vuz93)) (Pos vuz54)",fontsize=16,color="magenta"];3760 -> 4197[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3761 -> 886[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3761[label="primPlusNat vuz85 vuz93",fontsize=16,color="magenta"];3761 -> 4206[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3761 -> 4207[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1488[label="primQuotInt (primMinusNat (Succ vuz850) vuz95) (reduce2D (primMinusNat (Succ vuz850) vuz95) (Pos vuz54))",fontsize=16,color="burlywood",shape="box"];4939[label="vuz95/Succ vuz950",fontsize=10,color="white",style="solid",shape="box"];1488 -> 4939[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4939 -> 1526[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4940[label="vuz95/Zero",fontsize=10,color="white",style="solid",shape="box"];1488 -> 4940[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4940 -> 1527[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 1489[label="primQuotInt (primMinusNat Zero vuz95) (reduce2D (primMinusNat Zero vuz95) (Pos vuz54))",fontsize=16,color="burlywood",shape="box"];4941[label="vuz95/Succ vuz950",fontsize=10,color="white",style="solid",shape="box"];1489 -> 4941[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4941 -> 1528[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4942[label="vuz95/Zero",fontsize=10,color="white",style="solid",shape="box"];1489 -> 4942[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4942 -> 1529[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 1490[label="vuz87",fontsize=16,color="green",shape="box"];1491[label="vuz97",fontsize=16,color="green",shape="box"];2314 -> 886[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2314[label="primPlusNat vuz87 vuz99",fontsize=16,color="magenta"];2314 -> 2792[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2314 -> 2793[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2315 -> 2794[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2315[label="reduce2D (Neg (primPlusNat vuz87 vuz99)) (Pos vuz54)",fontsize=16,color="magenta"];2315 -> 2795[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4320[label="vuz60",fontsize=16,color="green",shape="box"];4321[label="vuz7",fontsize=16,color="green",shape="box"];4322[label="vuz60",fontsize=16,color="green",shape="box"];4323[label="vuz7",fontsize=16,color="green",shape="box"];4324[label="gcd2 (primEqInt (primPlusInt (Pos vuz224) (primMulInt vuz8 (Pos (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz223) (primMulInt vuz8 (Pos (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="burlywood",shape="box"];4943[label="vuz8/Pos vuz80",fontsize=10,color="white",style="solid",shape="box"];4324 -> 4943[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4943 -> 4352[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4944[label="vuz8/Neg vuz80",fontsize=10,color="white",style="solid",shape="box"];4324 -> 4944[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4944 -> 4353[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4325[label="vuz60",fontsize=16,color="green",shape="box"];4326[label="vuz7",fontsize=16,color="green",shape="box"];4327[label="vuz60",fontsize=16,color="green",shape="box"];4328[label="vuz7",fontsize=16,color="green",shape="box"];4329[label="gcd2 (primEqInt (primPlusInt (Neg vuz226) (primMulInt vuz8 (Pos (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz225) (primMulInt vuz8 (Pos (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="burlywood",shape="box"];4945[label="vuz8/Pos vuz80",fontsize=10,color="white",style="solid",shape="box"];4329 -> 4945[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4945 -> 4354[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4946[label="vuz8/Neg vuz80",fontsize=10,color="white",style="solid",shape="box"];4329 -> 4946[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4946 -> 4355[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 1499[label="primQuotInt (primMinusNat (Succ vuz1050) vuz77) (reduce2D (primMinusNat (Succ vuz1050) vuz77) (Neg vuz45))",fontsize=16,color="burlywood",shape="box"];4947[label="vuz77/Succ vuz770",fontsize=10,color="white",style="solid",shape="box"];1499 -> 4947[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4947 -> 1539[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4948[label="vuz77/Zero",fontsize=10,color="white",style="solid",shape="box"];1499 -> 4948[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4948 -> 1540[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 1500[label="primQuotInt (primMinusNat Zero vuz77) (reduce2D (primMinusNat Zero vuz77) (Neg vuz45))",fontsize=16,color="burlywood",shape="box"];4949[label="vuz77/Succ vuz770",fontsize=10,color="white",style="solid",shape="box"];1500 -> 4949[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4949 -> 1541[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4950[label="vuz77/Zero",fontsize=10,color="white",style="solid",shape="box"];1500 -> 4950[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4950 -> 1542[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 2316 -> 886[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2316[label="primPlusNat vuz77 vuz107",fontsize=16,color="magenta"];2316 -> 2803[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2316 -> 2804[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2317 -> 2805[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2317[label="reduce2D (Neg (primPlusNat vuz77 vuz107)) (Neg vuz45)",fontsize=16,color="magenta"];2317 -> 2806[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3764 -> 4208[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3764[label="reduce2D (Pos (primPlusNat vuz79 vuz109)) (Neg vuz45)",fontsize=16,color="magenta"];3764 -> 4209[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3765 -> 886[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3765[label="primPlusNat vuz79 vuz109",fontsize=16,color="magenta"];3765 -> 4218[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3765 -> 4219[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1507[label="vuz111",fontsize=16,color="green",shape="box"];1508[label="vuz79",fontsize=16,color="green",shape="box"];2916[label="vuz170",fontsize=16,color="green",shape="box"];2917[label="vuz18",fontsize=16,color="green",shape="box"];2918[label="vuz170",fontsize=16,color="green",shape="box"];2919[label="vuz18",fontsize=16,color="green",shape="box"];2920[label="gcd2 (primEqInt (primPlusInt (Neg vuz163) (primMulInt vuz19 (Pos (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz162) (primMulInt vuz19 (Pos (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="burlywood",shape="box"];4951[label="vuz19/Pos vuz190",fontsize=10,color="white",style="solid",shape="box"];2920 -> 4951[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4951 -> 2949[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4952[label="vuz19/Neg vuz190",fontsize=10,color="white",style="solid",shape="box"];2920 -> 4952[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4952 -> 2950[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 2921[label="vuz170",fontsize=16,color="green",shape="box"];2922[label="vuz18",fontsize=16,color="green",shape="box"];2923[label="vuz170",fontsize=16,color="green",shape="box"];2924[label="vuz18",fontsize=16,color="green",shape="box"];2925[label="gcd2 (primEqInt (primPlusInt (Pos vuz165) (primMulInt vuz19 (Pos (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz164) (primMulInt vuz19 (Pos (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="burlywood",shape="box"];4953[label="vuz19/Pos vuz190",fontsize=10,color="white",style="solid",shape="box"];2925 -> 4953[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4953 -> 2951[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4954[label="vuz19/Neg vuz190",fontsize=10,color="white",style="solid",shape="box"];2925 -> 4954[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4954 -> 2952[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 3624[label="vuz159000",fontsize=16,color="green",shape="box"];3625[label="vuz15800",fontsize=16,color="green",shape="box"];3626[label="vuz159000",fontsize=16,color="green",shape="box"];3627[label="vuz15800",fontsize=16,color="green",shape="box"];3623[label="primDivNatS0 (Succ vuz212) (Succ vuz213) (primGEqNatS vuz214 vuz215)",fontsize=16,color="burlywood",shape="triangle"];4955[label="vuz214/Succ vuz2140",fontsize=10,color="white",style="solid",shape="box"];3623 -> 4955[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4955 -> 3664[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4956[label="vuz214/Zero",fontsize=10,color="white",style="solid",shape="box"];3623 -> 4956[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4956 -> 3665[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 2928[label="Succ (primDivNatS (primMinusNatS (Succ vuz15800) Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];2928 -> 2957[label="",style="dashed", color="green", weight=3]; 114.10/79.17 2929[label="Zero",fontsize=16,color="green",shape="box"];2930[label="Succ (primDivNatS (primMinusNatS Zero Zero) (Succ Zero))",fontsize=16,color="green",shape="box"];2930 -> 2958[label="",style="dashed", color="green", weight=3]; 114.10/79.17 2931[label="vuz220",fontsize=16,color="green",shape="box"];2932[label="vuz23",fontsize=16,color="green",shape="box"];2933[label="vuz220",fontsize=16,color="green",shape="box"];2934[label="vuz23",fontsize=16,color="green",shape="box"];2935[label="gcd2 (primEqInt (primPlusInt (Pos vuz167) (primMulInt vuz24 (Neg (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz166) (primMulInt vuz24 (Neg (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="burlywood",shape="box"];4957[label="vuz24/Pos vuz240",fontsize=10,color="white",style="solid",shape="box"];2935 -> 4957[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4957 -> 2959[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4958[label="vuz24/Neg vuz240",fontsize=10,color="white",style="solid",shape="box"];2935 -> 4958[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4958 -> 2960[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 2936[label="vuz220",fontsize=16,color="green",shape="box"];2937[label="vuz23",fontsize=16,color="green",shape="box"];2938[label="vuz220",fontsize=16,color="green",shape="box"];2939[label="vuz23",fontsize=16,color="green",shape="box"];2940[label="gcd2 (primEqInt (primPlusInt (Neg vuz169) (primMulInt vuz24 (Neg (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz168) (primMulInt vuz24 (Neg (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="burlywood",shape="box"];4959[label="vuz24/Pos vuz240",fontsize=10,color="white",style="solid",shape="box"];2940 -> 4959[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4959 -> 2961[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4960[label="vuz24/Neg vuz240",fontsize=10,color="white",style="solid",shape="box"];2940 -> 4960[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4960 -> 2962[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4330[label="vuz270",fontsize=16,color="green",shape="box"];4331[label="vuz28",fontsize=16,color="green",shape="box"];4332[label="vuz270",fontsize=16,color="green",shape="box"];4333[label="vuz28",fontsize=16,color="green",shape="box"];4334[label="gcd2 (primEqInt (primPlusInt (Neg vuz228) (primMulInt vuz29 (Neg (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz227) (primMulInt vuz29 (Neg (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="burlywood",shape="box"];4961[label="vuz29/Pos vuz290",fontsize=10,color="white",style="solid",shape="box"];4334 -> 4961[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4961 -> 4356[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4962[label="vuz29/Neg vuz290",fontsize=10,color="white",style="solid",shape="box"];4334 -> 4962[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4962 -> 4357[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4335[label="vuz270",fontsize=16,color="green",shape="box"];4336[label="vuz28",fontsize=16,color="green",shape="box"];4337[label="vuz270",fontsize=16,color="green",shape="box"];4338[label="vuz28",fontsize=16,color="green",shape="box"];4339[label="gcd2 (primEqInt (primPlusInt (Pos vuz230) (primMulInt vuz29 (Neg (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz229) (primMulInt vuz29 (Neg (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="burlywood",shape="box"];4963[label="vuz29/Pos vuz290",fontsize=10,color="white",style="solid",shape="box"];4339 -> 4963[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4963 -> 4358[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4964[label="vuz29/Neg vuz290",fontsize=10,color="white",style="solid",shape="box"];4339 -> 4964[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4964 -> 4359[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4197 -> 886[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4197[label="primPlusNat vuz85 vuz93",fontsize=16,color="magenta"];4197 -> 4220[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4197 -> 4221[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4196[label="reduce2D (Pos vuz221) (Pos vuz54)",fontsize=16,color="black",shape="triangle"];4196 -> 4222[label="",style="solid", color="black", weight=3]; 114.10/79.17 4206[label="vuz85",fontsize=16,color="green",shape="box"];4207[label="vuz93",fontsize=16,color="green",shape="box"];1526[label="primQuotInt (primMinusNat (Succ vuz850) (Succ vuz950)) (reduce2D (primMinusNat (Succ vuz850) (Succ vuz950)) (Pos vuz54))",fontsize=16,color="black",shape="box"];1526 -> 1566[label="",style="solid", color="black", weight=3]; 114.10/79.17 1527[label="primQuotInt (primMinusNat (Succ vuz850) Zero) (reduce2D (primMinusNat (Succ vuz850) Zero) (Pos vuz54))",fontsize=16,color="black",shape="box"];1527 -> 1567[label="",style="solid", color="black", weight=3]; 114.10/79.17 1528[label="primQuotInt (primMinusNat Zero (Succ vuz950)) (reduce2D (primMinusNat Zero (Succ vuz950)) (Pos vuz54))",fontsize=16,color="black",shape="box"];1528 -> 1568[label="",style="solid", color="black", weight=3]; 114.10/79.17 1529[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero Zero) (Pos vuz54))",fontsize=16,color="black",shape="box"];1529 -> 1569[label="",style="solid", color="black", weight=3]; 114.10/79.17 2792[label="vuz87",fontsize=16,color="green",shape="box"];2793[label="vuz99",fontsize=16,color="green",shape="box"];2795 -> 886[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2795[label="primPlusNat vuz87 vuz99",fontsize=16,color="magenta"];2795 -> 2814[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2795 -> 2815[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2794[label="reduce2D (Neg vuz160) (Pos vuz54)",fontsize=16,color="black",shape="triangle"];2794 -> 2816[label="",style="solid", color="black", weight=3]; 114.10/79.17 4352[label="gcd2 (primEqInt (primPlusInt (Pos vuz224) (primMulInt (Pos vuz80) (Pos (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz223) (primMulInt (Pos vuz80) (Pos (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="black",shape="box"];4352 -> 4370[label="",style="solid", color="black", weight=3]; 114.10/79.17 4353[label="gcd2 (primEqInt (primPlusInt (Pos vuz224) (primMulInt (Neg vuz80) (Pos (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz223) (primMulInt (Neg vuz80) (Pos (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="black",shape="box"];4353 -> 4371[label="",style="solid", color="black", weight=3]; 114.10/79.17 4354[label="gcd2 (primEqInt (primPlusInt (Neg vuz226) (primMulInt (Pos vuz80) (Pos (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz225) (primMulInt (Pos vuz80) (Pos (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="black",shape="box"];4354 -> 4372[label="",style="solid", color="black", weight=3]; 114.10/79.17 4355[label="gcd2 (primEqInt (primPlusInt (Neg vuz226) (primMulInt (Neg vuz80) (Pos (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz225) (primMulInt (Neg vuz80) (Pos (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="black",shape="box"];4355 -> 4373[label="",style="solid", color="black", weight=3]; 114.10/79.17 1539[label="primQuotInt (primMinusNat (Succ vuz1050) (Succ vuz770)) (reduce2D (primMinusNat (Succ vuz1050) (Succ vuz770)) (Neg vuz45))",fontsize=16,color="black",shape="box"];1539 -> 1607[label="",style="solid", color="black", weight=3]; 114.10/79.17 1540[label="primQuotInt (primMinusNat (Succ vuz1050) Zero) (reduce2D (primMinusNat (Succ vuz1050) Zero) (Neg vuz45))",fontsize=16,color="black",shape="box"];1540 -> 1608[label="",style="solid", color="black", weight=3]; 114.10/79.17 1541[label="primQuotInt (primMinusNat Zero (Succ vuz770)) (reduce2D (primMinusNat Zero (Succ vuz770)) (Neg vuz45))",fontsize=16,color="black",shape="box"];1541 -> 1609[label="",style="solid", color="black", weight=3]; 114.10/79.17 1542[label="primQuotInt (primMinusNat Zero Zero) (reduce2D (primMinusNat Zero Zero) (Neg vuz45))",fontsize=16,color="black",shape="box"];1542 -> 1610[label="",style="solid", color="black", weight=3]; 114.10/79.17 2803[label="vuz77",fontsize=16,color="green",shape="box"];2804[label="vuz107",fontsize=16,color="green",shape="box"];2806 -> 886[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2806[label="primPlusNat vuz77 vuz107",fontsize=16,color="magenta"];2806 -> 2817[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2806 -> 2818[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2805[label="reduce2D (Neg vuz161) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];2805 -> 2819[label="",style="solid", color="black", weight=3]; 114.10/79.17 4209 -> 886[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4209[label="primPlusNat vuz79 vuz109",fontsize=16,color="magenta"];4209 -> 4223[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4209 -> 4224[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4208[label="reduce2D (Pos vuz222) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];4208 -> 4225[label="",style="solid", color="black", weight=3]; 114.10/79.17 4218[label="vuz79",fontsize=16,color="green",shape="box"];4219[label="vuz109",fontsize=16,color="green",shape="box"];2949[label="gcd2 (primEqInt (primPlusInt (Neg vuz163) (primMulInt (Pos vuz190) (Pos (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz162) (primMulInt (Pos vuz190) (Pos (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="black",shape="box"];2949 -> 2971[label="",style="solid", color="black", weight=3]; 114.10/79.17 2950[label="gcd2 (primEqInt (primPlusInt (Neg vuz163) (primMulInt (Neg vuz190) (Pos (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz162) (primMulInt (Neg vuz190) (Pos (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="black",shape="box"];2950 -> 2972[label="",style="solid", color="black", weight=3]; 114.10/79.17 2951[label="gcd2 (primEqInt (primPlusInt (Pos vuz165) (primMulInt (Pos vuz190) (Pos (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz164) (primMulInt (Pos vuz190) (Pos (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="black",shape="box"];2951 -> 2973[label="",style="solid", color="black", weight=3]; 114.10/79.17 2952[label="gcd2 (primEqInt (primPlusInt (Pos vuz165) (primMulInt (Neg vuz190) (Pos (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz164) (primMulInt (Neg vuz190) (Pos (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="black",shape="box"];2952 -> 2974[label="",style="solid", color="black", weight=3]; 114.10/79.17 3664[label="primDivNatS0 (Succ vuz212) (Succ vuz213) (primGEqNatS (Succ vuz2140) vuz215)",fontsize=16,color="burlywood",shape="box"];4965[label="vuz215/Succ vuz2150",fontsize=10,color="white",style="solid",shape="box"];3664 -> 4965[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4965 -> 3689[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4966[label="vuz215/Zero",fontsize=10,color="white",style="solid",shape="box"];3664 -> 4966[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4966 -> 3690[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 3665[label="primDivNatS0 (Succ vuz212) (Succ vuz213) (primGEqNatS Zero vuz215)",fontsize=16,color="burlywood",shape="box"];4967[label="vuz215/Succ vuz2150",fontsize=10,color="white",style="solid",shape="box"];3665 -> 4967[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4967 -> 3691[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4968[label="vuz215/Zero",fontsize=10,color="white",style="solid",shape="box"];3665 -> 4968[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4968 -> 3692[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 2957 -> 2827[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2957[label="primDivNatS (primMinusNatS (Succ vuz15800) Zero) (Succ Zero)",fontsize=16,color="magenta"];2957 -> 2979[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2957 -> 2980[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2958 -> 2827[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2958[label="primDivNatS (primMinusNatS Zero Zero) (Succ Zero)",fontsize=16,color="magenta"];2958 -> 2981[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2958 -> 2982[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2959[label="gcd2 (primEqInt (primPlusInt (Pos vuz167) (primMulInt (Pos vuz240) (Neg (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz166) (primMulInt (Pos vuz240) (Neg (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="black",shape="box"];2959 -> 2983[label="",style="solid", color="black", weight=3]; 114.10/79.17 2960[label="gcd2 (primEqInt (primPlusInt (Pos vuz167) (primMulInt (Neg vuz240) (Neg (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz166) (primMulInt (Neg vuz240) (Neg (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="black",shape="box"];2960 -> 2984[label="",style="solid", color="black", weight=3]; 114.10/79.17 2961[label="gcd2 (primEqInt (primPlusInt (Neg vuz169) (primMulInt (Pos vuz240) (Neg (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz168) (primMulInt (Pos vuz240) (Neg (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="black",shape="box"];2961 -> 2985[label="",style="solid", color="black", weight=3]; 114.10/79.17 2962[label="gcd2 (primEqInt (primPlusInt (Neg vuz169) (primMulInt (Neg vuz240) (Neg (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz168) (primMulInt (Neg vuz240) (Neg (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="black",shape="box"];2962 -> 2986[label="",style="solid", color="black", weight=3]; 114.10/79.17 4356[label="gcd2 (primEqInt (primPlusInt (Neg vuz228) (primMulInt (Pos vuz290) (Neg (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz227) (primMulInt (Pos vuz290) (Neg (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="black",shape="box"];4356 -> 4374[label="",style="solid", color="black", weight=3]; 114.10/79.17 4357[label="gcd2 (primEqInt (primPlusInt (Neg vuz228) (primMulInt (Neg vuz290) (Neg (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz227) (primMulInt (Neg vuz290) (Neg (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="black",shape="box"];4357 -> 4375[label="",style="solid", color="black", weight=3]; 114.10/79.17 4358[label="gcd2 (primEqInt (primPlusInt (Pos vuz230) (primMulInt (Pos vuz290) (Neg (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz229) (primMulInt (Pos vuz290) (Neg (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="black",shape="box"];4358 -> 4376[label="",style="solid", color="black", weight=3]; 114.10/79.17 4359[label="gcd2 (primEqInt (primPlusInt (Pos vuz230) (primMulInt (Neg vuz290) (Neg (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz229) (primMulInt (Neg vuz290) (Neg (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="black",shape="box"];4359 -> 4377[label="",style="solid", color="black", weight=3]; 114.10/79.17 4220[label="vuz85",fontsize=16,color="green",shape="box"];4221[label="vuz93",fontsize=16,color="green",shape="box"];4222[label="gcd (Pos vuz221) (Pos vuz54)",fontsize=16,color="black",shape="box"];4222 -> 4237[label="",style="solid", color="black", weight=3]; 114.10/79.17 1566 -> 1382[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1566[label="primQuotInt (primMinusNat vuz850 vuz950) (reduce2D (primMinusNat vuz850 vuz950) (Pos vuz54))",fontsize=16,color="magenta"];1566 -> 1650[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1566 -> 1651[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1567 -> 3726[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1567[label="primQuotInt (Pos (Succ vuz850)) (reduce2D (Pos (Succ vuz850)) (Pos vuz54))",fontsize=16,color="magenta"];1567 -> 3792[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1567 -> 3793[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1568 -> 2269[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1568[label="primQuotInt (Neg (Succ vuz950)) (reduce2D (Neg (Succ vuz950)) (Pos vuz54))",fontsize=16,color="magenta"];1568 -> 2350[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1568 -> 2351[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1569 -> 3726[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1569[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Pos vuz54))",fontsize=16,color="magenta"];1569 -> 3794[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1569 -> 3795[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2814[label="vuz87",fontsize=16,color="green",shape="box"];2815[label="vuz99",fontsize=16,color="green",shape="box"];2816[label="gcd (Neg vuz160) (Pos vuz54)",fontsize=16,color="black",shape="box"];2816 -> 2831[label="",style="solid", color="black", weight=3]; 114.10/79.17 4370 -> 4390[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4370[label="gcd2 (primEqInt (primPlusInt (Pos vuz224) (Pos (primMulNat vuz80 (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz223) (Pos (primMulNat vuz80 (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="magenta"];4370 -> 4391[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4370 -> 4392[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4371 -> 4398[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4371[label="gcd2 (primEqInt (primPlusInt (Pos vuz224) (Neg (primMulNat vuz80 (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz223) (Neg (primMulNat vuz80 (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="magenta"];4371 -> 4399[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4371 -> 4400[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4372 -> 4406[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4372[label="gcd2 (primEqInt (primPlusInt (Neg vuz226) (Pos (primMulNat vuz80 (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz225) (Pos (primMulNat vuz80 (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="magenta"];4372 -> 4407[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4372 -> 4408[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4373 -> 4414[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4373[label="gcd2 (primEqInt (primPlusInt (Neg vuz226) (Neg (primMulNat vuz80 (Succ vuz9)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz225) (Neg (primMulNat vuz80 (Succ vuz9)))) (Pos vuz54)",fontsize=16,color="magenta"];4373 -> 4415[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4373 -> 4416[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1607 -> 1407[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1607[label="primQuotInt (primMinusNat vuz1050 vuz770) (reduce2D (primMinusNat vuz1050 vuz770) (Neg vuz45))",fontsize=16,color="magenta"];1607 -> 1679[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1607 -> 1680[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1608 -> 3726[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1608[label="primQuotInt (Pos (Succ vuz1050)) (reduce2D (Pos (Succ vuz1050)) (Neg vuz45))",fontsize=16,color="magenta"];1608 -> 3800[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1608 -> 3801[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1609 -> 2269[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1609[label="primQuotInt (Neg (Succ vuz770)) (reduce2D (Neg (Succ vuz770)) (Neg vuz45))",fontsize=16,color="magenta"];1609 -> 2354[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1609 -> 2355[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1610 -> 3726[label="",style="dashed", color="red", weight=0]; 114.10/79.17 1610[label="primQuotInt (Pos Zero) (reduce2D (Pos Zero) (Neg vuz45))",fontsize=16,color="magenta"];1610 -> 3802[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 1610 -> 3803[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2817[label="vuz77",fontsize=16,color="green",shape="box"];2818[label="vuz107",fontsize=16,color="green",shape="box"];2819[label="gcd (Neg vuz161) (Neg vuz45)",fontsize=16,color="black",shape="box"];2819 -> 2832[label="",style="solid", color="black", weight=3]; 114.10/79.17 4223[label="vuz79",fontsize=16,color="green",shape="box"];4224[label="vuz109",fontsize=16,color="green",shape="box"];4225[label="gcd (Pos vuz222) (Neg vuz45)",fontsize=16,color="black",shape="box"];4225 -> 4238[label="",style="solid", color="black", weight=3]; 114.10/79.17 2971 -> 2995[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2971[label="gcd2 (primEqInt (primPlusInt (Neg vuz163) (Pos (primMulNat vuz190 (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz162) (Pos (primMulNat vuz190 (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="magenta"];2971 -> 2996[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2971 -> 2997[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2972 -> 3003[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2972[label="gcd2 (primEqInt (primPlusInt (Neg vuz163) (Neg (primMulNat vuz190 (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz162) (Neg (primMulNat vuz190 (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="magenta"];2972 -> 3004[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2972 -> 3005[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2973 -> 3011[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2973[label="gcd2 (primEqInt (primPlusInt (Pos vuz165) (Pos (primMulNat vuz190 (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz164) (Pos (primMulNat vuz190 (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="magenta"];2973 -> 3012[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2973 -> 3013[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2974 -> 3019[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2974[label="gcd2 (primEqInt (primPlusInt (Pos vuz165) (Neg (primMulNat vuz190 (Succ vuz20)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz164) (Neg (primMulNat vuz190 (Succ vuz20)))) (Neg vuz45)",fontsize=16,color="magenta"];2974 -> 3020[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2974 -> 3021[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3689[label="primDivNatS0 (Succ vuz212) (Succ vuz213) (primGEqNatS (Succ vuz2140) (Succ vuz2150))",fontsize=16,color="black",shape="box"];3689 -> 3700[label="",style="solid", color="black", weight=3]; 114.10/79.17 3690[label="primDivNatS0 (Succ vuz212) (Succ vuz213) (primGEqNatS (Succ vuz2140) Zero)",fontsize=16,color="black",shape="box"];3690 -> 3701[label="",style="solid", color="black", weight=3]; 114.10/79.17 3691[label="primDivNatS0 (Succ vuz212) (Succ vuz213) (primGEqNatS Zero (Succ vuz2150))",fontsize=16,color="black",shape="box"];3691 -> 3702[label="",style="solid", color="black", weight=3]; 114.10/79.17 3692[label="primDivNatS0 (Succ vuz212) (Succ vuz213) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];3692 -> 3703[label="",style="solid", color="black", weight=3]; 114.10/79.17 2979[label="primMinusNatS (Succ vuz15800) Zero",fontsize=16,color="black",shape="triangle"];2979 -> 3032[label="",style="solid", color="black", weight=3]; 114.10/79.17 2980[label="Zero",fontsize=16,color="green",shape="box"];2981[label="primMinusNatS Zero Zero",fontsize=16,color="black",shape="triangle"];2981 -> 3033[label="",style="solid", color="black", weight=3]; 114.10/79.17 2982[label="Zero",fontsize=16,color="green",shape="box"];2983 -> 3019[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2983[label="gcd2 (primEqInt (primPlusInt (Pos vuz167) (Neg (primMulNat vuz240 (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz166) (Neg (primMulNat vuz240 (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="magenta"];2983 -> 3022[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2983 -> 3023[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2983 -> 3024[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2983 -> 3025[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2983 -> 3026[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2984 -> 3011[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2984[label="gcd2 (primEqInt (primPlusInt (Pos vuz167) (Pos (primMulNat vuz240 (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz166) (Pos (primMulNat vuz240 (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="magenta"];2984 -> 3014[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2984 -> 3015[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2984 -> 3016[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2984 -> 3017[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2984 -> 3018[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2985 -> 3003[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2985[label="gcd2 (primEqInt (primPlusInt (Neg vuz169) (Neg (primMulNat vuz240 (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz168) (Neg (primMulNat vuz240 (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="magenta"];2985 -> 3006[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2985 -> 3007[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2985 -> 3008[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2985 -> 3009[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2985 -> 3010[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2986 -> 2995[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2986[label="gcd2 (primEqInt (primPlusInt (Neg vuz169) (Pos (primMulNat vuz240 (Succ vuz25)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz168) (Pos (primMulNat vuz240 (Succ vuz25)))) (Neg vuz48)",fontsize=16,color="magenta"];2986 -> 2998[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2986 -> 2999[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2986 -> 3000[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2986 -> 3001[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2986 -> 3002[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4374 -> 4414[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4374[label="gcd2 (primEqInt (primPlusInt (Neg vuz228) (Neg (primMulNat vuz290 (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz227) (Neg (primMulNat vuz290 (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="magenta"];4374 -> 4417[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4374 -> 4418[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4374 -> 4419[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4374 -> 4420[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4374 -> 4421[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4375 -> 4406[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4375[label="gcd2 (primEqInt (primPlusInt (Neg vuz228) (Pos (primMulNat vuz290 (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Neg vuz227) (Pos (primMulNat vuz290 (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="magenta"];4375 -> 4409[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4375 -> 4410[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4375 -> 4411[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4375 -> 4412[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4375 -> 4413[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4376 -> 4398[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4376[label="gcd2 (primEqInt (primPlusInt (Pos vuz230) (Neg (primMulNat vuz290 (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz229) (Neg (primMulNat vuz290 (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="magenta"];4376 -> 4401[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4376 -> 4402[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4376 -> 4403[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4376 -> 4404[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4376 -> 4405[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4377 -> 4390[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4377[label="gcd2 (primEqInt (primPlusInt (Pos vuz230) (Pos (primMulNat vuz290 (Succ vuz30)))) (fromInt (Pos Zero))) (primPlusInt (Pos vuz229) (Pos (primMulNat vuz290 (Succ vuz30)))) (Pos vuz51)",fontsize=16,color="magenta"];4377 -> 4393[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4377 -> 4394[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4377 -> 4395[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4377 -> 4396[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4377 -> 4397[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4237[label="gcd3 (Pos vuz221) (Pos vuz54)",fontsize=16,color="black",shape="box"];4237 -> 4253[label="",style="solid", color="black", weight=3]; 114.10/79.17 1650[label="vuz950",fontsize=16,color="green",shape="box"];1651[label="vuz850",fontsize=16,color="green",shape="box"];3792 -> 4196[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3792[label="reduce2D (Pos (Succ vuz850)) (Pos vuz54)",fontsize=16,color="magenta"];3792 -> 4198[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3793[label="Succ vuz850",fontsize=16,color="green",shape="box"];2350[label="Succ vuz950",fontsize=16,color="green",shape="box"];2351 -> 2794[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2351[label="reduce2D (Neg (Succ vuz950)) (Pos vuz54)",fontsize=16,color="magenta"];2351 -> 2796[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3794 -> 4196[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3794[label="reduce2D (Pos Zero) (Pos vuz54)",fontsize=16,color="magenta"];3794 -> 4199[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3795[label="Zero",fontsize=16,color="green",shape="box"];2831[label="gcd3 (Neg vuz160) (Pos vuz54)",fontsize=16,color="black",shape="box"];2831 -> 2846[label="",style="solid", color="black", weight=3]; 114.10/79.17 4391 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4391[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];4391 -> 4422[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4391 -> 4423[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4392 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4392[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];4392 -> 4424[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4392 -> 4425[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4390[label="gcd2 (primEqInt (primPlusInt (Pos vuz224) (Pos vuz232)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz223) (Pos vuz231)) (Pos vuz54)",fontsize=16,color="black",shape="triangle"];4390 -> 4426[label="",style="solid", color="black", weight=3]; 114.10/79.17 4399 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4399[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];4399 -> 4427[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4399 -> 4428[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4400 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4400[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];4400 -> 4429[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4400 -> 4430[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4398[label="gcd2 (primEqInt (primPlusInt (Pos vuz224) (Neg vuz234)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz223) (Neg vuz233)) (Pos vuz54)",fontsize=16,color="black",shape="triangle"];4398 -> 4431[label="",style="solid", color="black", weight=3]; 114.10/79.17 4407 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4407[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];4407 -> 4432[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4407 -> 4433[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4408 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4408[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];4408 -> 4434[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4408 -> 4435[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4406[label="gcd2 (primEqInt (primPlusInt (Neg vuz226) (Pos vuz236)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz225) (Pos vuz235)) (Pos vuz54)",fontsize=16,color="black",shape="triangle"];4406 -> 4436[label="",style="solid", color="black", weight=3]; 114.10/79.17 4415 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4415[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];4415 -> 4437[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4415 -> 4438[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4416 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4416[label="primMulNat vuz80 (Succ vuz9)",fontsize=16,color="magenta"];4416 -> 4439[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4416 -> 4440[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4414[label="gcd2 (primEqInt (primPlusInt (Neg vuz226) (Neg vuz238)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz225) (Neg vuz237)) (Pos vuz54)",fontsize=16,color="black",shape="triangle"];4414 -> 4441[label="",style="solid", color="black", weight=3]; 114.10/79.17 1679[label="vuz770",fontsize=16,color="green",shape="box"];1680[label="vuz1050",fontsize=16,color="green",shape="box"];3800 -> 4208[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3800[label="reduce2D (Pos (Succ vuz1050)) (Neg vuz45)",fontsize=16,color="magenta"];3800 -> 4210[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3801[label="Succ vuz1050",fontsize=16,color="green",shape="box"];2354[label="Succ vuz770",fontsize=16,color="green",shape="box"];2355 -> 2805[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2355[label="reduce2D (Neg (Succ vuz770)) (Neg vuz45)",fontsize=16,color="magenta"];2355 -> 2807[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3802 -> 4208[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3802[label="reduce2D (Pos Zero) (Neg vuz45)",fontsize=16,color="magenta"];3802 -> 4211[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3803[label="Zero",fontsize=16,color="green",shape="box"];2832[label="gcd3 (Neg vuz161) (Neg vuz45)",fontsize=16,color="black",shape="box"];2832 -> 2847[label="",style="solid", color="black", weight=3]; 114.10/79.17 4238[label="gcd3 (Pos vuz222) (Neg vuz45)",fontsize=16,color="black",shape="box"];4238 -> 4254[label="",style="solid", color="black", weight=3]; 114.10/79.17 2996 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2996[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];2996 -> 3034[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2996 -> 3035[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2997 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2997[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];2997 -> 3036[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2997 -> 3037[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2995[label="gcd2 (primEqInt (primPlusInt (Neg vuz163) (Pos vuz171)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz162) (Pos vuz170)) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];2995 -> 3038[label="",style="solid", color="black", weight=3]; 114.10/79.17 3004 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3004[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];3004 -> 3039[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3004 -> 3040[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3005 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3005[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];3005 -> 3041[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3005 -> 3042[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3003[label="gcd2 (primEqInt (primPlusInt (Neg vuz163) (Neg vuz173)) (fromInt (Pos Zero))) (primPlusInt (Neg vuz162) (Neg vuz172)) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];3003 -> 3043[label="",style="solid", color="black", weight=3]; 114.10/79.17 3012 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3012[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];3012 -> 3044[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3012 -> 3045[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3013 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3013[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];3013 -> 3046[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3013 -> 3047[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3011[label="gcd2 (primEqInt (primPlusInt (Pos vuz165) (Pos vuz175)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz164) (Pos vuz174)) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];3011 -> 3048[label="",style="solid", color="black", weight=3]; 114.10/79.17 3020 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3020[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];3020 -> 3049[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3020 -> 3050[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3021 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3021[label="primMulNat vuz190 (Succ vuz20)",fontsize=16,color="magenta"];3021 -> 3051[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3021 -> 3052[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3019[label="gcd2 (primEqInt (primPlusInt (Pos vuz165) (Neg vuz177)) (fromInt (Pos Zero))) (primPlusInt (Pos vuz164) (Neg vuz176)) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];3019 -> 3053[label="",style="solid", color="black", weight=3]; 114.10/79.17 3700 -> 3623[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3700[label="primDivNatS0 (Succ vuz212) (Succ vuz213) (primGEqNatS vuz2140 vuz2150)",fontsize=16,color="magenta"];3700 -> 3710[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3700 -> 3711[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3701[label="primDivNatS0 (Succ vuz212) (Succ vuz213) True",fontsize=16,color="black",shape="triangle"];3701 -> 3712[label="",style="solid", color="black", weight=3]; 114.10/79.17 3702[label="primDivNatS0 (Succ vuz212) (Succ vuz213) False",fontsize=16,color="black",shape="box"];3702 -> 3713[label="",style="solid", color="black", weight=3]; 114.10/79.17 3703 -> 3701[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3703[label="primDivNatS0 (Succ vuz212) (Succ vuz213) True",fontsize=16,color="magenta"];3032[label="Succ vuz15800",fontsize=16,color="green",shape="box"];3033[label="Zero",fontsize=16,color="green",shape="box"];3022[label="vuz48",fontsize=16,color="green",shape="box"];3023 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3023[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];3023 -> 3054[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3023 -> 3055[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3024[label="vuz167",fontsize=16,color="green",shape="box"];3025[label="vuz166",fontsize=16,color="green",shape="box"];3026 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3026[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];3026 -> 3056[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3026 -> 3057[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3014[label="vuz48",fontsize=16,color="green",shape="box"];3015[label="vuz167",fontsize=16,color="green",shape="box"];3016 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3016[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];3016 -> 3058[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3016 -> 3059[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3017[label="vuz166",fontsize=16,color="green",shape="box"];3018 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3018[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];3018 -> 3060[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3018 -> 3061[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3006 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3006[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];3006 -> 3062[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3006 -> 3063[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3007[label="vuz48",fontsize=16,color="green",shape="box"];3008[label="vuz168",fontsize=16,color="green",shape="box"];3009 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3009[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];3009 -> 3064[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3009 -> 3065[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3010[label="vuz169",fontsize=16,color="green",shape="box"];2998[label="vuz48",fontsize=16,color="green",shape="box"];2999[label="vuz168",fontsize=16,color="green",shape="box"];3000 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3000[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];3000 -> 3066[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3000 -> 3067[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3001 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3001[label="primMulNat vuz240 (Succ vuz25)",fontsize=16,color="magenta"];3001 -> 3068[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3001 -> 3069[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3002[label="vuz169",fontsize=16,color="green",shape="box"];4417 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4417[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];4417 -> 4442[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4417 -> 4443[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4418 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4418[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];4418 -> 4444[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4418 -> 4445[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4419[label="vuz228",fontsize=16,color="green",shape="box"];4420[label="vuz227",fontsize=16,color="green",shape="box"];4421[label="vuz51",fontsize=16,color="green",shape="box"];4409 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4409[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];4409 -> 4446[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4409 -> 4447[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4410 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4410[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];4410 -> 4448[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4410 -> 4449[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4411[label="vuz228",fontsize=16,color="green",shape="box"];4412[label="vuz227",fontsize=16,color="green",shape="box"];4413[label="vuz51",fontsize=16,color="green",shape="box"];4401[label="vuz230",fontsize=16,color="green",shape="box"];4402 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4402[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];4402 -> 4450[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4402 -> 4451[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4403 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4403[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];4403 -> 4452[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4403 -> 4453[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4404[label="vuz229",fontsize=16,color="green",shape="box"];4405[label="vuz51",fontsize=16,color="green",shape="box"];4393[label="vuz230",fontsize=16,color="green",shape="box"];4394 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4394[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];4394 -> 4454[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4394 -> 4455[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4395 -> 358[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4395[label="primMulNat vuz290 (Succ vuz30)",fontsize=16,color="magenta"];4395 -> 4456[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4395 -> 4457[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4396[label="vuz229",fontsize=16,color="green",shape="box"];4397[label="vuz51",fontsize=16,color="green",shape="box"];4253[label="gcd2 (Pos vuz221 == fromInt (Pos Zero)) (Pos vuz221) (Pos vuz54)",fontsize=16,color="black",shape="box"];4253 -> 4264[label="",style="solid", color="black", weight=3]; 114.10/79.17 4198[label="Succ vuz850",fontsize=16,color="green",shape="box"];2796[label="Succ vuz950",fontsize=16,color="green",shape="box"];4199[label="Zero",fontsize=16,color="green",shape="box"];2846[label="gcd2 (Neg vuz160 == fromInt (Pos Zero)) (Neg vuz160) (Pos vuz54)",fontsize=16,color="black",shape="box"];2846 -> 2858[label="",style="solid", color="black", weight=3]; 114.10/79.17 4422[label="vuz80",fontsize=16,color="green",shape="box"];4423[label="vuz9",fontsize=16,color="green",shape="box"];4424[label="vuz80",fontsize=16,color="green",shape="box"];4425[label="vuz9",fontsize=16,color="green",shape="box"];4426 -> 4264[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4426[label="gcd2 (primEqInt (Pos (primPlusNat vuz224 vuz232)) (fromInt (Pos Zero))) (Pos (primPlusNat vuz224 vuz232)) (Pos vuz54)",fontsize=16,color="magenta"];4426 -> 4473[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4427[label="vuz80",fontsize=16,color="green",shape="box"];4428[label="vuz9",fontsize=16,color="green",shape="box"];4429[label="vuz80",fontsize=16,color="green",shape="box"];4430[label="vuz9",fontsize=16,color="green",shape="box"];4431[label="gcd2 (primEqInt (primMinusNat vuz224 vuz234) (fromInt (Pos Zero))) (primMinusNat vuz224 vuz234) (Pos vuz54)",fontsize=16,color="burlywood",shape="triangle"];4969[label="vuz224/Succ vuz2240",fontsize=10,color="white",style="solid",shape="box"];4431 -> 4969[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4969 -> 4474[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4970[label="vuz224/Zero",fontsize=10,color="white",style="solid",shape="box"];4431 -> 4970[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4970 -> 4475[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4432[label="vuz80",fontsize=16,color="green",shape="box"];4433[label="vuz9",fontsize=16,color="green",shape="box"];4434[label="vuz80",fontsize=16,color="green",shape="box"];4435[label="vuz9",fontsize=16,color="green",shape="box"];4436 -> 4431[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4436[label="gcd2 (primEqInt (primMinusNat vuz236 vuz226) (fromInt (Pos Zero))) (primMinusNat vuz236 vuz226) (Pos vuz54)",fontsize=16,color="magenta"];4436 -> 4476[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4436 -> 4477[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4437[label="vuz80",fontsize=16,color="green",shape="box"];4438[label="vuz9",fontsize=16,color="green",shape="box"];4439[label="vuz80",fontsize=16,color="green",shape="box"];4440[label="vuz9",fontsize=16,color="green",shape="box"];4441 -> 2858[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4441[label="gcd2 (primEqInt (Neg (primPlusNat vuz226 vuz238)) (fromInt (Pos Zero))) (Neg (primPlusNat vuz226 vuz238)) (Pos vuz54)",fontsize=16,color="magenta"];4441 -> 4478[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4210[label="Succ vuz1050",fontsize=16,color="green",shape="box"];2807[label="Succ vuz770",fontsize=16,color="green",shape="box"];4211[label="Zero",fontsize=16,color="green",shape="box"];2847[label="gcd2 (Neg vuz161 == fromInt (Pos Zero)) (Neg vuz161) (Neg vuz45)",fontsize=16,color="black",shape="box"];2847 -> 2859[label="",style="solid", color="black", weight=3]; 114.10/79.17 4254[label="gcd2 (Pos vuz222 == fromInt (Pos Zero)) (Pos vuz222) (Neg vuz45)",fontsize=16,color="black",shape="box"];4254 -> 4265[label="",style="solid", color="black", weight=3]; 114.10/79.17 3034[label="vuz190",fontsize=16,color="green",shape="box"];3035[label="vuz20",fontsize=16,color="green",shape="box"];3036[label="vuz190",fontsize=16,color="green",shape="box"];3037[label="vuz20",fontsize=16,color="green",shape="box"];3038[label="gcd2 (primEqInt (primMinusNat vuz171 vuz163) (fromInt (Pos Zero))) (primMinusNat vuz171 vuz163) (Neg vuz45)",fontsize=16,color="burlywood",shape="triangle"];4971[label="vuz171/Succ vuz1710",fontsize=10,color="white",style="solid",shape="box"];3038 -> 4971[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4971 -> 3086[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4972[label="vuz171/Zero",fontsize=10,color="white",style="solid",shape="box"];3038 -> 4972[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4972 -> 3087[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 3039[label="vuz190",fontsize=16,color="green",shape="box"];3040[label="vuz20",fontsize=16,color="green",shape="box"];3041[label="vuz190",fontsize=16,color="green",shape="box"];3042[label="vuz20",fontsize=16,color="green",shape="box"];3043 -> 2859[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3043[label="gcd2 (primEqInt (Neg (primPlusNat vuz163 vuz173)) (fromInt (Pos Zero))) (Neg (primPlusNat vuz163 vuz173)) (Neg vuz45)",fontsize=16,color="magenta"];3043 -> 3088[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3044[label="vuz190",fontsize=16,color="green",shape="box"];3045[label="vuz20",fontsize=16,color="green",shape="box"];3046[label="vuz190",fontsize=16,color="green",shape="box"];3047[label="vuz20",fontsize=16,color="green",shape="box"];3048 -> 3089[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3048[label="gcd2 (primEqInt (Pos (primPlusNat vuz165 vuz175)) (fromInt (Pos Zero))) (Pos (primPlusNat vuz165 vuz175)) (Neg vuz45)",fontsize=16,color="magenta"];3048 -> 3090[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3048 -> 3091[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3049[label="vuz190",fontsize=16,color="green",shape="box"];3050[label="vuz20",fontsize=16,color="green",shape="box"];3051[label="vuz190",fontsize=16,color="green",shape="box"];3052[label="vuz20",fontsize=16,color="green",shape="box"];3053 -> 3038[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3053[label="gcd2 (primEqInt (primMinusNat vuz165 vuz177) (fromInt (Pos Zero))) (primMinusNat vuz165 vuz177) (Neg vuz45)",fontsize=16,color="magenta"];3053 -> 3092[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3053 -> 3093[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3710[label="vuz2150",fontsize=16,color="green",shape="box"];3711[label="vuz2140",fontsize=16,color="green",shape="box"];3712[label="Succ (primDivNatS (primMinusNatS (Succ vuz212) (Succ vuz213)) (Succ (Succ vuz213)))",fontsize=16,color="green",shape="box"];3712 -> 4226[label="",style="dashed", color="green", weight=3]; 114.10/79.17 3713[label="Zero",fontsize=16,color="green",shape="box"];3054[label="vuz240",fontsize=16,color="green",shape="box"];3055[label="vuz25",fontsize=16,color="green",shape="box"];3056[label="vuz240",fontsize=16,color="green",shape="box"];3057[label="vuz25",fontsize=16,color="green",shape="box"];3058[label="vuz240",fontsize=16,color="green",shape="box"];3059[label="vuz25",fontsize=16,color="green",shape="box"];3060[label="vuz240",fontsize=16,color="green",shape="box"];3061[label="vuz25",fontsize=16,color="green",shape="box"];3062[label="vuz240",fontsize=16,color="green",shape="box"];3063[label="vuz25",fontsize=16,color="green",shape="box"];3064[label="vuz240",fontsize=16,color="green",shape="box"];3065[label="vuz25",fontsize=16,color="green",shape="box"];3066[label="vuz240",fontsize=16,color="green",shape="box"];3067[label="vuz25",fontsize=16,color="green",shape="box"];3068[label="vuz240",fontsize=16,color="green",shape="box"];3069[label="vuz25",fontsize=16,color="green",shape="box"];4442[label="vuz290",fontsize=16,color="green",shape="box"];4443[label="vuz30",fontsize=16,color="green",shape="box"];4444[label="vuz290",fontsize=16,color="green",shape="box"];4445[label="vuz30",fontsize=16,color="green",shape="box"];4446[label="vuz290",fontsize=16,color="green",shape="box"];4447[label="vuz30",fontsize=16,color="green",shape="box"];4448[label="vuz290",fontsize=16,color="green",shape="box"];4449[label="vuz30",fontsize=16,color="green",shape="box"];4450[label="vuz290",fontsize=16,color="green",shape="box"];4451[label="vuz30",fontsize=16,color="green",shape="box"];4452[label="vuz290",fontsize=16,color="green",shape="box"];4453[label="vuz30",fontsize=16,color="green",shape="box"];4454[label="vuz290",fontsize=16,color="green",shape="box"];4455[label="vuz30",fontsize=16,color="green",shape="box"];4456[label="vuz290",fontsize=16,color="green",shape="box"];4457[label="vuz30",fontsize=16,color="green",shape="box"];4264[label="gcd2 (primEqInt (Pos vuz221) (fromInt (Pos Zero))) (Pos vuz221) (Pos vuz54)",fontsize=16,color="burlywood",shape="triangle"];4973[label="vuz221/Succ vuz2210",fontsize=10,color="white",style="solid",shape="box"];4264 -> 4973[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4973 -> 4279[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4974[label="vuz221/Zero",fontsize=10,color="white",style="solid",shape="box"];4264 -> 4974[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4974 -> 4280[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 2858[label="gcd2 (primEqInt (Neg vuz160) (fromInt (Pos Zero))) (Neg vuz160) (Pos vuz54)",fontsize=16,color="burlywood",shape="triangle"];4975[label="vuz160/Succ vuz1600",fontsize=10,color="white",style="solid",shape="box"];2858 -> 4975[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4975 -> 2872[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4976[label="vuz160/Zero",fontsize=10,color="white",style="solid",shape="box"];2858 -> 4976[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4976 -> 2873[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4473 -> 886[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4473[label="primPlusNat vuz224 vuz232",fontsize=16,color="magenta"];4473 -> 4492[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4473 -> 4493[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4474[label="gcd2 (primEqInt (primMinusNat (Succ vuz2240) vuz234) (fromInt (Pos Zero))) (primMinusNat (Succ vuz2240) vuz234) (Pos vuz54)",fontsize=16,color="burlywood",shape="box"];4977[label="vuz234/Succ vuz2340",fontsize=10,color="white",style="solid",shape="box"];4474 -> 4977[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4977 -> 4494[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4978[label="vuz234/Zero",fontsize=10,color="white",style="solid",shape="box"];4474 -> 4978[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4978 -> 4495[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4475[label="gcd2 (primEqInt (primMinusNat Zero vuz234) (fromInt (Pos Zero))) (primMinusNat Zero vuz234) (Pos vuz54)",fontsize=16,color="burlywood",shape="box"];4979[label="vuz234/Succ vuz2340",fontsize=10,color="white",style="solid",shape="box"];4475 -> 4979[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4979 -> 4496[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4980[label="vuz234/Zero",fontsize=10,color="white",style="solid",shape="box"];4475 -> 4980[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4980 -> 4497[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4476[label="vuz236",fontsize=16,color="green",shape="box"];4477[label="vuz226",fontsize=16,color="green",shape="box"];4478 -> 886[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4478[label="primPlusNat vuz226 vuz238",fontsize=16,color="magenta"];4478 -> 4498[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4478 -> 4499[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2859[label="gcd2 (primEqInt (Neg vuz161) (fromInt (Pos Zero))) (Neg vuz161) (Neg vuz45)",fontsize=16,color="burlywood",shape="triangle"];4981[label="vuz161/Succ vuz1610",fontsize=10,color="white",style="solid",shape="box"];2859 -> 4981[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4981 -> 2874[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4982[label="vuz161/Zero",fontsize=10,color="white",style="solid",shape="box"];2859 -> 4982[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4982 -> 2875[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4265 -> 3089[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4265[label="gcd2 (primEqInt (Pos vuz222) (fromInt (Pos Zero))) (Pos vuz222) (Neg vuz45)",fontsize=16,color="magenta"];4265 -> 4281[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4265 -> 4282[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3086[label="gcd2 (primEqInt (primMinusNat (Succ vuz1710) vuz163) (fromInt (Pos Zero))) (primMinusNat (Succ vuz1710) vuz163) (Neg vuz45)",fontsize=16,color="burlywood",shape="box"];4983[label="vuz163/Succ vuz1630",fontsize=10,color="white",style="solid",shape="box"];3086 -> 4983[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4983 -> 3102[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4984[label="vuz163/Zero",fontsize=10,color="white",style="solid",shape="box"];3086 -> 4984[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4984 -> 3103[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 3087[label="gcd2 (primEqInt (primMinusNat Zero vuz163) (fromInt (Pos Zero))) (primMinusNat Zero vuz163) (Neg vuz45)",fontsize=16,color="burlywood",shape="box"];4985[label="vuz163/Succ vuz1630",fontsize=10,color="white",style="solid",shape="box"];3087 -> 4985[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4985 -> 3104[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4986[label="vuz163/Zero",fontsize=10,color="white",style="solid",shape="box"];3087 -> 4986[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4986 -> 3105[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 3088 -> 886[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3088[label="primPlusNat vuz163 vuz173",fontsize=16,color="magenta"];3088 -> 3106[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3088 -> 3107[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3090 -> 886[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3090[label="primPlusNat vuz165 vuz175",fontsize=16,color="magenta"];3090 -> 3108[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3090 -> 3109[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3091 -> 886[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3091[label="primPlusNat vuz165 vuz175",fontsize=16,color="magenta"];3091 -> 3110[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3091 -> 3111[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3089[label="gcd2 (primEqInt (Pos vuz179) (fromInt (Pos Zero))) (Pos vuz178) (Neg vuz45)",fontsize=16,color="burlywood",shape="triangle"];4987[label="vuz179/Succ vuz1790",fontsize=10,color="white",style="solid",shape="box"];3089 -> 4987[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4987 -> 3112[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4988[label="vuz179/Zero",fontsize=10,color="white",style="solid",shape="box"];3089 -> 4988[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4988 -> 3113[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 3092[label="vuz165",fontsize=16,color="green",shape="box"];3093[label="vuz177",fontsize=16,color="green",shape="box"];4226 -> 2827[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4226[label="primDivNatS (primMinusNatS (Succ vuz212) (Succ vuz213)) (Succ (Succ vuz213))",fontsize=16,color="magenta"];4226 -> 4239[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4226 -> 4240[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4279[label="gcd2 (primEqInt (Pos (Succ vuz2210)) (fromInt (Pos Zero))) (Pos (Succ vuz2210)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4279 -> 4296[label="",style="solid", color="black", weight=3]; 114.10/79.17 4280[label="gcd2 (primEqInt (Pos Zero) (fromInt (Pos Zero))) (Pos Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];4280 -> 4297[label="",style="solid", color="black", weight=3]; 114.10/79.17 2872[label="gcd2 (primEqInt (Neg (Succ vuz1600)) (fromInt (Pos Zero))) (Neg (Succ vuz1600)) (Pos vuz54)",fontsize=16,color="black",shape="box"];2872 -> 2891[label="",style="solid", color="black", weight=3]; 114.10/79.17 2873[label="gcd2 (primEqInt (Neg Zero) (fromInt (Pos Zero))) (Neg Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];2873 -> 2892[label="",style="solid", color="black", weight=3]; 114.10/79.17 4492[label="vuz224",fontsize=16,color="green",shape="box"];4493[label="vuz232",fontsize=16,color="green",shape="box"];4494[label="gcd2 (primEqInt (primMinusNat (Succ vuz2240) (Succ vuz2340)) (fromInt (Pos Zero))) (primMinusNat (Succ vuz2240) (Succ vuz2340)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4494 -> 4506[label="",style="solid", color="black", weight=3]; 114.10/79.17 4495[label="gcd2 (primEqInt (primMinusNat (Succ vuz2240) Zero) (fromInt (Pos Zero))) (primMinusNat (Succ vuz2240) Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];4495 -> 4507[label="",style="solid", color="black", weight=3]; 114.10/79.17 4496[label="gcd2 (primEqInt (primMinusNat Zero (Succ vuz2340)) (fromInt (Pos Zero))) (primMinusNat Zero (Succ vuz2340)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4496 -> 4508[label="",style="solid", color="black", weight=3]; 114.10/79.17 4497[label="gcd2 (primEqInt (primMinusNat Zero Zero) (fromInt (Pos Zero))) (primMinusNat Zero Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];4497 -> 4509[label="",style="solid", color="black", weight=3]; 114.10/79.17 4498[label="vuz226",fontsize=16,color="green",shape="box"];4499[label="vuz238",fontsize=16,color="green",shape="box"];2874[label="gcd2 (primEqInt (Neg (Succ vuz1610)) (fromInt (Pos Zero))) (Neg (Succ vuz1610)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2874 -> 2893[label="",style="solid", color="black", weight=3]; 114.10/79.17 2875[label="gcd2 (primEqInt (Neg Zero) (fromInt (Pos Zero))) (Neg Zero) (Neg vuz45)",fontsize=16,color="black",shape="box"];2875 -> 2894[label="",style="solid", color="black", weight=3]; 114.10/79.17 4281[label="vuz222",fontsize=16,color="green",shape="box"];4282[label="vuz222",fontsize=16,color="green",shape="box"];3102[label="gcd2 (primEqInt (primMinusNat (Succ vuz1710) (Succ vuz1630)) (fromInt (Pos Zero))) (primMinusNat (Succ vuz1710) (Succ vuz1630)) (Neg vuz45)",fontsize=16,color="black",shape="box"];3102 -> 3132[label="",style="solid", color="black", weight=3]; 114.10/79.17 3103[label="gcd2 (primEqInt (primMinusNat (Succ vuz1710) Zero) (fromInt (Pos Zero))) (primMinusNat (Succ vuz1710) Zero) (Neg vuz45)",fontsize=16,color="black",shape="box"];3103 -> 3133[label="",style="solid", color="black", weight=3]; 114.10/79.17 3104[label="gcd2 (primEqInt (primMinusNat Zero (Succ vuz1630)) (fromInt (Pos Zero))) (primMinusNat Zero (Succ vuz1630)) (Neg vuz45)",fontsize=16,color="black",shape="box"];3104 -> 3134[label="",style="solid", color="black", weight=3]; 114.10/79.17 3105[label="gcd2 (primEqInt (primMinusNat Zero Zero) (fromInt (Pos Zero))) (primMinusNat Zero Zero) (Neg vuz45)",fontsize=16,color="black",shape="box"];3105 -> 3135[label="",style="solid", color="black", weight=3]; 114.10/79.17 3106[label="vuz163",fontsize=16,color="green",shape="box"];3107[label="vuz173",fontsize=16,color="green",shape="box"];3108[label="vuz165",fontsize=16,color="green",shape="box"];3109[label="vuz175",fontsize=16,color="green",shape="box"];3110[label="vuz165",fontsize=16,color="green",shape="box"];3111[label="vuz175",fontsize=16,color="green",shape="box"];3112[label="gcd2 (primEqInt (Pos (Succ vuz1790)) (fromInt (Pos Zero))) (Pos vuz178) (Neg vuz45)",fontsize=16,color="black",shape="box"];3112 -> 3136[label="",style="solid", color="black", weight=3]; 114.10/79.17 3113[label="gcd2 (primEqInt (Pos Zero) (fromInt (Pos Zero))) (Pos vuz178) (Neg vuz45)",fontsize=16,color="black",shape="box"];3113 -> 3137[label="",style="solid", color="black", weight=3]; 114.10/79.17 4239[label="primMinusNatS (Succ vuz212) (Succ vuz213)",fontsize=16,color="black",shape="box"];4239 -> 4255[label="",style="solid", color="black", weight=3]; 114.10/79.17 4240[label="Succ vuz213",fontsize=16,color="green",shape="box"];4296[label="gcd2 (primEqInt (Pos (Succ vuz2210)) (Pos Zero)) (Pos (Succ vuz2210)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4296 -> 4340[label="",style="solid", color="black", weight=3]; 114.10/79.17 4297[label="gcd2 (primEqInt (Pos Zero) (Pos Zero)) (Pos Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];4297 -> 4341[label="",style="solid", color="black", weight=3]; 114.10/79.17 2891[label="gcd2 (primEqInt (Neg (Succ vuz1600)) (Pos Zero)) (Neg (Succ vuz1600)) (Pos vuz54)",fontsize=16,color="black",shape="box"];2891 -> 2941[label="",style="solid", color="black", weight=3]; 114.10/79.17 2892[label="gcd2 (primEqInt (Neg Zero) (Pos Zero)) (Neg Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];2892 -> 2942[label="",style="solid", color="black", weight=3]; 114.10/79.17 4506 -> 4431[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4506[label="gcd2 (primEqInt (primMinusNat vuz2240 vuz2340) (fromInt (Pos Zero))) (primMinusNat vuz2240 vuz2340) (Pos vuz54)",fontsize=16,color="magenta"];4506 -> 4516[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4506 -> 4517[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4507 -> 4264[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4507[label="gcd2 (primEqInt (Pos (Succ vuz2240)) (fromInt (Pos Zero))) (Pos (Succ vuz2240)) (Pos vuz54)",fontsize=16,color="magenta"];4507 -> 4518[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4508 -> 2858[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4508[label="gcd2 (primEqInt (Neg (Succ vuz2340)) (fromInt (Pos Zero))) (Neg (Succ vuz2340)) (Pos vuz54)",fontsize=16,color="magenta"];4508 -> 4519[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4509 -> 4264[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4509[label="gcd2 (primEqInt (Pos Zero) (fromInt (Pos Zero))) (Pos Zero) (Pos vuz54)",fontsize=16,color="magenta"];4509 -> 4520[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2893[label="gcd2 (primEqInt (Neg (Succ vuz1610)) (Pos Zero)) (Neg (Succ vuz1610)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2893 -> 2943[label="",style="solid", color="black", weight=3]; 114.10/79.17 2894[label="gcd2 (primEqInt (Neg Zero) (Pos Zero)) (Neg Zero) (Neg vuz45)",fontsize=16,color="black",shape="box"];2894 -> 2944[label="",style="solid", color="black", weight=3]; 114.10/79.17 3132 -> 3038[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3132[label="gcd2 (primEqInt (primMinusNat vuz1710 vuz1630) (fromInt (Pos Zero))) (primMinusNat vuz1710 vuz1630) (Neg vuz45)",fontsize=16,color="magenta"];3132 -> 3158[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3132 -> 3159[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3133 -> 3089[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3133[label="gcd2 (primEqInt (Pos (Succ vuz1710)) (fromInt (Pos Zero))) (Pos (Succ vuz1710)) (Neg vuz45)",fontsize=16,color="magenta"];3133 -> 3160[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3133 -> 3161[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3134 -> 2859[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3134[label="gcd2 (primEqInt (Neg (Succ vuz1630)) (fromInt (Pos Zero))) (Neg (Succ vuz1630)) (Neg vuz45)",fontsize=16,color="magenta"];3134 -> 3162[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3135 -> 3089[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3135[label="gcd2 (primEqInt (Pos Zero) (fromInt (Pos Zero))) (Pos Zero) (Neg vuz45)",fontsize=16,color="magenta"];3135 -> 3163[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3135 -> 3164[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3136[label="gcd2 (primEqInt (Pos (Succ vuz1790)) (Pos Zero)) (Pos vuz178) (Neg vuz45)",fontsize=16,color="black",shape="box"];3136 -> 3165[label="",style="solid", color="black", weight=3]; 114.10/79.17 3137[label="gcd2 (primEqInt (Pos Zero) (Pos Zero)) (Pos vuz178) (Neg vuz45)",fontsize=16,color="black",shape="box"];3137 -> 3166[label="",style="solid", color="black", weight=3]; 114.10/79.17 4255[label="primMinusNatS vuz212 vuz213",fontsize=16,color="burlywood",shape="triangle"];4989[label="vuz212/Succ vuz2120",fontsize=10,color="white",style="solid",shape="box"];4255 -> 4989[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4989 -> 4266[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4990[label="vuz212/Zero",fontsize=10,color="white",style="solid",shape="box"];4255 -> 4990[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4990 -> 4267[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4340[label="gcd2 False (Pos (Succ vuz2210)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4340 -> 4360[label="",style="solid", color="black", weight=3]; 114.10/79.17 4341[label="gcd2 True (Pos Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];4341 -> 4361[label="",style="solid", color="black", weight=3]; 114.10/79.17 2941[label="gcd2 False (Neg (Succ vuz1600)) (Pos vuz54)",fontsize=16,color="black",shape="box"];2941 -> 2963[label="",style="solid", color="black", weight=3]; 114.10/79.17 2942[label="gcd2 True (Neg Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];2942 -> 2964[label="",style="solid", color="black", weight=3]; 114.10/79.17 4516[label="vuz2240",fontsize=16,color="green",shape="box"];4517[label="vuz2340",fontsize=16,color="green",shape="box"];4518[label="Succ vuz2240",fontsize=16,color="green",shape="box"];4519[label="Succ vuz2340",fontsize=16,color="green",shape="box"];4520[label="Zero",fontsize=16,color="green",shape="box"];2943[label="gcd2 False (Neg (Succ vuz1610)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2943 -> 2965[label="",style="solid", color="black", weight=3]; 114.10/79.17 2944[label="gcd2 True (Neg Zero) (Neg vuz45)",fontsize=16,color="black",shape="box"];2944 -> 2966[label="",style="solid", color="black", weight=3]; 114.10/79.17 3158[label="vuz1710",fontsize=16,color="green",shape="box"];3159[label="vuz1630",fontsize=16,color="green",shape="box"];3160[label="Succ vuz1710",fontsize=16,color="green",shape="box"];3161[label="Succ vuz1710",fontsize=16,color="green",shape="box"];3162[label="Succ vuz1630",fontsize=16,color="green",shape="box"];3163[label="Zero",fontsize=16,color="green",shape="box"];3164[label="Zero",fontsize=16,color="green",shape="box"];3165[label="gcd2 False (Pos vuz178) (Neg vuz45)",fontsize=16,color="black",shape="box"];3165 -> 3187[label="",style="solid", color="black", weight=3]; 114.10/79.17 3166[label="gcd2 True (Pos vuz178) (Neg vuz45)",fontsize=16,color="black",shape="box"];3166 -> 3188[label="",style="solid", color="black", weight=3]; 114.10/79.17 4266[label="primMinusNatS (Succ vuz2120) vuz213",fontsize=16,color="burlywood",shape="box"];4991[label="vuz213/Succ vuz2130",fontsize=10,color="white",style="solid",shape="box"];4266 -> 4991[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4991 -> 4283[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4992[label="vuz213/Zero",fontsize=10,color="white",style="solid",shape="box"];4266 -> 4992[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4992 -> 4284[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4267[label="primMinusNatS Zero vuz213",fontsize=16,color="burlywood",shape="box"];4993[label="vuz213/Succ vuz2130",fontsize=10,color="white",style="solid",shape="box"];4267 -> 4993[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4993 -> 4285[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4994[label="vuz213/Zero",fontsize=10,color="white",style="solid",shape="box"];4267 -> 4994[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4994 -> 4286[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4360[label="gcd0 (Pos (Succ vuz2210)) (Pos vuz54)",fontsize=16,color="black",shape="box"];4360 -> 4378[label="",style="solid", color="black", weight=3]; 114.10/79.17 4361[label="gcd1 (Pos vuz54 == fromInt (Pos Zero)) (Pos Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];4361 -> 4379[label="",style="solid", color="black", weight=3]; 114.10/79.17 2963[label="gcd0 (Neg (Succ vuz1600)) (Pos vuz54)",fontsize=16,color="black",shape="box"];2963 -> 2987[label="",style="solid", color="black", weight=3]; 114.10/79.17 2964[label="gcd1 (Pos vuz54 == fromInt (Pos Zero)) (Neg Zero) (Pos vuz54)",fontsize=16,color="black",shape="box"];2964 -> 2988[label="",style="solid", color="black", weight=3]; 114.10/79.17 2965[label="gcd0 (Neg (Succ vuz1610)) (Neg vuz45)",fontsize=16,color="black",shape="box"];2965 -> 2989[label="",style="solid", color="black", weight=3]; 114.10/79.17 2966[label="gcd1 (Neg vuz45 == fromInt (Pos Zero)) (Neg Zero) (Neg vuz45)",fontsize=16,color="black",shape="box"];2966 -> 2990[label="",style="solid", color="black", weight=3]; 114.10/79.17 3187[label="gcd0 (Pos vuz178) (Neg vuz45)",fontsize=16,color="black",shape="triangle"];3187 -> 3205[label="",style="solid", color="black", weight=3]; 114.10/79.17 3188[label="gcd1 (Neg vuz45 == fromInt (Pos Zero)) (Pos vuz178) (Neg vuz45)",fontsize=16,color="black",shape="box"];3188 -> 3206[label="",style="solid", color="black", weight=3]; 114.10/79.17 4283[label="primMinusNatS (Succ vuz2120) (Succ vuz2130)",fontsize=16,color="black",shape="box"];4283 -> 4298[label="",style="solid", color="black", weight=3]; 114.10/79.17 4284[label="primMinusNatS (Succ vuz2120) Zero",fontsize=16,color="black",shape="box"];4284 -> 4299[label="",style="solid", color="black", weight=3]; 114.10/79.17 4285[label="primMinusNatS Zero (Succ vuz2130)",fontsize=16,color="black",shape="box"];4285 -> 4300[label="",style="solid", color="black", weight=3]; 114.10/79.17 4286[label="primMinusNatS Zero Zero",fontsize=16,color="black",shape="box"];4286 -> 4301[label="",style="solid", color="black", weight=3]; 114.10/79.17 4378 -> 4458[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4378[label="gcd0Gcd' (abs (Pos (Succ vuz2210))) (abs (Pos vuz54))",fontsize=16,color="magenta"];4378 -> 4459[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4378 -> 4460[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4379[label="gcd1 (primEqInt (Pos vuz54) (fromInt (Pos Zero))) (Pos Zero) (Pos vuz54)",fontsize=16,color="burlywood",shape="box"];4995[label="vuz54/Succ vuz540",fontsize=10,color="white",style="solid",shape="box"];4379 -> 4995[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4995 -> 4479[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4996[label="vuz54/Zero",fontsize=10,color="white",style="solid",shape="box"];4379 -> 4996[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4996 -> 4480[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 2987 -> 4458[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2987[label="gcd0Gcd' (abs (Neg (Succ vuz1600))) (abs (Pos vuz54))",fontsize=16,color="magenta"];2987 -> 4461[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2987 -> 4462[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2988[label="gcd1 (primEqInt (Pos vuz54) (fromInt (Pos Zero))) (Neg Zero) (Pos vuz54)",fontsize=16,color="burlywood",shape="box"];4997[label="vuz54/Succ vuz540",fontsize=10,color="white",style="solid",shape="box"];2988 -> 4997[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4997 -> 3071[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4998[label="vuz54/Zero",fontsize=10,color="white",style="solid",shape="box"];2988 -> 4998[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4998 -> 3072[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 2989 -> 4458[label="",style="dashed", color="red", weight=0]; 114.10/79.17 2989[label="gcd0Gcd' (abs (Neg (Succ vuz1610))) (abs (Neg vuz45))",fontsize=16,color="magenta"];2989 -> 4463[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2989 -> 4464[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 2990[label="gcd1 (primEqInt (Neg vuz45) (fromInt (Pos Zero))) (Neg Zero) (Neg vuz45)",fontsize=16,color="burlywood",shape="box"];4999[label="vuz45/Succ vuz450",fontsize=10,color="white",style="solid",shape="box"];2990 -> 4999[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 4999 -> 3074[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 5000[label="vuz45/Zero",fontsize=10,color="white",style="solid",shape="box"];2990 -> 5000[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5000 -> 3075[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 3205 -> 4458[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3205[label="gcd0Gcd' (abs (Pos vuz178)) (abs (Neg vuz45))",fontsize=16,color="magenta"];3205 -> 4465[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3205 -> 4466[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3206[label="gcd1 (primEqInt (Neg vuz45) (fromInt (Pos Zero))) (Pos vuz178) (Neg vuz45)",fontsize=16,color="burlywood",shape="box"];5001[label="vuz45/Succ vuz450",fontsize=10,color="white",style="solid",shape="box"];3206 -> 5001[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5001 -> 3228[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 5002[label="vuz45/Zero",fontsize=10,color="white",style="solid",shape="box"];3206 -> 5002[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5002 -> 3229[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4298 -> 4255[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4298[label="primMinusNatS vuz2120 vuz2130",fontsize=16,color="magenta"];4298 -> 4342[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4298 -> 4343[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4299[label="Succ vuz2120",fontsize=16,color="green",shape="box"];4300[label="Zero",fontsize=16,color="green",shape="box"];4301[label="Zero",fontsize=16,color="green",shape="box"];4459[label="abs (Pos vuz54)",fontsize=16,color="black",shape="triangle"];4459 -> 4481[label="",style="solid", color="black", weight=3]; 114.10/79.17 4460 -> 4459[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4460[label="abs (Pos (Succ vuz2210))",fontsize=16,color="magenta"];4460 -> 4482[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4458[label="gcd0Gcd' vuz240 vuz239",fontsize=16,color="black",shape="triangle"];4458 -> 4483[label="",style="solid", color="black", weight=3]; 114.10/79.17 4479[label="gcd1 (primEqInt (Pos (Succ vuz540)) (fromInt (Pos Zero))) (Pos Zero) (Pos (Succ vuz540))",fontsize=16,color="black",shape="box"];4479 -> 4500[label="",style="solid", color="black", weight=3]; 114.10/79.17 4480[label="gcd1 (primEqInt (Pos Zero) (fromInt (Pos Zero))) (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];4480 -> 4501[label="",style="solid", color="black", weight=3]; 114.10/79.17 4461 -> 4459[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4461[label="abs (Pos vuz54)",fontsize=16,color="magenta"];4462[label="abs (Neg (Succ vuz1600))",fontsize=16,color="black",shape="box"];4462 -> 4484[label="",style="solid", color="black", weight=3]; 114.10/79.17 3071[label="gcd1 (primEqInt (Pos (Succ vuz540)) (fromInt (Pos Zero))) (Neg Zero) (Pos (Succ vuz540))",fontsize=16,color="black",shape="box"];3071 -> 3115[label="",style="solid", color="black", weight=3]; 114.10/79.17 3072[label="gcd1 (primEqInt (Pos Zero) (fromInt (Pos Zero))) (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];3072 -> 3116[label="",style="solid", color="black", weight=3]; 114.10/79.17 4463[label="abs (Neg vuz45)",fontsize=16,color="black",shape="triangle"];4463 -> 4485[label="",style="solid", color="black", weight=3]; 114.10/79.17 4464 -> 4463[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4464[label="abs (Neg (Succ vuz1610))",fontsize=16,color="magenta"];4464 -> 4486[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3074[label="gcd1 (primEqInt (Neg (Succ vuz450)) (fromInt (Pos Zero))) (Neg Zero) (Neg (Succ vuz450))",fontsize=16,color="black",shape="box"];3074 -> 3118[label="",style="solid", color="black", weight=3]; 114.10/79.17 3075[label="gcd1 (primEqInt (Neg Zero) (fromInt (Pos Zero))) (Neg Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];3075 -> 3119[label="",style="solid", color="black", weight=3]; 114.10/79.17 4465 -> 4463[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4465[label="abs (Neg vuz45)",fontsize=16,color="magenta"];4466 -> 4459[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4466[label="abs (Pos vuz178)",fontsize=16,color="magenta"];4466 -> 4487[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3228[label="gcd1 (primEqInt (Neg (Succ vuz450)) (fromInt (Pos Zero))) (Pos vuz178) (Neg (Succ vuz450))",fontsize=16,color="black",shape="box"];3228 -> 3252[label="",style="solid", color="black", weight=3]; 114.10/79.17 3229[label="gcd1 (primEqInt (Neg Zero) (fromInt (Pos Zero))) (Pos vuz178) (Neg Zero)",fontsize=16,color="black",shape="box"];3229 -> 3253[label="",style="solid", color="black", weight=3]; 114.10/79.17 4342[label="vuz2120",fontsize=16,color="green",shape="box"];4343[label="vuz2130",fontsize=16,color="green",shape="box"];4481[label="absReal (Pos vuz54)",fontsize=16,color="black",shape="box"];4481 -> 4502[label="",style="solid", color="black", weight=3]; 114.10/79.17 4482[label="Succ vuz2210",fontsize=16,color="green",shape="box"];4483[label="gcd0Gcd'2 vuz240 vuz239",fontsize=16,color="black",shape="box"];4483 -> 4503[label="",style="solid", color="black", weight=3]; 114.10/79.17 4500[label="gcd1 (primEqInt (Pos (Succ vuz540)) (Pos Zero)) (Pos Zero) (Pos (Succ vuz540))",fontsize=16,color="black",shape="box"];4500 -> 4510[label="",style="solid", color="black", weight=3]; 114.10/79.17 4501[label="gcd1 (primEqInt (Pos Zero) (Pos Zero)) (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];4501 -> 4511[label="",style="solid", color="black", weight=3]; 114.10/79.17 4484[label="absReal (Neg (Succ vuz1600))",fontsize=16,color="black",shape="box"];4484 -> 4504[label="",style="solid", color="black", weight=3]; 114.10/79.17 3115[label="gcd1 (primEqInt (Pos (Succ vuz540)) (Pos Zero)) (Neg Zero) (Pos (Succ vuz540))",fontsize=16,color="black",shape="box"];3115 -> 3139[label="",style="solid", color="black", weight=3]; 114.10/79.17 3116[label="gcd1 (primEqInt (Pos Zero) (Pos Zero)) (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];3116 -> 3140[label="",style="solid", color="black", weight=3]; 114.10/79.17 4485[label="absReal (Neg vuz45)",fontsize=16,color="black",shape="box"];4485 -> 4505[label="",style="solid", color="black", weight=3]; 114.10/79.17 4486[label="Succ vuz1610",fontsize=16,color="green",shape="box"];3118[label="gcd1 (primEqInt (Neg (Succ vuz450)) (Pos Zero)) (Neg Zero) (Neg (Succ vuz450))",fontsize=16,color="black",shape="box"];3118 -> 3142[label="",style="solid", color="black", weight=3]; 114.10/79.17 3119[label="gcd1 (primEqInt (Neg Zero) (Pos Zero)) (Neg Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];3119 -> 3143[label="",style="solid", color="black", weight=3]; 114.10/79.17 4487[label="vuz178",fontsize=16,color="green",shape="box"];3252[label="gcd1 (primEqInt (Neg (Succ vuz450)) (Pos Zero)) (Pos vuz178) (Neg (Succ vuz450))",fontsize=16,color="black",shape="box"];3252 -> 3274[label="",style="solid", color="black", weight=3]; 114.10/79.17 3253[label="gcd1 (primEqInt (Neg Zero) (Pos Zero)) (Pos vuz178) (Neg Zero)",fontsize=16,color="black",shape="box"];3253 -> 3275[label="",style="solid", color="black", weight=3]; 114.10/79.17 4502[label="absReal2 (Pos vuz54)",fontsize=16,color="black",shape="box"];4502 -> 4512[label="",style="solid", color="black", weight=3]; 114.10/79.17 4503[label="gcd0Gcd'1 (vuz239 == fromInt (Pos Zero)) vuz240 vuz239",fontsize=16,color="black",shape="box"];4503 -> 4513[label="",style="solid", color="black", weight=3]; 114.10/79.17 4510[label="gcd1 False (Pos Zero) (Pos (Succ vuz540))",fontsize=16,color="black",shape="box"];4510 -> 4521[label="",style="solid", color="black", weight=3]; 114.10/79.17 4511[label="gcd1 True (Pos Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];4511 -> 4522[label="",style="solid", color="black", weight=3]; 114.10/79.17 4504[label="absReal2 (Neg (Succ vuz1600))",fontsize=16,color="black",shape="box"];4504 -> 4514[label="",style="solid", color="black", weight=3]; 114.10/79.17 3139[label="gcd1 False (Neg Zero) (Pos (Succ vuz540))",fontsize=16,color="black",shape="box"];3139 -> 3168[label="",style="solid", color="black", weight=3]; 114.10/79.17 3140[label="gcd1 True (Neg Zero) (Pos Zero)",fontsize=16,color="black",shape="box"];3140 -> 3169[label="",style="solid", color="black", weight=3]; 114.10/79.17 4505[label="absReal2 (Neg vuz45)",fontsize=16,color="black",shape="box"];4505 -> 4515[label="",style="solid", color="black", weight=3]; 114.10/79.17 3142[label="gcd1 False (Neg Zero) (Neg (Succ vuz450))",fontsize=16,color="black",shape="box"];3142 -> 3171[label="",style="solid", color="black", weight=3]; 114.10/79.17 3143[label="gcd1 True (Neg Zero) (Neg Zero)",fontsize=16,color="black",shape="box"];3143 -> 3172[label="",style="solid", color="black", weight=3]; 114.10/79.17 3274[label="gcd1 False (Pos vuz178) (Neg (Succ vuz450))",fontsize=16,color="black",shape="box"];3274 -> 3298[label="",style="solid", color="black", weight=3]; 114.10/79.17 3275[label="gcd1 True (Pos vuz178) (Neg Zero)",fontsize=16,color="black",shape="box"];3275 -> 3299[label="",style="solid", color="black", weight=3]; 114.10/79.17 4512[label="absReal1 (Pos vuz54) (Pos vuz54 >= fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];4512 -> 4523[label="",style="solid", color="black", weight=3]; 114.10/79.17 4513[label="gcd0Gcd'1 (primEqInt vuz239 (fromInt (Pos Zero))) vuz240 vuz239",fontsize=16,color="burlywood",shape="box"];5003[label="vuz239/Pos vuz2390",fontsize=10,color="white",style="solid",shape="box"];4513 -> 5003[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5003 -> 4524[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 5004[label="vuz239/Neg vuz2390",fontsize=10,color="white",style="solid",shape="box"];4513 -> 5004[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5004 -> 4525[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4521[label="gcd0 (Pos Zero) (Pos (Succ vuz540))",fontsize=16,color="black",shape="box"];4521 -> 4528[label="",style="solid", color="black", weight=3]; 114.10/79.17 4522 -> 2810[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4522[label="error []",fontsize=16,color="magenta"];4514[label="absReal1 (Neg (Succ vuz1600)) (Neg (Succ vuz1600) >= fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];4514 -> 4526[label="",style="solid", color="black", weight=3]; 114.10/79.17 3168[label="gcd0 (Neg Zero) (Pos (Succ vuz540))",fontsize=16,color="black",shape="box"];3168 -> 3190[label="",style="solid", color="black", weight=3]; 114.10/79.17 3169 -> 2810[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3169[label="error []",fontsize=16,color="magenta"];4515[label="absReal1 (Neg vuz45) (Neg vuz45 >= fromInt (Pos Zero))",fontsize=16,color="black",shape="box"];4515 -> 4527[label="",style="solid", color="black", weight=3]; 114.10/79.17 3171[label="gcd0 (Neg Zero) (Neg (Succ vuz450))",fontsize=16,color="black",shape="box"];3171 -> 3192[label="",style="solid", color="black", weight=3]; 114.10/79.17 3172 -> 2810[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3172[label="error []",fontsize=16,color="magenta"];3298 -> 3187[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3298[label="gcd0 (Pos vuz178) (Neg (Succ vuz450))",fontsize=16,color="magenta"];3298 -> 3328[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3299 -> 2810[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3299[label="error []",fontsize=16,color="magenta"];4523[label="absReal1 (Pos vuz54) (compare (Pos vuz54) (fromInt (Pos Zero)) /= LT)",fontsize=16,color="black",shape="box"];4523 -> 4529[label="",style="solid", color="black", weight=3]; 114.10/79.17 4524[label="gcd0Gcd'1 (primEqInt (Pos vuz2390) (fromInt (Pos Zero))) vuz240 (Pos vuz2390)",fontsize=16,color="burlywood",shape="box"];5005[label="vuz2390/Succ vuz23900",fontsize=10,color="white",style="solid",shape="box"];4524 -> 5005[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5005 -> 4530[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 5006[label="vuz2390/Zero",fontsize=10,color="white",style="solid",shape="box"];4524 -> 5006[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5006 -> 4531[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4525[label="gcd0Gcd'1 (primEqInt (Neg vuz2390) (fromInt (Pos Zero))) vuz240 (Neg vuz2390)",fontsize=16,color="burlywood",shape="box"];5007[label="vuz2390/Succ vuz23900",fontsize=10,color="white",style="solid",shape="box"];4525 -> 5007[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5007 -> 4532[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 5008[label="vuz2390/Zero",fontsize=10,color="white",style="solid",shape="box"];4525 -> 5008[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5008 -> 4533[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4528 -> 4458[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4528[label="gcd0Gcd' (abs (Pos Zero)) (abs (Pos (Succ vuz540)))",fontsize=16,color="magenta"];4528 -> 4536[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4528 -> 4537[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4526[label="absReal1 (Neg (Succ vuz1600)) (compare (Neg (Succ vuz1600)) (fromInt (Pos Zero)) /= LT)",fontsize=16,color="black",shape="box"];4526 -> 4534[label="",style="solid", color="black", weight=3]; 114.10/79.17 3190 -> 4458[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3190[label="gcd0Gcd' (abs (Neg Zero)) (abs (Pos (Succ vuz540)))",fontsize=16,color="magenta"];3190 -> 4467[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3190 -> 4468[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4527[label="absReal1 (Neg vuz45) (compare (Neg vuz45) (fromInt (Pos Zero)) /= LT)",fontsize=16,color="black",shape="box"];4527 -> 4535[label="",style="solid", color="black", weight=3]; 114.10/79.17 3192 -> 4458[label="",style="dashed", color="red", weight=0]; 114.10/79.17 3192[label="gcd0Gcd' (abs (Neg Zero)) (abs (Neg (Succ vuz450)))",fontsize=16,color="magenta"];3192 -> 4469[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3192 -> 4470[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 3328[label="Succ vuz450",fontsize=16,color="green",shape="box"];4529[label="absReal1 (Pos vuz54) (not (compare (Pos vuz54) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];4529 -> 4538[label="",style="solid", color="black", weight=3]; 114.10/79.17 4530[label="gcd0Gcd'1 (primEqInt (Pos (Succ vuz23900)) (fromInt (Pos Zero))) vuz240 (Pos (Succ vuz23900))",fontsize=16,color="black",shape="box"];4530 -> 4539[label="",style="solid", color="black", weight=3]; 114.10/79.17 4531[label="gcd0Gcd'1 (primEqInt (Pos Zero) (fromInt (Pos Zero))) vuz240 (Pos Zero)",fontsize=16,color="black",shape="box"];4531 -> 4540[label="",style="solid", color="black", weight=3]; 114.10/79.17 4532[label="gcd0Gcd'1 (primEqInt (Neg (Succ vuz23900)) (fromInt (Pos Zero))) vuz240 (Neg (Succ vuz23900))",fontsize=16,color="black",shape="box"];4532 -> 4541[label="",style="solid", color="black", weight=3]; 114.10/79.17 4533[label="gcd0Gcd'1 (primEqInt (Neg Zero) (fromInt (Pos Zero))) vuz240 (Neg Zero)",fontsize=16,color="black",shape="box"];4533 -> 4542[label="",style="solid", color="black", weight=3]; 114.10/79.17 4536 -> 4459[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4536[label="abs (Pos (Succ vuz540))",fontsize=16,color="magenta"];4536 -> 4545[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4537 -> 4459[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4537[label="abs (Pos Zero)",fontsize=16,color="magenta"];4537 -> 4546[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4534[label="absReal1 (Neg (Succ vuz1600)) (not (compare (Neg (Succ vuz1600)) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];4534 -> 4543[label="",style="solid", color="black", weight=3]; 114.10/79.17 4467 -> 4459[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4467[label="abs (Pos (Succ vuz540))",fontsize=16,color="magenta"];4467 -> 4488[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4468 -> 4463[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4468[label="abs (Neg Zero)",fontsize=16,color="magenta"];4468 -> 4489[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4535[label="absReal1 (Neg vuz45) (not (compare (Neg vuz45) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];4535 -> 4544[label="",style="solid", color="black", weight=3]; 114.10/79.17 4469 -> 4463[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4469[label="abs (Neg (Succ vuz450))",fontsize=16,color="magenta"];4469 -> 4490[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4470 -> 4463[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4470[label="abs (Neg Zero)",fontsize=16,color="magenta"];4470 -> 4491[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4538[label="absReal1 (Pos vuz54) (not (primCmpInt (Pos vuz54) (fromInt (Pos Zero)) == LT))",fontsize=16,color="burlywood",shape="box"];5009[label="vuz54/Succ vuz540",fontsize=10,color="white",style="solid",shape="box"];4538 -> 5009[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5009 -> 4547[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 5010[label="vuz54/Zero",fontsize=10,color="white",style="solid",shape="box"];4538 -> 5010[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5010 -> 4548[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4539[label="gcd0Gcd'1 (primEqInt (Pos (Succ vuz23900)) (Pos Zero)) vuz240 (Pos (Succ vuz23900))",fontsize=16,color="black",shape="box"];4539 -> 4549[label="",style="solid", color="black", weight=3]; 114.10/79.17 4540[label="gcd0Gcd'1 (primEqInt (Pos Zero) (Pos Zero)) vuz240 (Pos Zero)",fontsize=16,color="black",shape="box"];4540 -> 4550[label="",style="solid", color="black", weight=3]; 114.10/79.17 4541[label="gcd0Gcd'1 (primEqInt (Neg (Succ vuz23900)) (Pos Zero)) vuz240 (Neg (Succ vuz23900))",fontsize=16,color="black",shape="box"];4541 -> 4551[label="",style="solid", color="black", weight=3]; 114.10/79.17 4542[label="gcd0Gcd'1 (primEqInt (Neg Zero) (Pos Zero)) vuz240 (Neg Zero)",fontsize=16,color="black",shape="box"];4542 -> 4552[label="",style="solid", color="black", weight=3]; 114.10/79.17 4545[label="Succ vuz540",fontsize=16,color="green",shape="box"];4546[label="Zero",fontsize=16,color="green",shape="box"];4543[label="absReal1 (Neg (Succ vuz1600)) (not (primCmpInt (Neg (Succ vuz1600)) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];4543 -> 4553[label="",style="solid", color="black", weight=3]; 114.10/79.17 4488[label="Succ vuz540",fontsize=16,color="green",shape="box"];4489[label="Zero",fontsize=16,color="green",shape="box"];4544[label="absReal1 (Neg vuz45) (not (primCmpInt (Neg vuz45) (fromInt (Pos Zero)) == LT))",fontsize=16,color="burlywood",shape="box"];5011[label="vuz45/Succ vuz450",fontsize=10,color="white",style="solid",shape="box"];4544 -> 5011[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5011 -> 4554[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 5012[label="vuz45/Zero",fontsize=10,color="white",style="solid",shape="box"];4544 -> 5012[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5012 -> 4555[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4490[label="Succ vuz450",fontsize=16,color="green",shape="box"];4491[label="Zero",fontsize=16,color="green",shape="box"];4547[label="absReal1 (Pos (Succ vuz540)) (not (primCmpInt (Pos (Succ vuz540)) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];4547 -> 4556[label="",style="solid", color="black", weight=3]; 114.10/79.17 4548[label="absReal1 (Pos Zero) (not (primCmpInt (Pos Zero) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];4548 -> 4557[label="",style="solid", color="black", weight=3]; 114.10/79.17 4549[label="gcd0Gcd'1 False vuz240 (Pos (Succ vuz23900))",fontsize=16,color="black",shape="box"];4549 -> 4558[label="",style="solid", color="black", weight=3]; 114.10/79.17 4550[label="gcd0Gcd'1 True vuz240 (Pos Zero)",fontsize=16,color="black",shape="box"];4550 -> 4559[label="",style="solid", color="black", weight=3]; 114.10/79.17 4551[label="gcd0Gcd'1 False vuz240 (Neg (Succ vuz23900))",fontsize=16,color="black",shape="box"];4551 -> 4560[label="",style="solid", color="black", weight=3]; 114.10/79.17 4552[label="gcd0Gcd'1 True vuz240 (Neg Zero)",fontsize=16,color="black",shape="box"];4552 -> 4561[label="",style="solid", color="black", weight=3]; 114.10/79.17 4553[label="absReal1 (Neg (Succ vuz1600)) (not (primCmpInt (Neg (Succ vuz1600)) (Pos Zero) == LT))",fontsize=16,color="black",shape="triangle"];4553 -> 4562[label="",style="solid", color="black", weight=3]; 114.10/79.17 4554[label="absReal1 (Neg (Succ vuz450)) (not (primCmpInt (Neg (Succ vuz450)) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];4554 -> 4563[label="",style="solid", color="black", weight=3]; 114.10/79.17 4555[label="absReal1 (Neg Zero) (not (primCmpInt (Neg Zero) (fromInt (Pos Zero)) == LT))",fontsize=16,color="black",shape="box"];4555 -> 4564[label="",style="solid", color="black", weight=3]; 114.10/79.17 4556[label="absReal1 (Pos (Succ vuz540)) (not (primCmpInt (Pos (Succ vuz540)) (Pos Zero) == LT))",fontsize=16,color="black",shape="box"];4556 -> 4565[label="",style="solid", color="black", weight=3]; 114.10/79.17 4557[label="absReal1 (Pos Zero) (not (primCmpInt (Pos Zero) (Pos Zero) == LT))",fontsize=16,color="black",shape="box"];4557 -> 4566[label="",style="solid", color="black", weight=3]; 114.10/79.17 4558[label="gcd0Gcd'0 vuz240 (Pos (Succ vuz23900))",fontsize=16,color="black",shape="box"];4558 -> 4567[label="",style="solid", color="black", weight=3]; 114.10/79.17 4559[label="vuz240",fontsize=16,color="green",shape="box"];4560[label="gcd0Gcd'0 vuz240 (Neg (Succ vuz23900))",fontsize=16,color="black",shape="box"];4560 -> 4568[label="",style="solid", color="black", weight=3]; 114.10/79.17 4561[label="vuz240",fontsize=16,color="green",shape="box"];4562[label="absReal1 (Neg (Succ vuz1600)) (not (LT == LT))",fontsize=16,color="black",shape="box"];4562 -> 4569[label="",style="solid", color="black", weight=3]; 114.10/79.17 4563 -> 4553[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4563[label="absReal1 (Neg (Succ vuz450)) (not (primCmpInt (Neg (Succ vuz450)) (Pos Zero) == LT))",fontsize=16,color="magenta"];4563 -> 4570[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4564[label="absReal1 (Neg Zero) (not (primCmpInt (Neg Zero) (Pos Zero) == LT))",fontsize=16,color="black",shape="box"];4564 -> 4571[label="",style="solid", color="black", weight=3]; 114.10/79.17 4565[label="absReal1 (Pos (Succ vuz540)) (not (primCmpNat (Succ vuz540) Zero == LT))",fontsize=16,color="black",shape="box"];4565 -> 4572[label="",style="solid", color="black", weight=3]; 114.10/79.17 4566[label="absReal1 (Pos Zero) (not (EQ == LT))",fontsize=16,color="black",shape="box"];4566 -> 4573[label="",style="solid", color="black", weight=3]; 114.10/79.17 4567 -> 4458[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4567[label="gcd0Gcd' (Pos (Succ vuz23900)) (vuz240 `rem` Pos (Succ vuz23900))",fontsize=16,color="magenta"];4567 -> 4574[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4567 -> 4575[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4568 -> 4458[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4568[label="gcd0Gcd' (Neg (Succ vuz23900)) (vuz240 `rem` Neg (Succ vuz23900))",fontsize=16,color="magenta"];4568 -> 4576[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4568 -> 4577[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4569[label="absReal1 (Neg (Succ vuz1600)) (not True)",fontsize=16,color="black",shape="box"];4569 -> 4578[label="",style="solid", color="black", weight=3]; 114.10/79.17 4570[label="vuz450",fontsize=16,color="green",shape="box"];4571[label="absReal1 (Neg Zero) (not (EQ == LT))",fontsize=16,color="black",shape="box"];4571 -> 4579[label="",style="solid", color="black", weight=3]; 114.10/79.17 4572[label="absReal1 (Pos (Succ vuz540)) (not (GT == LT))",fontsize=16,color="black",shape="box"];4572 -> 4580[label="",style="solid", color="black", weight=3]; 114.10/79.17 4573[label="absReal1 (Pos Zero) (not False)",fontsize=16,color="black",shape="box"];4573 -> 4581[label="",style="solid", color="black", weight=3]; 114.10/79.17 4574[label="vuz240 `rem` Pos (Succ vuz23900)",fontsize=16,color="black",shape="box"];4574 -> 4582[label="",style="solid", color="black", weight=3]; 114.10/79.17 4575[label="Pos (Succ vuz23900)",fontsize=16,color="green",shape="box"];4576[label="vuz240 `rem` Neg (Succ vuz23900)",fontsize=16,color="black",shape="box"];4576 -> 4583[label="",style="solid", color="black", weight=3]; 114.10/79.17 4577[label="Neg (Succ vuz23900)",fontsize=16,color="green",shape="box"];4578[label="absReal1 (Neg (Succ vuz1600)) False",fontsize=16,color="black",shape="box"];4578 -> 4584[label="",style="solid", color="black", weight=3]; 114.10/79.17 4579[label="absReal1 (Neg Zero) (not False)",fontsize=16,color="black",shape="box"];4579 -> 4585[label="",style="solid", color="black", weight=3]; 114.10/79.17 4580[label="absReal1 (Pos (Succ vuz540)) (not False)",fontsize=16,color="black",shape="box"];4580 -> 4586[label="",style="solid", color="black", weight=3]; 114.10/79.17 4581[label="absReal1 (Pos Zero) True",fontsize=16,color="black",shape="box"];4581 -> 4587[label="",style="solid", color="black", weight=3]; 114.10/79.17 4582[label="primRemInt vuz240 (Pos (Succ vuz23900))",fontsize=16,color="burlywood",shape="box"];5013[label="vuz240/Pos vuz2400",fontsize=10,color="white",style="solid",shape="box"];4582 -> 5013[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5013 -> 4588[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 5014[label="vuz240/Neg vuz2400",fontsize=10,color="white",style="solid",shape="box"];4582 -> 5014[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5014 -> 4589[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4583[label="primRemInt vuz240 (Neg (Succ vuz23900))",fontsize=16,color="burlywood",shape="box"];5015[label="vuz240/Pos vuz2400",fontsize=10,color="white",style="solid",shape="box"];4583 -> 5015[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5015 -> 4590[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 5016[label="vuz240/Neg vuz2400",fontsize=10,color="white",style="solid",shape="box"];4583 -> 5016[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5016 -> 4591[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4584[label="absReal0 (Neg (Succ vuz1600)) otherwise",fontsize=16,color="black",shape="box"];4584 -> 4592[label="",style="solid", color="black", weight=3]; 114.10/79.17 4585[label="absReal1 (Neg Zero) True",fontsize=16,color="black",shape="box"];4585 -> 4593[label="",style="solid", color="black", weight=3]; 114.10/79.17 4586[label="absReal1 (Pos (Succ vuz540)) True",fontsize=16,color="black",shape="box"];4586 -> 4594[label="",style="solid", color="black", weight=3]; 114.10/79.17 4587[label="Pos Zero",fontsize=16,color="green",shape="box"];4588[label="primRemInt (Pos vuz2400) (Pos (Succ vuz23900))",fontsize=16,color="black",shape="box"];4588 -> 4595[label="",style="solid", color="black", weight=3]; 114.10/79.17 4589[label="primRemInt (Neg vuz2400) (Pos (Succ vuz23900))",fontsize=16,color="black",shape="box"];4589 -> 4596[label="",style="solid", color="black", weight=3]; 114.10/79.17 4590[label="primRemInt (Pos vuz2400) (Neg (Succ vuz23900))",fontsize=16,color="black",shape="box"];4590 -> 4597[label="",style="solid", color="black", weight=3]; 114.10/79.17 4591[label="primRemInt (Neg vuz2400) (Neg (Succ vuz23900))",fontsize=16,color="black",shape="box"];4591 -> 4598[label="",style="solid", color="black", weight=3]; 114.10/79.17 4592[label="absReal0 (Neg (Succ vuz1600)) True",fontsize=16,color="black",shape="box"];4592 -> 4599[label="",style="solid", color="black", weight=3]; 114.10/79.17 4593[label="Neg Zero",fontsize=16,color="green",shape="box"];4594[label="Pos (Succ vuz540)",fontsize=16,color="green",shape="box"];4595[label="Pos (primModNatS vuz2400 (Succ vuz23900))",fontsize=16,color="green",shape="box"];4595 -> 4600[label="",style="dashed", color="green", weight=3]; 114.10/79.17 4596[label="Neg (primModNatS vuz2400 (Succ vuz23900))",fontsize=16,color="green",shape="box"];4596 -> 4601[label="",style="dashed", color="green", weight=3]; 114.10/79.17 4597[label="Pos (primModNatS vuz2400 (Succ vuz23900))",fontsize=16,color="green",shape="box"];4597 -> 4602[label="",style="dashed", color="green", weight=3]; 114.10/79.17 4598[label="Neg (primModNatS vuz2400 (Succ vuz23900))",fontsize=16,color="green",shape="box"];4598 -> 4603[label="",style="dashed", color="green", weight=3]; 114.10/79.17 4599[label="`negate` Neg (Succ vuz1600)",fontsize=16,color="black",shape="box"];4599 -> 4604[label="",style="solid", color="black", weight=3]; 114.10/79.17 4600[label="primModNatS vuz2400 (Succ vuz23900)",fontsize=16,color="burlywood",shape="triangle"];5017[label="vuz2400/Succ vuz24000",fontsize=10,color="white",style="solid",shape="box"];4600 -> 5017[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5017 -> 4605[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 5018[label="vuz2400/Zero",fontsize=10,color="white",style="solid",shape="box"];4600 -> 5018[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5018 -> 4606[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4601 -> 4600[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4601[label="primModNatS vuz2400 (Succ vuz23900)",fontsize=16,color="magenta"];4601 -> 4607[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4602 -> 4600[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4602[label="primModNatS vuz2400 (Succ vuz23900)",fontsize=16,color="magenta"];4602 -> 4608[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4603 -> 4600[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4603[label="primModNatS vuz2400 (Succ vuz23900)",fontsize=16,color="magenta"];4603 -> 4609[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4603 -> 4610[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4604[label="primNegInt (Neg (Succ vuz1600))",fontsize=16,color="black",shape="box"];4604 -> 4611[label="",style="solid", color="black", weight=3]; 114.10/79.17 4605[label="primModNatS (Succ vuz24000) (Succ vuz23900)",fontsize=16,color="black",shape="box"];4605 -> 4612[label="",style="solid", color="black", weight=3]; 114.10/79.17 4606[label="primModNatS Zero (Succ vuz23900)",fontsize=16,color="black",shape="box"];4606 -> 4613[label="",style="solid", color="black", weight=3]; 114.10/79.17 4607[label="vuz2400",fontsize=16,color="green",shape="box"];4608[label="vuz23900",fontsize=16,color="green",shape="box"];4609[label="vuz2400",fontsize=16,color="green",shape="box"];4610[label="vuz23900",fontsize=16,color="green",shape="box"];4611[label="Pos (Succ vuz1600)",fontsize=16,color="green",shape="box"];4612[label="primModNatS0 vuz24000 vuz23900 (primGEqNatS vuz24000 vuz23900)",fontsize=16,color="burlywood",shape="box"];5019[label="vuz24000/Succ vuz240000",fontsize=10,color="white",style="solid",shape="box"];4612 -> 5019[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5019 -> 4614[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 5020[label="vuz24000/Zero",fontsize=10,color="white",style="solid",shape="box"];4612 -> 5020[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5020 -> 4615[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4613[label="Zero",fontsize=16,color="green",shape="box"];4614[label="primModNatS0 (Succ vuz240000) vuz23900 (primGEqNatS (Succ vuz240000) vuz23900)",fontsize=16,color="burlywood",shape="box"];5021[label="vuz23900/Succ vuz239000",fontsize=10,color="white",style="solid",shape="box"];4614 -> 5021[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5021 -> 4616[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 5022[label="vuz23900/Zero",fontsize=10,color="white",style="solid",shape="box"];4614 -> 5022[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5022 -> 4617[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4615[label="primModNatS0 Zero vuz23900 (primGEqNatS Zero vuz23900)",fontsize=16,color="burlywood",shape="box"];5023[label="vuz23900/Succ vuz239000",fontsize=10,color="white",style="solid",shape="box"];4615 -> 5023[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5023 -> 4618[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 5024[label="vuz23900/Zero",fontsize=10,color="white",style="solid",shape="box"];4615 -> 5024[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5024 -> 4619[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4616[label="primModNatS0 (Succ vuz240000) (Succ vuz239000) (primGEqNatS (Succ vuz240000) (Succ vuz239000))",fontsize=16,color="black",shape="box"];4616 -> 4620[label="",style="solid", color="black", weight=3]; 114.10/79.17 4617[label="primModNatS0 (Succ vuz240000) Zero (primGEqNatS (Succ vuz240000) Zero)",fontsize=16,color="black",shape="box"];4617 -> 4621[label="",style="solid", color="black", weight=3]; 114.10/79.17 4618[label="primModNatS0 Zero (Succ vuz239000) (primGEqNatS Zero (Succ vuz239000))",fontsize=16,color="black",shape="box"];4618 -> 4622[label="",style="solid", color="black", weight=3]; 114.10/79.17 4619[label="primModNatS0 Zero Zero (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];4619 -> 4623[label="",style="solid", color="black", weight=3]; 114.10/79.17 4620 -> 4782[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4620[label="primModNatS0 (Succ vuz240000) (Succ vuz239000) (primGEqNatS vuz240000 vuz239000)",fontsize=16,color="magenta"];4620 -> 4783[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4620 -> 4784[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4620 -> 4785[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4620 -> 4786[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4621[label="primModNatS0 (Succ vuz240000) Zero True",fontsize=16,color="black",shape="box"];4621 -> 4626[label="",style="solid", color="black", weight=3]; 114.10/79.17 4622[label="primModNatS0 Zero (Succ vuz239000) False",fontsize=16,color="black",shape="box"];4622 -> 4627[label="",style="solid", color="black", weight=3]; 114.10/79.17 4623[label="primModNatS0 Zero Zero True",fontsize=16,color="black",shape="box"];4623 -> 4628[label="",style="solid", color="black", weight=3]; 114.10/79.17 4783[label="vuz239000",fontsize=16,color="green",shape="box"];4784[label="vuz239000",fontsize=16,color="green",shape="box"];4785[label="vuz240000",fontsize=16,color="green",shape="box"];4786[label="vuz240000",fontsize=16,color="green",shape="box"];4782[label="primModNatS0 (Succ vuz257) (Succ vuz258) (primGEqNatS vuz259 vuz260)",fontsize=16,color="burlywood",shape="triangle"];5025[label="vuz259/Succ vuz2590",fontsize=10,color="white",style="solid",shape="box"];4782 -> 5025[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5025 -> 4815[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 5026[label="vuz259/Zero",fontsize=10,color="white",style="solid",shape="box"];4782 -> 5026[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5026 -> 4816[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4626 -> 4600[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4626[label="primModNatS (primMinusNatS (Succ vuz240000) Zero) (Succ Zero)",fontsize=16,color="magenta"];4626 -> 4633[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4626 -> 4634[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4627[label="Succ Zero",fontsize=16,color="green",shape="box"];4628 -> 4600[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4628[label="primModNatS (primMinusNatS Zero Zero) (Succ Zero)",fontsize=16,color="magenta"];4628 -> 4635[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4628 -> 4636[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4815[label="primModNatS0 (Succ vuz257) (Succ vuz258) (primGEqNatS (Succ vuz2590) vuz260)",fontsize=16,color="burlywood",shape="box"];5027[label="vuz260/Succ vuz2600",fontsize=10,color="white",style="solid",shape="box"];4815 -> 5027[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5027 -> 4817[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 5028[label="vuz260/Zero",fontsize=10,color="white",style="solid",shape="box"];4815 -> 5028[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5028 -> 4818[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4816[label="primModNatS0 (Succ vuz257) (Succ vuz258) (primGEqNatS Zero vuz260)",fontsize=16,color="burlywood",shape="box"];5029[label="vuz260/Succ vuz2600",fontsize=10,color="white",style="solid",shape="box"];4816 -> 5029[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5029 -> 4819[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 5030[label="vuz260/Zero",fontsize=10,color="white",style="solid",shape="box"];4816 -> 5030[label="",style="solid", color="burlywood", weight=9]; 114.10/79.17 5030 -> 4820[label="",style="solid", color="burlywood", weight=3]; 114.10/79.17 4633 -> 4255[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4633[label="primMinusNatS (Succ vuz240000) Zero",fontsize=16,color="magenta"];4633 -> 4641[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4633 -> 4642[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4634[label="Zero",fontsize=16,color="green",shape="box"];4635 -> 4255[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4635[label="primMinusNatS Zero Zero",fontsize=16,color="magenta"];4635 -> 4643[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4635 -> 4644[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4636[label="Zero",fontsize=16,color="green",shape="box"];4817[label="primModNatS0 (Succ vuz257) (Succ vuz258) (primGEqNatS (Succ vuz2590) (Succ vuz2600))",fontsize=16,color="black",shape="box"];4817 -> 4821[label="",style="solid", color="black", weight=3]; 114.10/79.17 4818[label="primModNatS0 (Succ vuz257) (Succ vuz258) (primGEqNatS (Succ vuz2590) Zero)",fontsize=16,color="black",shape="box"];4818 -> 4822[label="",style="solid", color="black", weight=3]; 114.10/79.17 4819[label="primModNatS0 (Succ vuz257) (Succ vuz258) (primGEqNatS Zero (Succ vuz2600))",fontsize=16,color="black",shape="box"];4819 -> 4823[label="",style="solid", color="black", weight=3]; 114.10/79.17 4820[label="primModNatS0 (Succ vuz257) (Succ vuz258) (primGEqNatS Zero Zero)",fontsize=16,color="black",shape="box"];4820 -> 4824[label="",style="solid", color="black", weight=3]; 114.10/79.17 4641[label="Succ vuz240000",fontsize=16,color="green",shape="box"];4642[label="Zero",fontsize=16,color="green",shape="box"];4643[label="Zero",fontsize=16,color="green",shape="box"];4644[label="Zero",fontsize=16,color="green",shape="box"];4821 -> 4782[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4821[label="primModNatS0 (Succ vuz257) (Succ vuz258) (primGEqNatS vuz2590 vuz2600)",fontsize=16,color="magenta"];4821 -> 4825[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4821 -> 4826[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4822[label="primModNatS0 (Succ vuz257) (Succ vuz258) True",fontsize=16,color="black",shape="triangle"];4822 -> 4827[label="",style="solid", color="black", weight=3]; 114.10/79.17 4823[label="primModNatS0 (Succ vuz257) (Succ vuz258) False",fontsize=16,color="black",shape="box"];4823 -> 4828[label="",style="solid", color="black", weight=3]; 114.10/79.17 4824 -> 4822[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4824[label="primModNatS0 (Succ vuz257) (Succ vuz258) True",fontsize=16,color="magenta"];4825[label="vuz2600",fontsize=16,color="green",shape="box"];4826[label="vuz2590",fontsize=16,color="green",shape="box"];4827 -> 4600[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4827[label="primModNatS (primMinusNatS (Succ vuz257) (Succ vuz258)) (Succ (Succ vuz258))",fontsize=16,color="magenta"];4827 -> 4829[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4827 -> 4830[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4828[label="Succ (Succ vuz257)",fontsize=16,color="green",shape="box"];4829 -> 4255[label="",style="dashed", color="red", weight=0]; 114.10/79.17 4829[label="primMinusNatS (Succ vuz257) (Succ vuz258)",fontsize=16,color="magenta"];4829 -> 4831[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4829 -> 4832[label="",style="dashed", color="magenta", weight=3]; 114.10/79.17 4830[label="Succ vuz258",fontsize=16,color="green",shape="box"];4831[label="Succ vuz257",fontsize=16,color="green",shape="box"];4832[label="Succ vuz258",fontsize=16,color="green",shape="box"];} 114.10/79.17 114.10/79.17 ---------------------------------------- 114.10/79.17 114.10/79.17 (439) 114.10/79.17 TRUE 114.10/79.21 EOF