209.69/54.09 MAYBE 209.69/54.11 proof of /export/starexec/sandbox/benchmark/theBenchmark.pl 209.69/54.11 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 209.69/54.11 209.69/54.11 209.69/54.11 Left Termination of the query pattern 209.69/54.11 209.69/54.11 f(g) 209.69/54.11 209.69/54.11 w.r.t. the given Prolog program could not be shown: 209.69/54.11 209.69/54.11 (0) Prolog 209.69/54.11 (1) PrologToPiTRSProof [SOUND, 0 ms] 209.69/54.11 (2) PiTRS 209.69/54.11 (3) DependencyPairsProof [EQUIVALENT, 9 ms] 209.69/54.11 (4) PiDP 209.69/54.11 (5) DependencyGraphProof [EQUIVALENT, 0 ms] 209.69/54.11 (6) AND 209.69/54.11 (7) PiDP 209.69/54.11 (8) UsableRulesProof [EQUIVALENT, 1 ms] 209.69/54.11 (9) PiDP 209.69/54.11 (10) PiDPToQDPProof [SOUND, 14 ms] 209.69/54.11 (11) QDP 209.69/54.11 (12) QDPSizeChangeProof [EQUIVALENT, 0 ms] 209.69/54.11 (13) YES 209.69/54.11 (14) PiDP 209.69/54.11 (15) UsableRulesProof [EQUIVALENT, 0 ms] 209.69/54.11 (16) PiDP 209.69/54.11 (17) PiDPToQDPProof [SOUND, 0 ms] 209.69/54.11 (18) QDP 209.69/54.11 (19) QDPQMonotonicMRRProof [EQUIVALENT, 0 ms] 209.69/54.11 (20) QDP 209.69/54.11 (21) DependencyGraphProof [EQUIVALENT, 0 ms] 209.69/54.11 (22) TRUE 209.69/54.11 (23) PiDP 209.69/54.11 (24) UsableRulesProof [EQUIVALENT, 0 ms] 209.69/54.11 (25) PiDP 209.69/54.11 (26) PiDPToQDPProof [SOUND, 0 ms] 209.69/54.11 (27) QDP 209.69/54.11 (28) TransformationProof [EQUIVALENT, 0 ms] 209.69/54.11 (29) QDP 209.69/54.11 (30) QDPQMonotonicMRRProof [EQUIVALENT, 12 ms] 209.69/54.11 (31) QDP 209.69/54.11 (32) QDPQMonotonicMRRProof [EQUIVALENT, 8 ms] 209.69/54.11 (33) QDP 209.69/54.11 (34) QDPQMonotonicMRRProof [EQUIVALENT, 0 ms] 209.69/54.11 (35) QDP 209.69/54.11 (36) DependencyGraphProof [EQUIVALENT, 0 ms] 209.69/54.11 (37) TRUE 209.69/54.11 (38) PiDP 209.69/54.11 (39) UsableRulesProof [EQUIVALENT, 0 ms] 209.69/54.11 (40) PiDP 209.69/54.11 (41) PiDPToQDPProof [SOUND, 0 ms] 209.69/54.11 (42) QDP 209.69/54.11 (43) PrologToPiTRSProof [SOUND, 0 ms] 209.69/54.11 (44) PiTRS 209.69/54.11 (45) DependencyPairsProof [EQUIVALENT, 1 ms] 209.69/54.11 (46) PiDP 209.69/54.11 (47) DependencyGraphProof [EQUIVALENT, 0 ms] 209.69/54.11 (48) AND 209.69/54.11 (49) PiDP 209.69/54.11 (50) UsableRulesProof [EQUIVALENT, 0 ms] 209.69/54.11 (51) PiDP 209.69/54.11 (52) PiDPToQDPProof [SOUND, 2 ms] 209.69/54.11 (53) QDP 209.69/54.11 (54) QDPSizeChangeProof [EQUIVALENT, 0 ms] 209.69/54.11 (55) YES 209.69/54.11 (56) PiDP 209.69/54.11 (57) UsableRulesProof [EQUIVALENT, 0 ms] 209.69/54.11 (58) PiDP 209.69/54.11 (59) PiDPToQDPProof [SOUND, 0 ms] 209.69/54.11 (60) QDP 209.69/54.11 (61) MRRProof [EQUIVALENT, 0 ms] 209.69/54.11 (62) QDP 209.69/54.11 (63) PisEmptyProof [EQUIVALENT, 0 ms] 209.69/54.11 (64) YES 209.69/54.11 (65) PiDP 209.69/54.11 (66) UsableRulesProof [EQUIVALENT, 0 ms] 209.69/54.11 (67) PiDP 209.69/54.11 (68) PiDPToQDPProof [SOUND, 0 ms] 209.69/54.11 (69) QDP 209.69/54.11 (70) MRRProof [EQUIVALENT, 0 ms] 209.69/54.11 (71) QDP 209.69/54.11 (72) RFCMatchBoundsDPProof [EQUIVALENT, 8 ms] 209.69/54.11 (73) YES 209.69/54.11 (74) PiDP 209.69/54.11 (75) UsableRulesProof [EQUIVALENT, 0 ms] 209.69/54.11 (76) PiDP 209.69/54.11 (77) PiDPToQDPProof [SOUND, 0 ms] 209.69/54.11 (78) QDP 209.69/54.11 (79) TransformationProof [SOUND, 0 ms] 209.69/54.11 (80) QDP 209.69/54.11 (81) TransformationProof [SOUND, 0 ms] 209.69/54.11 (82) QDP 209.69/54.11 (83) TransformationProof [EQUIVALENT, 0 ms] 209.69/54.11 (84) QDP 209.69/54.11 (85) TransformationProof [EQUIVALENT, 0 ms] 209.69/54.11 (86) QDP 209.69/54.11 (87) DependencyGraphProof [EQUIVALENT, 0 ms] 209.69/54.11 (88) QDP 209.69/54.11 (89) PrologToTRSTransformerProof [SOUND, 29 ms] 209.69/54.11 (90) QTRS 209.69/54.11 (91) Overlay + Local Confluence [EQUIVALENT, 0 ms] 209.69/54.11 (92) QTRS 209.69/54.11 (93) DependencyPairsProof [EQUIVALENT, 0 ms] 209.69/54.11 (94) QDP 209.69/54.11 (95) DependencyGraphProof [EQUIVALENT, 0 ms] 209.69/54.11 (96) AND 209.69/54.11 (97) QDP 209.69/54.11 (98) UsableRulesProof [EQUIVALENT, 0 ms] 209.69/54.11 (99) QDP 209.69/54.11 (100) QReductionProof [EQUIVALENT, 0 ms] 209.69/54.11 (101) QDP 209.69/54.11 (102) QDPSizeChangeProof [EQUIVALENT, 0 ms] 209.69/54.11 (103) YES 209.69/54.11 (104) QDP 209.69/54.11 (105) UsableRulesProof [EQUIVALENT, 0 ms] 209.69/54.11 (106) QDP 209.69/54.11 (107) QReductionProof [EQUIVALENT, 0 ms] 209.69/54.11 (108) QDP 209.69/54.11 (109) QDPOrderProof [EQUIVALENT, 0 ms] 209.69/54.11 (110) QDP 209.69/54.11 (111) DependencyGraphProof [EQUIVALENT, 0 ms] 209.69/54.11 (112) TRUE 209.69/54.11 (113) QDP 209.69/54.11 (114) UsableRulesProof [EQUIVALENT, 0 ms] 209.69/54.11 (115) QDP 209.69/54.11 (116) QReductionProof [EQUIVALENT, 0 ms] 209.69/54.11 (117) QDP 209.69/54.11 (118) QDPSizeChangeProof [EQUIVALENT, 0 ms] 209.69/54.11 (119) YES 209.69/54.11 (120) QDP 209.69/54.11 (121) UsableRulesProof [EQUIVALENT, 0 ms] 209.69/54.11 (122) QDP 209.69/54.11 (123) QReductionProof [EQUIVALENT, 0 ms] 209.69/54.11 (124) QDP 209.69/54.11 (125) QDPOrderProof [EQUIVALENT, 29 ms] 209.69/54.11 (126) QDP 209.69/54.11 (127) DependencyGraphProof [EQUIVALENT, 0 ms] 209.69/54.11 (128) TRUE 209.69/54.11 (129) QDP 209.69/54.11 (130) MNOCProof [EQUIVALENT, 0 ms] 209.69/54.11 (131) QDP 209.69/54.11 (132) NonLoopProof [COMPLETE, 15.7 s] 209.69/54.11 (133) NO 209.69/54.11 (134) PrologToDTProblemTransformerProof [SOUND, 56 ms] 209.69/54.11 (135) TRIPLES 209.69/54.11 (136) TriplesToPiDPProof [SOUND, 20 ms] 209.69/54.11 (137) PiDP 209.69/54.11 (138) DependencyGraphProof [EQUIVALENT, 0 ms] 209.69/54.11 (139) AND 209.69/54.11 (140) PiDP 209.69/54.11 (141) UsableRulesProof [EQUIVALENT, 0 ms] 209.69/54.11 (142) PiDP 209.69/54.11 (143) PiDPToQDPProof [SOUND, 1 ms] 209.69/54.11 (144) QDP 209.69/54.11 (145) QDPSizeChangeProof [EQUIVALENT, 0 ms] 209.69/54.11 (146) YES 209.69/54.11 (147) PiDP 209.69/54.11 (148) UsableRulesProof [EQUIVALENT, 0 ms] 209.69/54.11 (149) PiDP 209.69/54.11 (150) PiDPToQDPProof [SOUND, 0 ms] 209.69/54.11 (151) QDP 209.69/54.11 (152) QDPQMonotonicMRRProof [EQUIVALENT, 22 ms] 209.69/54.11 (153) QDP 209.69/54.11 (154) QDPQMonotonicMRRProof [EQUIVALENT, 11 ms] 209.69/54.11 (155) QDP 209.69/54.11 (156) PisEmptyProof [EQUIVALENT, 0 ms] 209.69/54.11 (157) YES 209.69/54.11 (158) PiDP 209.69/54.11 (159) UsableRulesProof [EQUIVALENT, 0 ms] 209.69/54.11 (160) PiDP 209.69/54.11 (161) PiDPToQDPProof [SOUND, 0 ms] 209.69/54.11 (162) QDP 209.69/54.11 (163) QDPSizeChangeProof [EQUIVALENT, 0 ms] 209.69/54.11 (164) YES 209.69/54.11 (165) PiDP 209.69/54.11 (166) UsableRulesProof [EQUIVALENT, 0 ms] 209.69/54.11 (167) PiDP 209.69/54.11 (168) PiDPToQDPProof [SOUND, 0 ms] 209.69/54.11 (169) QDP 209.69/54.11 (170) TransformationProof [EQUIVALENT, 0 ms] 209.69/54.11 (171) QDP 209.69/54.11 (172) UsableRulesProof [EQUIVALENT, 0 ms] 209.69/54.11 (173) QDP 209.69/54.11 (174) QReductionProof [EQUIVALENT, 0 ms] 209.69/54.11 (175) QDP 209.69/54.11 (176) QDPQMonotonicMRRProof [EQUIVALENT, 14 ms] 209.69/54.11 (177) QDP 209.69/54.11 (178) DependencyGraphProof [EQUIVALENT, 0 ms] 209.69/54.11 (179) TRUE 209.69/54.11 (180) PiDP 209.69/54.11 (181) UsableRulesProof [EQUIVALENT, 0 ms] 209.69/54.11 (182) PiDP 209.69/54.11 (183) PiDPToQDPProof [SOUND, 0 ms] 209.69/54.11 (184) QDP 209.69/54.11 (185) TransformationProof [EQUIVALENT, 0 ms] 209.69/54.11 (186) QDP 209.69/54.11 (187) QDPQMonotonicMRRProof [EQUIVALENT, 268 ms] 209.69/54.11 (188) QDP 209.69/54.11 (189) PrologToIRSwTTransformerProof [SOUND, 40 ms] 209.69/54.11 (190) AND 209.69/54.11 (191) IRSwT 209.69/54.11 (192) IRSwTSimpleDependencyGraphProof [EQUIVALENT, 0 ms] 209.69/54.11 (193) TRUE 209.69/54.11 (194) IRSwT 209.69/54.11 (195) IRSwTSimpleDependencyGraphProof [EQUIVALENT, 0 ms] 209.69/54.11 (196) TRUE 209.69/54.11 (197) IRSwT 209.69/54.11 (198) IRSwTSimpleDependencyGraphProof [EQUIVALENT, 0 ms] 209.69/54.11 (199) IRSwT 209.69/54.11 (200) IntTRSCompressionProof [EQUIVALENT, 20 ms] 209.69/54.11 (201) IRSwT 209.69/54.11 (202) IRSFormatTransformerProof [EQUIVALENT, 0 ms] 209.69/54.11 (203) IRSwT 209.69/54.11 (204) IRSwTTerminationDigraphProof [EQUIVALENT, 4 ms] 209.69/54.11 (205) IRSwT 209.69/54.11 (206) TempFilterProof [SOUND, 2 ms] 209.69/54.11 (207) IRSwT 209.69/54.11 (208) IRSwTToQDPProof [SOUND, 0 ms] 209.69/54.11 (209) QDP 209.69/54.11 (210) QDPSizeChangeProof [EQUIVALENT, 0 ms] 209.69/54.11 (211) YES 209.69/54.11 (212) IRSwT 209.69/54.11 (213) IRSwTSimpleDependencyGraphProof [EQUIVALENT, 0 ms] 209.69/54.11 (214) IRSwT 209.69/54.11 (215) IntTRSCompressionProof [EQUIVALENT, 24 ms] 209.69/54.11 (216) IRSwT 209.69/54.11 (217) IRSFormatTransformerProof [EQUIVALENT, 0 ms] 209.69/54.11 (218) IRSwT 209.69/54.11 (219) IRSwTTerminationDigraphProof [EQUIVALENT, 48 ms] 209.69/54.11 (220) IRSwT 209.69/54.11 (221) IntTRSCompressionProof [EQUIVALENT, 12 ms] 209.69/54.11 (222) IRSwT 209.69/54.11 (223) IRSwTToIntTRSProof [SOUND, 18 ms] 209.69/54.11 (224) IRSwT 209.69/54.11 (225) IntTRSCompressionProof [EQUIVALENT, 11 ms] 209.69/54.11 (226) IRSwT 209.69/54.11 (227) IRSwT 209.69/54.11 209.69/54.11 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (0) 209.69/54.11 Obligation: 209.69/54.11 Clauses: 209.69/54.11 209.69/54.11 pred(0, 0). 209.69/54.11 pred(s(0), 0). 209.69/54.11 pred(s(s(X)), s(Y)) :- pred(s(X), Y). 209.69/54.11 double(0, 0). 209.69/54.11 double(s(X), s(s(Y))) :- ','(pred(s(X), Z), double(Z, Y)). 209.69/54.11 half(0, 0). 209.69/54.11 half(s(s(X)), s(U)) :- ','(pred(s(s(X)), Y), ','(pred(Y, Z), half(Z, U))). 209.69/54.11 f(s(X)) :- ','(half(s(X), Y), ','(double(Y, Z), f(Z))). 209.69/54.11 209.69/54.11 209.69/54.11 Query: f(g) 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (1) PrologToPiTRSProof (SOUND) 209.69/54.11 We use the technique of [TOCL09]. With regard to the inferred argument filtering the predicates were used in the following modes: 209.69/54.11 209.69/54.11 f_in_1: (b) 209.69/54.11 209.69/54.11 half_in_2: (b,f) 209.69/54.11 209.69/54.11 pred_in_2: (b,f) 209.69/54.11 209.69/54.11 double_in_2: (b,f) 209.69/54.11 209.69/54.11 Transforming Prolog into the following Term Rewriting System: 209.69/54.11 209.69/54.11 Pi-finite rewrite system: 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 f_in_g(s(X)) -> U7_g(X, half_in_ga(s(X), Y)) 209.69/54.11 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.11 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.11 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.11 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.11 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.11 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.11 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.11 U7_g(X, half_out_ga(s(X), Y)) -> U8_g(X, double_in_ga(Y, Z)) 209.69/54.11 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.11 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.11 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.11 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.11 U8_g(X, double_out_ga(Y, Z)) -> U9_g(X, f_in_g(Z)) 209.69/54.11 U9_g(X, f_out_g(Z)) -> f_out_g(s(X)) 209.69/54.11 209.69/54.11 The argument filtering Pi contains the following mapping: 209.69/54.11 f_in_g(x1) = f_in_g(x1) 209.69/54.11 209.69/54.11 s(x1) = s(x1) 209.69/54.11 209.69/54.11 U7_g(x1, x2) = U7_g(x1, x2) 209.69/54.11 209.69/54.11 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.11 209.69/54.11 0 = 0 209.69/54.11 209.69/54.11 half_out_ga(x1, x2) = half_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U4_ga(x1, x2, x3) = U4_ga(x1, x3) 209.69/54.11 209.69/54.11 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.11 209.69/54.11 pred_out_ga(x1, x2) = pred_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U1_ga(x1, x2, x3) = U1_ga(x1, x3) 209.69/54.11 209.69/54.11 U5_ga(x1, x2, x3) = U5_ga(x1, x3) 209.69/54.11 209.69/54.11 U6_ga(x1, x2, x3) = U6_ga(x1, x3) 209.69/54.11 209.69/54.11 U8_g(x1, x2) = U8_g(x1, x2) 209.69/54.11 209.69/54.11 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.11 209.69/54.11 double_out_ga(x1, x2) = double_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U2_ga(x1, x2, x3) = U2_ga(x1, x3) 209.69/54.11 209.69/54.11 U3_ga(x1, x2, x3) = U3_ga(x1, x3) 209.69/54.11 209.69/54.11 U9_g(x1, x2) = U9_g(x1, x2) 209.69/54.11 209.69/54.11 f_out_g(x1) = f_out_g(x1) 209.69/54.11 209.69/54.11 209.69/54.11 209.69/54.11 209.69/54.11 209.69/54.11 Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog 209.69/54.11 209.69/54.11 209.69/54.11 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (2) 209.69/54.11 Obligation: 209.69/54.11 Pi-finite rewrite system: 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 f_in_g(s(X)) -> U7_g(X, half_in_ga(s(X), Y)) 209.69/54.11 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.11 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.11 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.11 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.11 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.11 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.11 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.11 U7_g(X, half_out_ga(s(X), Y)) -> U8_g(X, double_in_ga(Y, Z)) 209.69/54.11 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.11 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.11 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.11 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.11 U8_g(X, double_out_ga(Y, Z)) -> U9_g(X, f_in_g(Z)) 209.69/54.11 U9_g(X, f_out_g(Z)) -> f_out_g(s(X)) 209.69/54.11 209.69/54.11 The argument filtering Pi contains the following mapping: 209.69/54.11 f_in_g(x1) = f_in_g(x1) 209.69/54.11 209.69/54.11 s(x1) = s(x1) 209.69/54.11 209.69/54.11 U7_g(x1, x2) = U7_g(x1, x2) 209.69/54.11 209.69/54.11 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.11 209.69/54.11 0 = 0 209.69/54.11 209.69/54.11 half_out_ga(x1, x2) = half_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U4_ga(x1, x2, x3) = U4_ga(x1, x3) 209.69/54.11 209.69/54.11 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.11 209.69/54.11 pred_out_ga(x1, x2) = pred_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U1_ga(x1, x2, x3) = U1_ga(x1, x3) 209.69/54.11 209.69/54.11 U5_ga(x1, x2, x3) = U5_ga(x1, x3) 209.69/54.11 209.69/54.11 U6_ga(x1, x2, x3) = U6_ga(x1, x3) 209.69/54.11 209.69/54.11 U8_g(x1, x2) = U8_g(x1, x2) 209.69/54.11 209.69/54.11 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.11 209.69/54.11 double_out_ga(x1, x2) = double_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U2_ga(x1, x2, x3) = U2_ga(x1, x3) 209.69/54.11 209.69/54.11 U3_ga(x1, x2, x3) = U3_ga(x1, x3) 209.69/54.11 209.69/54.11 U9_g(x1, x2) = U9_g(x1, x2) 209.69/54.11 209.69/54.11 f_out_g(x1) = f_out_g(x1) 209.69/54.11 209.69/54.11 209.69/54.11 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (3) DependencyPairsProof (EQUIVALENT) 209.69/54.11 Using Dependency Pairs [AG00,LOPSTR] we result in the following initial DP problem: 209.69/54.11 Pi DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 F_IN_G(s(X)) -> U7_G(X, half_in_ga(s(X), Y)) 209.69/54.11 F_IN_G(s(X)) -> HALF_IN_GA(s(X), Y) 209.69/54.11 HALF_IN_GA(s(s(X)), s(U)) -> U4_GA(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.11 HALF_IN_GA(s(s(X)), s(U)) -> PRED_IN_GA(s(s(X)), Y) 209.69/54.11 PRED_IN_GA(s(s(X)), s(Y)) -> U1_GA(X, Y, pred_in_ga(s(X), Y)) 209.69/54.11 PRED_IN_GA(s(s(X)), s(Y)) -> PRED_IN_GA(s(X), Y) 209.69/54.11 U4_GA(X, U, pred_out_ga(s(s(X)), Y)) -> U5_GA(X, U, pred_in_ga(Y, Z)) 209.69/54.11 U4_GA(X, U, pred_out_ga(s(s(X)), Y)) -> PRED_IN_GA(Y, Z) 209.69/54.11 U5_GA(X, U, pred_out_ga(Y, Z)) -> U6_GA(X, U, half_in_ga(Z, U)) 209.69/54.11 U5_GA(X, U, pred_out_ga(Y, Z)) -> HALF_IN_GA(Z, U) 209.69/54.11 U7_G(X, half_out_ga(s(X), Y)) -> U8_G(X, double_in_ga(Y, Z)) 209.69/54.11 U7_G(X, half_out_ga(s(X), Y)) -> DOUBLE_IN_GA(Y, Z) 209.69/54.11 DOUBLE_IN_GA(s(X), s(s(Y))) -> U2_GA(X, Y, pred_in_ga(s(X), Z)) 209.69/54.11 DOUBLE_IN_GA(s(X), s(s(Y))) -> PRED_IN_GA(s(X), Z) 209.69/54.11 U2_GA(X, Y, pred_out_ga(s(X), Z)) -> U3_GA(X, Y, double_in_ga(Z, Y)) 209.69/54.11 U2_GA(X, Y, pred_out_ga(s(X), Z)) -> DOUBLE_IN_GA(Z, Y) 209.69/54.11 U8_G(X, double_out_ga(Y, Z)) -> U9_G(X, f_in_g(Z)) 209.69/54.11 U8_G(X, double_out_ga(Y, Z)) -> F_IN_G(Z) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 f_in_g(s(X)) -> U7_g(X, half_in_ga(s(X), Y)) 209.69/54.11 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.11 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.11 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.11 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.11 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.11 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.11 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.11 U7_g(X, half_out_ga(s(X), Y)) -> U8_g(X, double_in_ga(Y, Z)) 209.69/54.11 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.11 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.11 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.11 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.11 U8_g(X, double_out_ga(Y, Z)) -> U9_g(X, f_in_g(Z)) 209.69/54.11 U9_g(X, f_out_g(Z)) -> f_out_g(s(X)) 209.69/54.11 209.69/54.11 The argument filtering Pi contains the following mapping: 209.69/54.11 f_in_g(x1) = f_in_g(x1) 209.69/54.11 209.69/54.11 s(x1) = s(x1) 209.69/54.11 209.69/54.11 U7_g(x1, x2) = U7_g(x1, x2) 209.69/54.11 209.69/54.11 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.11 209.69/54.11 0 = 0 209.69/54.11 209.69/54.11 half_out_ga(x1, x2) = half_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U4_ga(x1, x2, x3) = U4_ga(x1, x3) 209.69/54.11 209.69/54.11 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.11 209.69/54.11 pred_out_ga(x1, x2) = pred_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U1_ga(x1, x2, x3) = U1_ga(x1, x3) 209.69/54.11 209.69/54.11 U5_ga(x1, x2, x3) = U5_ga(x1, x3) 209.69/54.11 209.69/54.11 U6_ga(x1, x2, x3) = U6_ga(x1, x3) 209.69/54.11 209.69/54.11 U8_g(x1, x2) = U8_g(x1, x2) 209.69/54.11 209.69/54.11 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.11 209.69/54.11 double_out_ga(x1, x2) = double_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U2_ga(x1, x2, x3) = U2_ga(x1, x3) 209.69/54.11 209.69/54.11 U3_ga(x1, x2, x3) = U3_ga(x1, x3) 209.69/54.11 209.69/54.11 U9_g(x1, x2) = U9_g(x1, x2) 209.69/54.11 209.69/54.11 f_out_g(x1) = f_out_g(x1) 209.69/54.11 209.69/54.11 F_IN_G(x1) = F_IN_G(x1) 209.69/54.11 209.69/54.11 U7_G(x1, x2) = U7_G(x1, x2) 209.69/54.11 209.69/54.11 HALF_IN_GA(x1, x2) = HALF_IN_GA(x1) 209.69/54.11 209.69/54.11 U4_GA(x1, x2, x3) = U4_GA(x1, x3) 209.69/54.11 209.69/54.11 PRED_IN_GA(x1, x2) = PRED_IN_GA(x1) 209.69/54.11 209.69/54.11 U1_GA(x1, x2, x3) = U1_GA(x1, x3) 209.69/54.11 209.69/54.11 U5_GA(x1, x2, x3) = U5_GA(x1, x3) 209.69/54.11 209.69/54.11 U6_GA(x1, x2, x3) = U6_GA(x1, x3) 209.69/54.11 209.69/54.11 U8_G(x1, x2) = U8_G(x1, x2) 209.69/54.11 209.69/54.11 DOUBLE_IN_GA(x1, x2) = DOUBLE_IN_GA(x1) 209.69/54.11 209.69/54.11 U2_GA(x1, x2, x3) = U2_GA(x1, x3) 209.69/54.11 209.69/54.11 U3_GA(x1, x2, x3) = U3_GA(x1, x3) 209.69/54.11 209.69/54.11 U9_G(x1, x2) = U9_G(x1, x2) 209.69/54.11 209.69/54.11 209.69/54.11 We have to consider all (P,R,Pi)-chains 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (4) 209.69/54.11 Obligation: 209.69/54.11 Pi DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 F_IN_G(s(X)) -> U7_G(X, half_in_ga(s(X), Y)) 209.69/54.11 F_IN_G(s(X)) -> HALF_IN_GA(s(X), Y) 209.69/54.11 HALF_IN_GA(s(s(X)), s(U)) -> U4_GA(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.11 HALF_IN_GA(s(s(X)), s(U)) -> PRED_IN_GA(s(s(X)), Y) 209.69/54.11 PRED_IN_GA(s(s(X)), s(Y)) -> U1_GA(X, Y, pred_in_ga(s(X), Y)) 209.69/54.11 PRED_IN_GA(s(s(X)), s(Y)) -> PRED_IN_GA(s(X), Y) 209.69/54.11 U4_GA(X, U, pred_out_ga(s(s(X)), Y)) -> U5_GA(X, U, pred_in_ga(Y, Z)) 209.69/54.11 U4_GA(X, U, pred_out_ga(s(s(X)), Y)) -> PRED_IN_GA(Y, Z) 209.69/54.11 U5_GA(X, U, pred_out_ga(Y, Z)) -> U6_GA(X, U, half_in_ga(Z, U)) 209.69/54.11 U5_GA(X, U, pred_out_ga(Y, Z)) -> HALF_IN_GA(Z, U) 209.69/54.11 U7_G(X, half_out_ga(s(X), Y)) -> U8_G(X, double_in_ga(Y, Z)) 209.69/54.11 U7_G(X, half_out_ga(s(X), Y)) -> DOUBLE_IN_GA(Y, Z) 209.69/54.11 DOUBLE_IN_GA(s(X), s(s(Y))) -> U2_GA(X, Y, pred_in_ga(s(X), Z)) 209.69/54.11 DOUBLE_IN_GA(s(X), s(s(Y))) -> PRED_IN_GA(s(X), Z) 209.69/54.11 U2_GA(X, Y, pred_out_ga(s(X), Z)) -> U3_GA(X, Y, double_in_ga(Z, Y)) 209.69/54.11 U2_GA(X, Y, pred_out_ga(s(X), Z)) -> DOUBLE_IN_GA(Z, Y) 209.69/54.11 U8_G(X, double_out_ga(Y, Z)) -> U9_G(X, f_in_g(Z)) 209.69/54.11 U8_G(X, double_out_ga(Y, Z)) -> F_IN_G(Z) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 f_in_g(s(X)) -> U7_g(X, half_in_ga(s(X), Y)) 209.69/54.11 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.11 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.11 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.11 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.11 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.11 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.11 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.11 U7_g(X, half_out_ga(s(X), Y)) -> U8_g(X, double_in_ga(Y, Z)) 209.69/54.11 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.11 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.11 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.11 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.11 U8_g(X, double_out_ga(Y, Z)) -> U9_g(X, f_in_g(Z)) 209.69/54.11 U9_g(X, f_out_g(Z)) -> f_out_g(s(X)) 209.69/54.11 209.69/54.11 The argument filtering Pi contains the following mapping: 209.69/54.11 f_in_g(x1) = f_in_g(x1) 209.69/54.11 209.69/54.11 s(x1) = s(x1) 209.69/54.11 209.69/54.11 U7_g(x1, x2) = U7_g(x1, x2) 209.69/54.11 209.69/54.11 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.11 209.69/54.11 0 = 0 209.69/54.11 209.69/54.11 half_out_ga(x1, x2) = half_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U4_ga(x1, x2, x3) = U4_ga(x1, x3) 209.69/54.11 209.69/54.11 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.11 209.69/54.11 pred_out_ga(x1, x2) = pred_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U1_ga(x1, x2, x3) = U1_ga(x1, x3) 209.69/54.11 209.69/54.11 U5_ga(x1, x2, x3) = U5_ga(x1, x3) 209.69/54.11 209.69/54.11 U6_ga(x1, x2, x3) = U6_ga(x1, x3) 209.69/54.11 209.69/54.11 U8_g(x1, x2) = U8_g(x1, x2) 209.69/54.11 209.69/54.11 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.11 209.69/54.11 double_out_ga(x1, x2) = double_out_ga'(x1, x2) 209.69/54.11 209.69/54.11 U2_ga(x1, x2, x3) = U2_ga(x1, x3) 209.69/54.11 209.69/54.11 U3_ga(x1, x2, x3) = U3_ga(x1, x3) 209.69/54.11 209.69/54.11 U9_g(x1, x2) = U9_g(x1, x2) 209.69/54.11 209.69/54.11 f_out_g(x1) = f_out_g(x1) 209.69/54.11 209.69/54.11 F_IN_G(x1) = F_IN_G(x1) 209.69/54.11 209.69/54.11 U7_G(x1, x2) = U7_G(x1, x2) 209.69/54.11 209.69/54.11 HALF_IN_GA(x1, x2) = HALF_IN_GA(x1) 209.69/54.11 209.69/54.11 U4_GA(x1, x2, x3) = U4_GA(x1, x3) 209.69/54.11 209.69/54.11 PRED_IN_GA(x1, x2) = PRED_IN_GA(x1) 209.69/54.11 209.69/54.11 U1_GA(x1, x2, x3) = U1_GA(x1, x3) 209.69/54.11 209.69/54.11 U5_GA(x1, x2, x3) = U5_GA(x1, x3) 209.69/54.11 209.69/54.11 U6_GA(x1, x2, x3) = U6_GA(x1, x3) 209.69/54.11 209.69/54.11 U8_G(x1, x2) = U8_G(x1, x2) 209.69/54.11 209.69/54.11 DOUBLE_IN_GA(x1, x2) = DOUBLE_IN_GA(x1) 209.69/54.11 209.69/54.11 U2_GA(x1, x2, x3) = U2_GA(x1, x3) 209.69/54.11 209.69/54.11 U3_GA(x1, x2, x3) = U3_GA(x1, x3) 209.69/54.11 209.69/54.11 U9_G(x1, x2) = U9_G(x1, x2) 209.69/54.11 209.69/54.11 209.69/54.11 We have to consider all (P,R,Pi)-chains 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (5) DependencyGraphProof (EQUIVALENT) 209.69/54.11 The approximation of the Dependency Graph [LOPSTR] contains 4 SCCs with 9 less nodes. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (6) 209.69/54.11 Complex Obligation (AND) 209.69/54.11 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (7) 209.69/54.11 Obligation: 209.69/54.11 Pi DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 PRED_IN_GA(s(s(X)), s(Y)) -> PRED_IN_GA(s(X), Y) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 f_in_g(s(X)) -> U7_g(X, half_in_ga(s(X), Y)) 209.69/54.11 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.11 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.11 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.11 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.11 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.11 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.11 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.11 U7_g(X, half_out_ga(s(X), Y)) -> U8_g(X, double_in_ga(Y, Z)) 209.69/54.11 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.11 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.11 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.11 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.11 U8_g(X, double_out_ga(Y, Z)) -> U9_g(X, f_in_g(Z)) 209.69/54.11 U9_g(X, f_out_g(Z)) -> f_out_g(s(X)) 209.69/54.11 209.69/54.11 The argument filtering Pi contains the following mapping: 209.69/54.11 f_in_g(x1) = f_in_g(x1) 209.69/54.11 209.69/54.11 s(x1) = s(x1) 209.69/54.11 209.69/54.11 U7_g(x1, x2) = U7_g(x1, x2) 209.69/54.11 209.69/54.11 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.11 209.69/54.11 0 = 0 209.69/54.11 209.69/54.11 half_out_ga(x1, x2) = half_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U4_ga(x1, x2, x3) = U4_ga(x1, x3) 209.69/54.11 209.69/54.11 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.11 209.69/54.11 pred_out_ga(x1, x2) = pred_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U1_ga(x1, x2, x3) = U1_ga(x1, x3) 209.69/54.11 209.69/54.11 U5_ga(x1, x2, x3) = U5_ga(x1, x3) 209.69/54.11 209.69/54.11 U6_ga(x1, x2, x3) = U6_ga(x1, x3) 209.69/54.11 209.69/54.11 U8_g(x1, x2) = U8_g(x1, x2) 209.69/54.11 209.69/54.11 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.11 209.69/54.11 double_out_ga(x1, x2) = double_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U2_ga(x1, x2, x3) = U2_ga(x1, x3) 209.69/54.11 209.69/54.11 U3_ga(x1, x2, x3) = U3_ga(x1, x3) 209.69/54.11 209.69/54.11 U9_g(x1, x2) = U9_g(x1, x2) 209.69/54.11 209.69/54.11 f_out_g(x1) = f_out_g(x1) 209.69/54.11 209.69/54.11 PRED_IN_GA(x1, x2) = PRED_IN_GA(x1) 209.69/54.11 209.69/54.11 209.69/54.11 We have to consider all (P,R,Pi)-chains 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (8) UsableRulesProof (EQUIVALENT) 209.69/54.11 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (9) 209.69/54.11 Obligation: 209.69/54.11 Pi DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 PRED_IN_GA(s(s(X)), s(Y)) -> PRED_IN_GA(s(X), Y) 209.69/54.11 209.69/54.11 R is empty. 209.69/54.11 The argument filtering Pi contains the following mapping: 209.69/54.11 s(x1) = s(x1) 209.69/54.11 209.69/54.11 PRED_IN_GA(x1, x2) = PRED_IN_GA(x1) 209.69/54.11 209.69/54.11 209.69/54.11 We have to consider all (P,R,Pi)-chains 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (10) PiDPToQDPProof (SOUND) 209.69/54.11 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (11) 209.69/54.11 Obligation: 209.69/54.11 Q DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 PRED_IN_GA(s(s(X))) -> PRED_IN_GA(s(X)) 209.69/54.11 209.69/54.11 R is empty. 209.69/54.11 Q is empty. 209.69/54.11 We have to consider all (P,Q,R)-chains. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (12) QDPSizeChangeProof (EQUIVALENT) 209.69/54.11 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. 209.69/54.11 209.69/54.11 From the DPs we obtained the following set of size-change graphs: 209.69/54.11 *PRED_IN_GA(s(s(X))) -> PRED_IN_GA(s(X)) 209.69/54.11 The graph contains the following edges 1 > 1 209.69/54.11 209.69/54.11 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (13) 209.69/54.11 YES 209.69/54.11 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (14) 209.69/54.11 Obligation: 209.69/54.11 Pi DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 DOUBLE_IN_GA(s(X), s(s(Y))) -> U2_GA(X, Y, pred_in_ga(s(X), Z)) 209.69/54.11 U2_GA(X, Y, pred_out_ga(s(X), Z)) -> DOUBLE_IN_GA(Z, Y) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 f_in_g(s(X)) -> U7_g(X, half_in_ga(s(X), Y)) 209.69/54.11 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.11 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.11 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.11 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.11 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.11 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.11 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.11 U7_g(X, half_out_ga(s(X), Y)) -> U8_g(X, double_in_ga(Y, Z)) 209.69/54.11 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.11 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.11 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.11 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.11 U8_g(X, double_out_ga(Y, Z)) -> U9_g(X, f_in_g(Z)) 209.69/54.11 U9_g(X, f_out_g(Z)) -> f_out_g(s(X)) 209.69/54.11 209.69/54.11 The argument filtering Pi contains the following mapping: 209.69/54.11 f_in_g(x1) = f_in_g(x1) 209.69/54.11 209.69/54.11 s(x1) = s(x1) 209.69/54.11 209.69/54.11 U7_g(x1, x2) = U7_g(x1, x2) 209.69/54.11 209.69/54.11 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.11 209.69/54.11 0 = 0 209.69/54.11 209.69/54.11 half_out_ga(x1, x2) = half_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U4_ga(x1, x2, x3) = U4_ga(x1, x3) 209.69/54.11 209.69/54.11 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.11 209.69/54.11 pred_out_ga(x1, x2) = pred_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U1_ga(x1, x2, x3) = U1_ga(x1, x3) 209.69/54.11 209.69/54.11 U5_ga(x1, x2, x3) = U5_ga(x1, x3) 209.69/54.11 209.69/54.11 U6_ga(x1, x2, x3) = U6_ga(x1, x3) 209.69/54.11 209.69/54.11 U8_g(x1, x2) = U8_g(x1, x2) 209.69/54.11 209.69/54.11 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.11 209.69/54.11 double_out_ga(x1, x2) = double_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U2_ga(x1, x2, x3) = U2_ga(x1, x3) 209.69/54.11 209.69/54.11 U3_ga(x1, x2, x3) = U3_ga(x1, x3) 209.69/54.11 209.69/54.11 U9_g(x1, x2) = U9_g(x1, x2) 209.69/54.11 209.69/54.11 f_out_g(x1) = f_out_g(x1) 209.69/54.11 209.69/54.11 DOUBLE_IN_GA(x1, x2) = DOUBLE_IN_GA(x1) 209.69/54.11 209.69/54.11 U2_GA(x1, x2, x3) = U2_GA(x1, x3) 209.69/54.11 209.69/54.11 209.69/54.11 We have to consider all (P,R,Pi)-chains 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (15) UsableRulesProof (EQUIVALENT) 209.69/54.11 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (16) 209.69/54.11 Obligation: 209.69/54.11 Pi DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 DOUBLE_IN_GA(s(X), s(s(Y))) -> U2_GA(X, Y, pred_in_ga(s(X), Z)) 209.69/54.11 U2_GA(X, Y, pred_out_ga(s(X), Z)) -> DOUBLE_IN_GA(Z, Y) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.11 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 209.69/54.11 The argument filtering Pi contains the following mapping: 209.69/54.11 s(x1) = s(x1) 209.69/54.11 209.69/54.11 0 = 0 209.69/54.11 209.69/54.11 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.11 209.69/54.11 pred_out_ga(x1, x2) = pred_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U1_ga(x1, x2, x3) = U1_ga(x1, x3) 209.69/54.11 209.69/54.11 DOUBLE_IN_GA(x1, x2) = DOUBLE_IN_GA(x1) 209.69/54.11 209.69/54.11 U2_GA(x1, x2, x3) = U2_GA(x1, x3) 209.69/54.11 209.69/54.11 209.69/54.11 We have to consider all (P,R,Pi)-chains 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (17) PiDPToQDPProof (SOUND) 209.69/54.11 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (18) 209.69/54.11 Obligation: 209.69/54.11 Q DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 DOUBLE_IN_GA(s(X)) -> U2_GA(X, pred_in_ga(s(X))) 209.69/54.11 U2_GA(X, pred_out_ga(s(X), Z)) -> DOUBLE_IN_GA(Z) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 pred_in_ga(s(0)) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X))) -> U1_ga(X, pred_in_ga(s(X))) 209.69/54.11 U1_ga(X, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 209.69/54.11 The set Q consists of the following terms: 209.69/54.11 209.69/54.11 pred_in_ga(x0) 209.69/54.11 U1_ga(x0, x1) 209.69/54.11 209.69/54.11 We have to consider all (P,Q,R)-chains. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (19) QDPQMonotonicMRRProof (EQUIVALENT) 209.69/54.11 By using the Q-monotonic rule removal processor with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented such that it always occurs at a strongly monotonic position in a (P,Q,R)-chain. 209.69/54.11 209.69/54.11 Strictly oriented dependency pairs: 209.69/54.11 209.69/54.11 U2_GA(X, pred_out_ga(s(X), Z)) -> DOUBLE_IN_GA(Z) 209.69/54.11 209.69/54.11 Strictly oriented rules of the TRS R: 209.69/54.11 209.69/54.11 pred_in_ga(s(s(X))) -> U1_ga(X, pred_in_ga(s(X))) 209.69/54.11 U1_ga(X, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 209.69/54.11 Used ordering: Polynomial interpretation [POLO]: 209.69/54.11 209.69/54.11 POL(0) = 1 209.69/54.11 POL(DOUBLE_IN_GA(x_1)) = 2 + x_1 209.69/54.11 POL(U1_ga(x_1, x_2)) = 2*x_2 209.69/54.11 POL(U2_GA(x_1, x_2)) = 2 + x_2 209.69/54.11 POL(pred_in_ga(x_1)) = x_1 209.69/54.11 POL(pred_out_ga(x_1, x_2)) = 2 + x_2 209.69/54.11 POL(s(x_1)) = 1 + 2*x_1 209.69/54.11 209.69/54.11 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (20) 209.69/54.11 Obligation: 209.69/54.11 Q DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 DOUBLE_IN_GA(s(X)) -> U2_GA(X, pred_in_ga(s(X))) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 pred_in_ga(s(0)) -> pred_out_ga(s(0), 0) 209.69/54.11 209.69/54.11 The set Q consists of the following terms: 209.69/54.11 209.69/54.11 pred_in_ga(x0) 209.69/54.11 U1_ga(x0, x1) 209.69/54.11 209.69/54.11 We have to consider all (P,Q,R)-chains. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (21) DependencyGraphProof (EQUIVALENT) 209.69/54.11 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (22) 209.69/54.11 TRUE 209.69/54.11 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (23) 209.69/54.11 Obligation: 209.69/54.11 Pi DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 U4_GA(X, U, pred_out_ga(s(s(X)), Y)) -> U5_GA(X, U, pred_in_ga(Y, Z)) 209.69/54.11 U5_GA(X, U, pred_out_ga(Y, Z)) -> HALF_IN_GA(Z, U) 209.69/54.11 HALF_IN_GA(s(s(X)), s(U)) -> U4_GA(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 f_in_g(s(X)) -> U7_g(X, half_in_ga(s(X), Y)) 209.69/54.11 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.11 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.11 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.11 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.11 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.11 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.11 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.11 U7_g(X, half_out_ga(s(X), Y)) -> U8_g(X, double_in_ga(Y, Z)) 209.69/54.11 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.11 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.11 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.11 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.11 U8_g(X, double_out_ga(Y, Z)) -> U9_g(X, f_in_g(Z)) 209.69/54.11 U9_g(X, f_out_g(Z)) -> f_out_g(s(X)) 209.69/54.11 209.69/54.11 The argument filtering Pi contains the following mapping: 209.69/54.11 f_in_g(x1) = f_in_g(x1) 209.69/54.11 209.69/54.11 s(x1) = s(x1) 209.69/54.11 209.69/54.11 U7_g(x1, x2) = U7_g(x1, x2) 209.69/54.11 209.69/54.11 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.11 209.69/54.11 0 = 0 209.69/54.11 209.69/54.11 half_out_ga(x1, x2) = half_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U4_ga(x1, x2, x3) = U4_ga(x1, x3) 209.69/54.11 209.69/54.11 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.11 209.69/54.11 pred_out_ga(x1, x2) = pred_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U1_ga(x1, x2, x3) = U1_ga(x1, x3) 209.69/54.11 209.69/54.11 U5_ga(x1, x2, x3) = U5_ga(x1, x3) 209.69/54.11 209.69/54.11 U6_ga(x1, x2, x3) = U6_ga(x1, x3) 209.69/54.11 209.69/54.11 U8_g(x1, x2) = U8_g(x1, x2) 209.69/54.11 209.69/54.11 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.11 209.69/54.11 double_out_ga(x1, x2) = double_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U2_ga(x1, x2, x3) = U2_ga(x1, x3) 209.69/54.11 209.69/54.11 U3_ga(x1, x2, x3) = U3_ga(x1, x3) 209.69/54.11 209.69/54.11 U9_g(x1, x2) = U9_g(x1, x2) 209.69/54.11 209.69/54.11 f_out_g(x1) = f_out_g(x1) 209.69/54.11 209.69/54.11 HALF_IN_GA(x1, x2) = HALF_IN_GA(x1) 209.69/54.11 209.69/54.11 U4_GA(x1, x2, x3) = U4_GA(x1, x3) 209.69/54.11 209.69/54.11 U5_GA(x1, x2, x3) = U5_GA(x1, x3) 209.69/54.11 209.69/54.11 209.69/54.11 We have to consider all (P,R,Pi)-chains 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (24) UsableRulesProof (EQUIVALENT) 209.69/54.11 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (25) 209.69/54.11 Obligation: 209.69/54.11 Pi DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 U4_GA(X, U, pred_out_ga(s(s(X)), Y)) -> U5_GA(X, U, pred_in_ga(Y, Z)) 209.69/54.11 U5_GA(X, U, pred_out_ga(Y, Z)) -> HALF_IN_GA(Z, U) 209.69/54.11 HALF_IN_GA(s(s(X)), s(U)) -> U4_GA(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.11 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.11 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 209.69/54.11 The argument filtering Pi contains the following mapping: 209.69/54.11 s(x1) = s(x1) 209.69/54.11 209.69/54.11 0 = 0 209.69/54.11 209.69/54.11 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.11 209.69/54.11 pred_out_ga(x1, x2) = pred_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U1_ga(x1, x2, x3) = U1_ga(x1, x3) 209.69/54.11 209.69/54.11 HALF_IN_GA(x1, x2) = HALF_IN_GA(x1) 209.69/54.11 209.69/54.11 U4_GA(x1, x2, x3) = U4_GA(x1, x3) 209.69/54.11 209.69/54.11 U5_GA(x1, x2, x3) = U5_GA(x1, x3) 209.69/54.11 209.69/54.11 209.69/54.11 We have to consider all (P,R,Pi)-chains 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (26) PiDPToQDPProof (SOUND) 209.69/54.11 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (27) 209.69/54.11 Obligation: 209.69/54.11 Q DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 U4_GA(X, pred_out_ga(s(s(X)), Y)) -> U5_GA(X, pred_in_ga(Y)) 209.69/54.11 U5_GA(X, pred_out_ga(Y, Z)) -> HALF_IN_GA(Z) 209.69/54.11 HALF_IN_GA(s(s(X))) -> U4_GA(X, pred_in_ga(s(s(X)))) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 pred_in_ga(0) -> pred_out_ga(0, 0) 209.69/54.11 pred_in_ga(s(0)) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X))) -> U1_ga(X, pred_in_ga(s(X))) 209.69/54.11 U1_ga(X, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 209.69/54.11 The set Q consists of the following terms: 209.69/54.11 209.69/54.11 pred_in_ga(x0) 209.69/54.11 U1_ga(x0, x1) 209.69/54.11 209.69/54.11 We have to consider all (P,Q,R)-chains. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (28) TransformationProof (EQUIVALENT) 209.69/54.11 By rewriting [LPAR04] the rule HALF_IN_GA(s(s(X))) -> U4_GA(X, pred_in_ga(s(s(X)))) at position [1] we obtained the following new rules [LPAR04]: 209.69/54.11 209.69/54.11 (HALF_IN_GA(s(s(X))) -> U4_GA(X, U1_ga(X, pred_in_ga(s(X)))),HALF_IN_GA(s(s(X))) -> U4_GA(X, U1_ga(X, pred_in_ga(s(X))))) 209.69/54.11 209.69/54.11 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (29) 209.69/54.11 Obligation: 209.69/54.11 Q DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 U4_GA(X, pred_out_ga(s(s(X)), Y)) -> U5_GA(X, pred_in_ga(Y)) 209.69/54.11 U5_GA(X, pred_out_ga(Y, Z)) -> HALF_IN_GA(Z) 209.69/54.11 HALF_IN_GA(s(s(X))) -> U4_GA(X, U1_ga(X, pred_in_ga(s(X)))) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 pred_in_ga(0) -> pred_out_ga(0, 0) 209.69/54.11 pred_in_ga(s(0)) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X))) -> U1_ga(X, pred_in_ga(s(X))) 209.69/54.11 U1_ga(X, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 209.69/54.11 The set Q consists of the following terms: 209.69/54.11 209.69/54.11 pred_in_ga(x0) 209.69/54.11 U1_ga(x0, x1) 209.69/54.11 209.69/54.11 We have to consider all (P,Q,R)-chains. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (30) QDPQMonotonicMRRProof (EQUIVALENT) 209.69/54.11 By using the Q-monotonic rule removal processor with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented such that it always occurs at a strongly monotonic position in a (P,Q,R)-chain. 209.69/54.11 209.69/54.11 209.69/54.11 Strictly oriented rules of the TRS R: 209.69/54.11 209.69/54.11 pred_in_ga(s(0)) -> pred_out_ga(s(0), 0) 209.69/54.11 209.69/54.11 Used ordering: Polynomial interpretation [POLO]: 209.69/54.11 209.69/54.11 POL(0) = 2 209.69/54.11 POL(HALF_IN_GA(x_1)) = 2*x_1 209.69/54.11 POL(U1_ga(x_1, x_2)) = 2*x_2 209.69/54.11 POL(U4_GA(x_1, x_2)) = 2*x_2 209.69/54.11 POL(U5_GA(x_1, x_2)) = 2*x_2 209.69/54.11 POL(pred_in_ga(x_1)) = x_1 209.69/54.11 POL(pred_out_ga(x_1, x_2)) = x_2 209.69/54.11 POL(s(x_1)) = 2*x_1 209.69/54.11 209.69/54.11 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (31) 209.69/54.11 Obligation: 209.69/54.11 Q DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 U4_GA(X, pred_out_ga(s(s(X)), Y)) -> U5_GA(X, pred_in_ga(Y)) 209.69/54.11 U5_GA(X, pred_out_ga(Y, Z)) -> HALF_IN_GA(Z) 209.69/54.11 HALF_IN_GA(s(s(X))) -> U4_GA(X, U1_ga(X, pred_in_ga(s(X)))) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 pred_in_ga(0) -> pred_out_ga(0, 0) 209.69/54.11 pred_in_ga(s(s(X))) -> U1_ga(X, pred_in_ga(s(X))) 209.69/54.11 U1_ga(X, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 209.69/54.11 The set Q consists of the following terms: 209.69/54.11 209.69/54.11 pred_in_ga(x0) 209.69/54.11 U1_ga(x0, x1) 209.69/54.11 209.69/54.11 We have to consider all (P,Q,R)-chains. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (32) QDPQMonotonicMRRProof (EQUIVALENT) 209.69/54.11 By using the Q-monotonic rule removal processor with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented such that it always occurs at a strongly monotonic position in a (P,Q,R)-chain. 209.69/54.11 209.69/54.11 209.69/54.11 Strictly oriented rules of the TRS R: 209.69/54.11 209.69/54.11 pred_in_ga(0) -> pred_out_ga(0, 0) 209.69/54.11 209.69/54.11 Used ordering: Polynomial interpretation [POLO]: 209.69/54.11 209.69/54.11 POL(0) = 1 209.69/54.11 POL(HALF_IN_GA(x_1)) = 0 209.69/54.11 POL(U1_ga(x_1, x_2)) = 2*x_2 209.69/54.11 POL(U4_GA(x_1, x_2)) = 2*x_2 209.69/54.11 POL(U5_GA(x_1, x_2)) = x_2 209.69/54.11 POL(pred_in_ga(x_1)) = 2*x_1 209.69/54.11 POL(pred_out_ga(x_1, x_2)) = x_2 209.69/54.11 POL(s(x_1)) = 0 209.69/54.11 209.69/54.11 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (33) 209.69/54.11 Obligation: 209.69/54.11 Q DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 U4_GA(X, pred_out_ga(s(s(X)), Y)) -> U5_GA(X, pred_in_ga(Y)) 209.69/54.11 U5_GA(X, pred_out_ga(Y, Z)) -> HALF_IN_GA(Z) 209.69/54.11 HALF_IN_GA(s(s(X))) -> U4_GA(X, U1_ga(X, pred_in_ga(s(X)))) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 pred_in_ga(s(s(X))) -> U1_ga(X, pred_in_ga(s(X))) 209.69/54.11 U1_ga(X, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 209.69/54.11 The set Q consists of the following terms: 209.69/54.11 209.69/54.11 pred_in_ga(x0) 209.69/54.11 U1_ga(x0, x1) 209.69/54.11 209.69/54.11 We have to consider all (P,Q,R)-chains. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (34) QDPQMonotonicMRRProof (EQUIVALENT) 209.69/54.11 By using the Q-monotonic rule removal processor with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented such that it always occurs at a strongly monotonic position in a (P,Q,R)-chain. 209.69/54.11 209.69/54.11 Strictly oriented dependency pairs: 209.69/54.11 209.69/54.11 HALF_IN_GA(s(s(X))) -> U4_GA(X, U1_ga(X, pred_in_ga(s(X)))) 209.69/54.11 209.69/54.11 209.69/54.11 Used ordering: Polynomial interpretation [POLO]: 209.69/54.11 209.69/54.11 POL(HALF_IN_GA(x_1)) = 2 + 2*x_1 209.69/54.11 POL(U1_ga(x_1, x_2)) = 2*x_2 209.69/54.11 POL(U4_GA(x_1, x_2)) = 0 209.69/54.11 POL(U5_GA(x_1, x_2)) = x_2 209.69/54.11 POL(pred_in_ga(x_1)) = 0 209.69/54.11 POL(pred_out_ga(x_1, x_2)) = 2 + 2*x_2 209.69/54.11 POL(s(x_1)) = 1 + x_1 209.69/54.11 209.69/54.11 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (35) 209.69/54.11 Obligation: 209.69/54.11 Q DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 U4_GA(X, pred_out_ga(s(s(X)), Y)) -> U5_GA(X, pred_in_ga(Y)) 209.69/54.11 U5_GA(X, pred_out_ga(Y, Z)) -> HALF_IN_GA(Z) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 pred_in_ga(s(s(X))) -> U1_ga(X, pred_in_ga(s(X))) 209.69/54.11 U1_ga(X, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 209.69/54.11 The set Q consists of the following terms: 209.69/54.11 209.69/54.11 pred_in_ga(x0) 209.69/54.11 U1_ga(x0, x1) 209.69/54.11 209.69/54.11 We have to consider all (P,Q,R)-chains. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (36) DependencyGraphProof (EQUIVALENT) 209.69/54.11 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 2 less nodes. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (37) 209.69/54.11 TRUE 209.69/54.11 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (38) 209.69/54.11 Obligation: 209.69/54.11 Pi DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 U7_G(X, half_out_ga(s(X), Y)) -> U8_G(X, double_in_ga(Y, Z)) 209.69/54.11 U8_G(X, double_out_ga(Y, Z)) -> F_IN_G(Z) 209.69/54.11 F_IN_G(s(X)) -> U7_G(X, half_in_ga(s(X), Y)) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 f_in_g(s(X)) -> U7_g(X, half_in_ga(s(X), Y)) 209.69/54.11 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.11 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.11 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.11 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.11 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.11 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.11 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.11 U7_g(X, half_out_ga(s(X), Y)) -> U8_g(X, double_in_ga(Y, Z)) 209.69/54.11 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.11 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.11 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.11 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.11 U8_g(X, double_out_ga(Y, Z)) -> U9_g(X, f_in_g(Z)) 209.69/54.11 U9_g(X, f_out_g(Z)) -> f_out_g(s(X)) 209.69/54.11 209.69/54.11 The argument filtering Pi contains the following mapping: 209.69/54.11 f_in_g(x1) = f_in_g(x1) 209.69/54.11 209.69/54.11 s(x1) = s(x1) 209.69/54.11 209.69/54.11 U7_g(x1, x2) = U7_g(x1, x2) 209.69/54.11 209.69/54.11 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.11 209.69/54.11 0 = 0 209.69/54.11 209.69/54.11 half_out_ga(x1, x2) = half_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U4_ga(x1, x2, x3) = U4_ga(x1, x3) 209.69/54.11 209.69/54.11 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.11 209.69/54.11 pred_out_ga(x1, x2) = pred_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U1_ga(x1, x2, x3) = U1_ga(x1, x3) 209.69/54.11 209.69/54.11 U5_ga(x1, x2, x3) = U5_ga(x1, x3) 209.69/54.11 209.69/54.11 U6_ga(x1, x2, x3) = U6_ga(x1, x3) 209.69/54.11 209.69/54.11 U8_g(x1, x2) = U8_g(x1, x2) 209.69/54.11 209.69/54.11 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.11 209.69/54.11 double_out_ga(x1, x2) = double_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U2_ga(x1, x2, x3) = U2_ga(x1, x3) 209.69/54.11 209.69/54.11 U3_ga(x1, x2, x3) = U3_ga(x1, x3) 209.69/54.11 209.69/54.11 U9_g(x1, x2) = U9_g(x1, x2) 209.69/54.11 209.69/54.11 f_out_g(x1) = f_out_g(x1) 209.69/54.11 209.69/54.11 F_IN_G(x1) = F_IN_G(x1) 209.69/54.11 209.69/54.11 U7_G(x1, x2) = U7_G(x1, x2) 209.69/54.11 209.69/54.11 U8_G(x1, x2) = U8_G(x1, x2) 209.69/54.11 209.69/54.11 209.69/54.11 We have to consider all (P,R,Pi)-chains 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (39) UsableRulesProof (EQUIVALENT) 209.69/54.11 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (40) 209.69/54.11 Obligation: 209.69/54.11 Pi DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 U7_G(X, half_out_ga(s(X), Y)) -> U8_G(X, double_in_ga(Y, Z)) 209.69/54.11 U8_G(X, double_out_ga(Y, Z)) -> F_IN_G(Z) 209.69/54.11 F_IN_G(s(X)) -> U7_G(X, half_in_ga(s(X), Y)) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.11 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.11 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.11 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.11 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.11 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.11 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.11 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.11 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.11 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.11 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.11 209.69/54.11 The argument filtering Pi contains the following mapping: 209.69/54.11 s(x1) = s(x1) 209.69/54.11 209.69/54.11 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.11 209.69/54.11 0 = 0 209.69/54.11 209.69/54.11 half_out_ga(x1, x2) = half_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U4_ga(x1, x2, x3) = U4_ga(x1, x3) 209.69/54.11 209.69/54.11 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.11 209.69/54.11 pred_out_ga(x1, x2) = pred_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U1_ga(x1, x2, x3) = U1_ga(x1, x3) 209.69/54.11 209.69/54.11 U5_ga(x1, x2, x3) = U5_ga(x1, x3) 209.69/54.11 209.69/54.11 U6_ga(x1, x2, x3) = U6_ga(x1, x3) 209.69/54.11 209.69/54.11 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.11 209.69/54.11 double_out_ga(x1, x2) = double_out_ga(x1, x2) 209.69/54.11 209.69/54.11 U2_ga(x1, x2, x3) = U2_ga(x1, x3) 209.69/54.11 209.69/54.11 U3_ga(x1, x2, x3) = U3_ga(x1, x3) 209.69/54.11 209.69/54.11 F_IN_G(x1) = F_IN_G(x1) 209.69/54.11 209.69/54.11 U7_G(x1, x2) = U7_G(x1, x2) 209.69/54.11 209.69/54.11 U8_G(x1, x2) = U8_G(x1, x2) 209.69/54.11 209.69/54.11 209.69/54.11 We have to consider all (P,R,Pi)-chains 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (41) PiDPToQDPProof (SOUND) 209.69/54.11 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (42) 209.69/54.11 Obligation: 209.69/54.11 Q DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 U7_G(X, half_out_ga(s(X), Y)) -> U8_G(X, double_in_ga(Y)) 209.69/54.11 U8_G(X, double_out_ga(Y, Z)) -> F_IN_G(Z) 209.69/54.11 F_IN_G(s(X)) -> U7_G(X, half_in_ga(s(X))) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 double_in_ga(0) -> double_out_ga(0, 0) 209.69/54.11 double_in_ga(s(X)) -> U2_ga(X, pred_in_ga(s(X))) 209.69/54.11 half_in_ga(s(s(X))) -> U4_ga(X, pred_in_ga(s(s(X)))) 209.69/54.11 U2_ga(X, pred_out_ga(s(X), Z)) -> U3_ga(X, double_in_ga(Z)) 209.69/54.11 U4_ga(X, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, pred_in_ga(Y)) 209.69/54.11 pred_in_ga(s(0)) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X))) -> U1_ga(X, pred_in_ga(s(X))) 209.69/54.11 U3_ga(X, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.11 U5_ga(X, pred_out_ga(Y, Z)) -> U6_ga(X, half_in_ga(Z)) 209.69/54.11 U1_ga(X, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 pred_in_ga(0) -> pred_out_ga(0, 0) 209.69/54.11 U6_ga(X, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.11 half_in_ga(0) -> half_out_ga(0, 0) 209.69/54.11 209.69/54.11 The set Q consists of the following terms: 209.69/54.11 209.69/54.11 double_in_ga(x0) 209.69/54.11 half_in_ga(x0) 209.69/54.11 U2_ga(x0, x1) 209.69/54.11 U4_ga(x0, x1) 209.69/54.11 pred_in_ga(x0) 209.69/54.11 U3_ga(x0, x1) 209.69/54.11 U5_ga(x0, x1) 209.69/54.11 U1_ga(x0, x1) 209.69/54.11 U6_ga(x0, x1) 209.69/54.11 209.69/54.11 We have to consider all (P,Q,R)-chains. 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (43) PrologToPiTRSProof (SOUND) 209.69/54.11 We use the technique of [TOCL09]. With regard to the inferred argument filtering the predicates were used in the following modes: 209.69/54.11 209.69/54.11 f_in_1: (b) 209.69/54.11 209.69/54.11 half_in_2: (b,f) 209.69/54.11 209.69/54.11 pred_in_2: (b,f) 209.69/54.11 209.69/54.11 double_in_2: (b,f) 209.69/54.11 209.69/54.11 Transforming Prolog into the following Term Rewriting System: 209.69/54.11 209.69/54.11 Pi-finite rewrite system: 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 f_in_g(s(X)) -> U7_g(X, half_in_ga(s(X), Y)) 209.69/54.11 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.11 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.11 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.11 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.11 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.11 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.11 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.11 U7_g(X, half_out_ga(s(X), Y)) -> U8_g(X, double_in_ga(Y, Z)) 209.69/54.11 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.11 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.11 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.11 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.11 U8_g(X, double_out_ga(Y, Z)) -> U9_g(X, f_in_g(Z)) 209.69/54.11 U9_g(X, f_out_g(Z)) -> f_out_g(s(X)) 209.69/54.11 209.69/54.11 The argument filtering Pi contains the following mapping: 209.69/54.11 f_in_g(x1) = f_in_g(x1) 209.69/54.11 209.69/54.11 s(x1) = s(x1) 209.69/54.11 209.69/54.11 U7_g(x1, x2) = U7_g(x2) 209.69/54.11 209.69/54.11 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.11 209.69/54.11 0 = 0 209.69/54.11 209.69/54.11 half_out_ga(x1, x2) = half_out_ga(x2) 209.69/54.11 209.69/54.11 U4_ga(x1, x2, x3) = U4_ga(x3) 209.69/54.11 209.69/54.11 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.11 209.69/54.11 pred_out_ga(x1, x2) = pred_out_ga(x2) 209.69/54.11 209.69/54.11 U1_ga(x1, x2, x3) = U1_ga(x3) 209.69/54.11 209.69/54.11 U5_ga(x1, x2, x3) = U5_ga(x3) 209.69/54.11 209.69/54.11 U6_ga(x1, x2, x3) = U6_ga(x3) 209.69/54.11 209.69/54.11 U8_g(x1, x2) = U8_g(x2) 209.69/54.11 209.69/54.11 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.11 209.69/54.11 double_out_ga(x1, x2) = double_out_ga(x2) 209.69/54.11 209.69/54.11 U2_ga(x1, x2, x3) = U2_ga(x3) 209.69/54.11 209.69/54.11 U3_ga(x1, x2, x3) = U3_ga(x3) 209.69/54.11 209.69/54.11 U9_g(x1, x2) = U9_g(x2) 209.69/54.11 209.69/54.11 f_out_g(x1) = f_out_g 209.69/54.11 209.69/54.11 209.69/54.11 209.69/54.11 209.69/54.11 209.69/54.11 Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog 209.69/54.11 209.69/54.11 209.69/54.11 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (44) 209.69/54.11 Obligation: 209.69/54.11 Pi-finite rewrite system: 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 f_in_g(s(X)) -> U7_g(X, half_in_ga(s(X), Y)) 209.69/54.11 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.11 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.11 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.11 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.11 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.11 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.11 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.11 U7_g(X, half_out_ga(s(X), Y)) -> U8_g(X, double_in_ga(Y, Z)) 209.69/54.11 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.11 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.11 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.11 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.11 U8_g(X, double_out_ga(Y, Z)) -> U9_g(X, f_in_g(Z)) 209.69/54.11 U9_g(X, f_out_g(Z)) -> f_out_g(s(X)) 209.69/54.11 209.69/54.11 The argument filtering Pi contains the following mapping: 209.69/54.11 f_in_g(x1) = f_in_g(x1) 209.69/54.11 209.69/54.11 s(x1) = s(x1) 209.69/54.11 209.69/54.11 U7_g(x1, x2) = U7_g(x2) 209.69/54.11 209.69/54.11 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.11 209.69/54.11 0 = 0 209.69/54.11 209.69/54.11 half_out_ga(x1, x2) = half_out_ga(x2) 209.69/54.11 209.69/54.11 U4_ga(x1, x2, x3) = U4_ga(x3) 209.69/54.11 209.69/54.11 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.11 209.69/54.11 pred_out_ga(x1, x2) = pred_out_ga(x2) 209.69/54.11 209.69/54.11 U1_ga(x1, x2, x3) = U1_ga(x3) 209.69/54.11 209.69/54.11 U5_ga(x1, x2, x3) = U5_ga(x3) 209.69/54.11 209.69/54.11 U6_ga(x1, x2, x3) = U6_ga(x3) 209.69/54.11 209.69/54.11 U8_g(x1, x2) = U8_g(x2) 209.69/54.11 209.69/54.11 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.11 209.69/54.11 double_out_ga(x1, x2) = double_out_ga(x2) 209.69/54.11 209.69/54.11 U2_ga(x1, x2, x3) = U2_ga(x3) 209.69/54.11 209.69/54.11 U3_ga(x1, x2, x3) = U3_ga(x3) 209.69/54.11 209.69/54.11 U9_g(x1, x2) = U9_g(x2) 209.69/54.11 209.69/54.11 f_out_g(x1) = f_out_g 209.69/54.11 209.69/54.11 209.69/54.11 209.69/54.11 ---------------------------------------- 209.69/54.11 209.69/54.11 (45) DependencyPairsProof (EQUIVALENT) 209.69/54.11 Using Dependency Pairs [AG00,LOPSTR] we result in the following initial DP problem: 209.69/54.11 Pi DP problem: 209.69/54.11 The TRS P consists of the following rules: 209.69/54.11 209.69/54.11 F_IN_G(s(X)) -> U7_G(X, half_in_ga(s(X), Y)) 209.69/54.11 F_IN_G(s(X)) -> HALF_IN_GA(s(X), Y) 209.69/54.11 HALF_IN_GA(s(s(X)), s(U)) -> U4_GA(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.11 HALF_IN_GA(s(s(X)), s(U)) -> PRED_IN_GA(s(s(X)), Y) 209.69/54.11 PRED_IN_GA(s(s(X)), s(Y)) -> U1_GA(X, Y, pred_in_ga(s(X), Y)) 209.69/54.11 PRED_IN_GA(s(s(X)), s(Y)) -> PRED_IN_GA(s(X), Y) 209.69/54.11 U4_GA(X, U, pred_out_ga(s(s(X)), Y)) -> U5_GA(X, U, pred_in_ga(Y, Z)) 209.69/54.11 U4_GA(X, U, pred_out_ga(s(s(X)), Y)) -> PRED_IN_GA(Y, Z) 209.69/54.11 U5_GA(X, U, pred_out_ga(Y, Z)) -> U6_GA(X, U, half_in_ga(Z, U)) 209.69/54.11 U5_GA(X, U, pred_out_ga(Y, Z)) -> HALF_IN_GA(Z, U) 209.69/54.11 U7_G(X, half_out_ga(s(X), Y)) -> U8_G(X, double_in_ga(Y, Z)) 209.69/54.11 U7_G(X, half_out_ga(s(X), Y)) -> DOUBLE_IN_GA(Y, Z) 209.69/54.11 DOUBLE_IN_GA(s(X), s(s(Y))) -> U2_GA(X, Y, pred_in_ga(s(X), Z)) 209.69/54.11 DOUBLE_IN_GA(s(X), s(s(Y))) -> PRED_IN_GA(s(X), Z) 209.69/54.11 U2_GA(X, Y, pred_out_ga(s(X), Z)) -> U3_GA(X, Y, double_in_ga(Z, Y)) 209.69/54.11 U2_GA(X, Y, pred_out_ga(s(X), Z)) -> DOUBLE_IN_GA(Z, Y) 209.69/54.11 U8_G(X, double_out_ga(Y, Z)) -> U9_G(X, f_in_g(Z)) 209.69/54.11 U8_G(X, double_out_ga(Y, Z)) -> F_IN_G(Z) 209.69/54.11 209.69/54.11 The TRS R consists of the following rules: 209.69/54.11 209.69/54.11 f_in_g(s(X)) -> U7_g(X, half_in_ga(s(X), Y)) 209.69/54.11 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.11 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.11 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.11 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.11 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.11 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.11 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.11 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.11 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.11 U7_g(X, half_out_ga(s(X), Y)) -> U8_g(X, double_in_ga(Y, Z)) 209.69/54.11 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.12 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.12 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.12 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.12 U8_g(X, double_out_ga(Y, Z)) -> U9_g(X, f_in_g(Z)) 209.69/54.12 U9_g(X, f_out_g(Z)) -> f_out_g(s(X)) 209.69/54.12 209.69/54.12 The argument filtering Pi contains the following mapping: 209.69/54.12 f_in_g(x1) = f_in_g(x1) 209.69/54.12 209.69/54.12 s(x1) = s(x1) 209.69/54.12 209.69/54.12 U7_g(x1, x2) = U7_g(x2) 209.69/54.12 209.69/54.12 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.12 209.69/54.12 0 = 0 209.69/54.12 209.69/54.12 half_out_ga(x1, x2) = half_out_ga(x2) 209.69/54.12 209.69/54.12 U4_ga(x1, x2, x3) = U4_ga(x3) 209.69/54.12 209.69/54.12 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.12 209.69/54.12 pred_out_ga(x1, x2) = pred_out_ga(x2) 209.69/54.12 209.69/54.12 U1_ga(x1, x2, x3) = U1_ga(x3) 209.69/54.12 209.69/54.12 U5_ga(x1, x2, x3) = U5_ga(x3) 209.69/54.12 209.69/54.12 U6_ga(x1, x2, x3) = U6_ga(x3) 209.69/54.12 209.69/54.12 U8_g(x1, x2) = U8_g(x2) 209.69/54.12 209.69/54.12 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.12 209.69/54.12 double_out_ga(x1, x2) = double_out_ga(x2) 209.69/54.12 209.69/54.12 U2_ga(x1, x2, x3) = U2_ga(x3) 209.69/54.12 209.69/54.12 U3_ga(x1, x2, x3) = U3_ga(x3) 209.69/54.12 209.69/54.12 U9_g(x1, x2) = U9_g(x2) 209.69/54.12 209.69/54.12 f_out_g(x1) = f_out_g 209.69/54.12 209.69/54.12 F_IN_G(x1) = F_IN_G(x1) 209.69/54.12 209.69/54.12 U7_G(x1, x2) = U7_G(x2) 209.69/54.12 209.69/54.12 HALF_IN_GA(x1, x2) = HALF_IN_GA(x1) 209.69/54.12 209.69/54.12 U4_GA(x1, x2, x3) = U4_GA(x3) 209.69/54.12 209.69/54.12 PRED_IN_GA(x1, x2) = PRED_IN_GA(x1) 209.69/54.12 209.69/54.12 U1_GA(x1, x2, x3) = U1_GA(x3) 209.69/54.12 209.69/54.12 U5_GA(x1, x2, x3) = U5_GA(x3) 209.69/54.12 209.69/54.12 U6_GA(x1, x2, x3) = U6_GA(x3) 209.69/54.12 209.69/54.12 U8_G(x1, x2) = U8_G(x2) 209.69/54.12 209.69/54.12 DOUBLE_IN_GA(x1, x2) = DOUBLE_IN_GA(x1) 209.69/54.12 209.69/54.12 U2_GA(x1, x2, x3) = U2_GA(x3) 209.69/54.12 209.69/54.12 U3_GA(x1, x2, x3) = U3_GA(x3) 209.69/54.12 209.69/54.12 U9_G(x1, x2) = U9_G(x2) 209.69/54.12 209.69/54.12 209.69/54.12 We have to consider all (P,R,Pi)-chains 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (46) 209.69/54.12 Obligation: 209.69/54.12 Pi DP problem: 209.69/54.12 The TRS P consists of the following rules: 209.69/54.12 209.69/54.12 F_IN_G(s(X)) -> U7_G(X, half_in_ga(s(X), Y)) 209.69/54.12 F_IN_G(s(X)) -> HALF_IN_GA(s(X), Y) 209.69/54.12 HALF_IN_GA(s(s(X)), s(U)) -> U4_GA(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.12 HALF_IN_GA(s(s(X)), s(U)) -> PRED_IN_GA(s(s(X)), Y) 209.69/54.12 PRED_IN_GA(s(s(X)), s(Y)) -> U1_GA(X, Y, pred_in_ga(s(X), Y)) 209.69/54.12 PRED_IN_GA(s(s(X)), s(Y)) -> PRED_IN_GA(s(X), Y) 209.69/54.12 U4_GA(X, U, pred_out_ga(s(s(X)), Y)) -> U5_GA(X, U, pred_in_ga(Y, Z)) 209.69/54.12 U4_GA(X, U, pred_out_ga(s(s(X)), Y)) -> PRED_IN_GA(Y, Z) 209.69/54.12 U5_GA(X, U, pred_out_ga(Y, Z)) -> U6_GA(X, U, half_in_ga(Z, U)) 209.69/54.12 U5_GA(X, U, pred_out_ga(Y, Z)) -> HALF_IN_GA(Z, U) 209.69/54.12 U7_G(X, half_out_ga(s(X), Y)) -> U8_G(X, double_in_ga(Y, Z)) 209.69/54.12 U7_G(X, half_out_ga(s(X), Y)) -> DOUBLE_IN_GA(Y, Z) 209.69/54.12 DOUBLE_IN_GA(s(X), s(s(Y))) -> U2_GA(X, Y, pred_in_ga(s(X), Z)) 209.69/54.12 DOUBLE_IN_GA(s(X), s(s(Y))) -> PRED_IN_GA(s(X), Z) 209.69/54.12 U2_GA(X, Y, pred_out_ga(s(X), Z)) -> U3_GA(X, Y, double_in_ga(Z, Y)) 209.69/54.12 U2_GA(X, Y, pred_out_ga(s(X), Z)) -> DOUBLE_IN_GA(Z, Y) 209.69/54.12 U8_G(X, double_out_ga(Y, Z)) -> U9_G(X, f_in_g(Z)) 209.69/54.12 U8_G(X, double_out_ga(Y, Z)) -> F_IN_G(Z) 209.69/54.12 209.69/54.12 The TRS R consists of the following rules: 209.69/54.12 209.69/54.12 f_in_g(s(X)) -> U7_g(X, half_in_ga(s(X), Y)) 209.69/54.12 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.12 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.12 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.12 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.12 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.12 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.12 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.12 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.12 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.12 U7_g(X, half_out_ga(s(X), Y)) -> U8_g(X, double_in_ga(Y, Z)) 209.69/54.12 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.12 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.12 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.12 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.12 U8_g(X, double_out_ga(Y, Z)) -> U9_g(X, f_in_g(Z)) 209.69/54.12 U9_g(X, f_out_g(Z)) -> f_out_g(s(X)) 209.69/54.12 209.69/54.12 The argument filtering Pi contains the following mapping: 209.69/54.12 f_in_g(x1) = f_in_g(x1) 209.69/54.12 209.69/54.12 s(x1) = s(x1) 209.69/54.12 209.69/54.12 U7_g(x1, x2) = U7_g(x2) 209.69/54.12 209.69/54.12 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.12 209.69/54.12 0 = 0 209.69/54.12 209.69/54.12 half_out_ga(x1, x2) = half_out_ga(x2) 209.69/54.12 209.69/54.12 U4_ga(x1, x2, x3) = U4_ga(x3) 209.69/54.12 209.69/54.12 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.12 209.69/54.12 pred_out_ga(x1, x2) = pred_out_ga(x2) 209.69/54.12 209.69/54.12 U1_ga(x1, x2, x3) = U1_ga(x3) 209.69/54.12 209.69/54.12 U5_ga(x1, x2, x3) = U5_ga(x3) 209.69/54.12 209.69/54.12 U6_ga(x1, x2, x3) = U6_ga(x3) 209.69/54.12 209.69/54.12 U8_g(x1, x2) = U8_g(x2) 209.69/54.12 209.69/54.12 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.12 209.69/54.12 double_out_ga(x1, x2) = double_out_ga(x2) 209.69/54.12 209.69/54.12 U2_ga(x1, x2, x3) = U2_ga(x3) 209.69/54.12 209.69/54.12 U3_ga(x1, x2, x3) = U3_ga(x3) 209.69/54.12 209.69/54.12 U9_g(x1, x2) = U9_g(x2) 209.69/54.12 209.69/54.12 f_out_g(x1) = f_out_g 209.69/54.12 209.69/54.12 F_IN_G(x1) = F_IN_G(x1) 209.69/54.12 209.69/54.12 U7_G(x1, x2) = U7_G(x2) 209.69/54.12 209.69/54.12 HALF_IN_GA(x1, x2) = HALF_IN_GA(x1) 209.69/54.12 209.69/54.12 U4_GA(x1, x2, x3) = U4_GA(x3) 209.69/54.12 209.69/54.12 PRED_IN_GA(x1, x2) = PRED_IN_GA(x1) 209.69/54.12 209.69/54.12 U1_GA(x1, x2, x3) = U1_GA(x3) 209.69/54.12 209.69/54.12 U5_GA(x1, x2, x3) = U5_GA(x3) 209.69/54.12 209.69/54.12 U6_GA(x1, x2, x3) = U6_GA(x3) 209.69/54.12 209.69/54.12 U8_G(x1, x2) = U8_G(x2) 209.69/54.12 209.69/54.12 DOUBLE_IN_GA(x1, x2) = DOUBLE_IN_GA(x1) 209.69/54.12 209.69/54.12 U2_GA(x1, x2, x3) = U2_GA(x3) 209.69/54.12 209.69/54.12 U3_GA(x1, x2, x3) = U3_GA(x3) 209.69/54.12 209.69/54.12 U9_G(x1, x2) = U9_G(x2) 209.69/54.12 209.69/54.12 209.69/54.12 We have to consider all (P,R,Pi)-chains 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (47) DependencyGraphProof (EQUIVALENT) 209.69/54.12 The approximation of the Dependency Graph [LOPSTR] contains 4 SCCs with 9 less nodes. 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (48) 209.69/54.12 Complex Obligation (AND) 209.69/54.12 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (49) 209.69/54.12 Obligation: 209.69/54.12 Pi DP problem: 209.69/54.12 The TRS P consists of the following rules: 209.69/54.12 209.69/54.12 PRED_IN_GA(s(s(X)), s(Y)) -> PRED_IN_GA(s(X), Y) 209.69/54.12 209.69/54.12 The TRS R consists of the following rules: 209.69/54.12 209.69/54.12 f_in_g(s(X)) -> U7_g(X, half_in_ga(s(X), Y)) 209.69/54.12 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.12 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.12 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.12 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.12 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.12 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.12 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.12 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.12 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.12 U7_g(X, half_out_ga(s(X), Y)) -> U8_g(X, double_in_ga(Y, Z)) 209.69/54.12 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.12 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.12 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.12 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.12 U8_g(X, double_out_ga(Y, Z)) -> U9_g(X, f_in_g(Z)) 209.69/54.12 U9_g(X, f_out_g(Z)) -> f_out_g(s(X)) 209.69/54.12 209.69/54.12 The argument filtering Pi contains the following mapping: 209.69/54.12 f_in_g(x1) = f_in_g(x1) 209.69/54.12 209.69/54.12 s(x1) = s(x1) 209.69/54.12 209.69/54.12 U7_g(x1, x2) = U7_g(x2) 209.69/54.12 209.69/54.12 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.12 209.69/54.12 0 = 0 209.69/54.12 209.69/54.12 half_out_ga(x1, x2) = half_out_ga(x2) 209.69/54.12 209.69/54.12 U4_ga(x1, x2, x3) = U4_ga(x3) 209.69/54.12 209.69/54.12 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.12 209.69/54.12 pred_out_ga(x1, x2) = pred_out_ga(x2) 209.69/54.12 209.69/54.12 U1_ga(x1, x2, x3) = U1_ga(x3) 209.69/54.12 209.69/54.12 U5_ga(x1, x2, x3) = U5_ga(x3) 209.69/54.12 209.69/54.12 U6_ga(x1, x2, x3) = U6_ga(x3) 209.69/54.12 209.69/54.12 U8_g(x1, x2) = U8_g(x2) 209.69/54.12 209.69/54.12 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.12 209.69/54.12 double_out_ga(x1, x2) = double_out_ga(x2) 209.69/54.12 209.69/54.12 U2_ga(x1, x2, x3) = U2_ga(x3) 209.69/54.12 209.69/54.12 U3_ga(x1, x2, x3) = U3_ga(x3) 209.69/54.12 209.69/54.12 U9_g(x1, x2) = U9_g(x2) 209.69/54.12 209.69/54.12 f_out_g(x1) = f_out_g 209.69/54.12 209.69/54.12 PRED_IN_GA(x1, x2) = PRED_IN_GA(x1) 209.69/54.12 209.69/54.12 209.69/54.12 We have to consider all (P,R,Pi)-chains 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (50) UsableRulesProof (EQUIVALENT) 209.69/54.12 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (51) 209.69/54.12 Obligation: 209.69/54.12 Pi DP problem: 209.69/54.12 The TRS P consists of the following rules: 209.69/54.12 209.69/54.12 PRED_IN_GA(s(s(X)), s(Y)) -> PRED_IN_GA(s(X), Y) 209.69/54.12 209.69/54.12 R is empty. 209.69/54.12 The argument filtering Pi contains the following mapping: 209.69/54.12 s(x1) = s(x1) 209.69/54.12 209.69/54.12 PRED_IN_GA(x1, x2) = PRED_IN_GA(x1) 209.69/54.12 209.69/54.12 209.69/54.12 We have to consider all (P,R,Pi)-chains 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (52) PiDPToQDPProof (SOUND) 209.69/54.12 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (53) 209.69/54.12 Obligation: 209.69/54.12 Q DP problem: 209.69/54.12 The TRS P consists of the following rules: 209.69/54.12 209.69/54.12 PRED_IN_GA(s(s(X))) -> PRED_IN_GA(s(X)) 209.69/54.12 209.69/54.12 R is empty. 209.69/54.12 Q is empty. 209.69/54.12 We have to consider all (P,Q,R)-chains. 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (54) QDPSizeChangeProof (EQUIVALENT) 209.69/54.12 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. 209.69/54.12 209.69/54.12 From the DPs we obtained the following set of size-change graphs: 209.69/54.12 *PRED_IN_GA(s(s(X))) -> PRED_IN_GA(s(X)) 209.69/54.12 The graph contains the following edges 1 > 1 209.69/54.12 209.69/54.12 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (55) 209.69/54.12 YES 209.69/54.12 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (56) 209.69/54.12 Obligation: 209.69/54.12 Pi DP problem: 209.69/54.12 The TRS P consists of the following rules: 209.69/54.12 209.69/54.12 DOUBLE_IN_GA(s(X), s(s(Y))) -> U2_GA(X, Y, pred_in_ga(s(X), Z)) 209.69/54.12 U2_GA(X, Y, pred_out_ga(s(X), Z)) -> DOUBLE_IN_GA(Z, Y) 209.69/54.12 209.69/54.12 The TRS R consists of the following rules: 209.69/54.12 209.69/54.12 f_in_g(s(X)) -> U7_g(X, half_in_ga(s(X), Y)) 209.69/54.12 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.12 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.12 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.12 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.12 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.12 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.12 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.12 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.12 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.12 U7_g(X, half_out_ga(s(X), Y)) -> U8_g(X, double_in_ga(Y, Z)) 209.69/54.12 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.12 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.12 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.12 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.12 U8_g(X, double_out_ga(Y, Z)) -> U9_g(X, f_in_g(Z)) 209.69/54.12 U9_g(X, f_out_g(Z)) -> f_out_g(s(X)) 209.69/54.12 209.69/54.12 The argument filtering Pi contains the following mapping: 209.69/54.12 f_in_g(x1) = f_in_g(x1) 209.69/54.12 209.69/54.12 s(x1) = s(x1) 209.69/54.12 209.69/54.12 U7_g(x1, x2) = U7_g(x2) 209.69/54.12 209.69/54.12 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.12 209.69/54.12 0 = 0 209.69/54.12 209.69/54.12 half_out_ga(x1, x2) = half_out_ga(x2) 209.69/54.12 209.69/54.12 U4_ga(x1, x2, x3) = U4_ga(x3) 209.69/54.12 209.69/54.12 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.12 209.69/54.12 pred_out_ga(x1, x2) = pred_out_ga(x2) 209.69/54.12 209.69/54.12 U1_ga(x1, x2, x3) = U1_ga(x3) 209.69/54.12 209.69/54.12 U5_ga(x1, x2, x3) = U5_ga(x3) 209.69/54.12 209.69/54.12 U6_ga(x1, x2, x3) = U6_ga(x3) 209.69/54.12 209.69/54.12 U8_g(x1, x2) = U8_g(x2) 209.69/54.12 209.69/54.12 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.12 209.69/54.12 double_out_ga(x1, x2) = double_out_ga(x2) 209.69/54.12 209.69/54.12 U2_ga(x1, x2, x3) = U2_ga(x3) 209.69/54.12 209.69/54.12 U3_ga(x1, x2, x3) = U3_ga(x3) 209.69/54.12 209.69/54.12 U9_g(x1, x2) = U9_g(x2) 209.69/54.12 209.69/54.12 f_out_g(x1) = f_out_g 209.69/54.12 209.69/54.12 DOUBLE_IN_GA(x1, x2) = DOUBLE_IN_GA(x1) 209.69/54.12 209.69/54.12 U2_GA(x1, x2, x3) = U2_GA(x3) 209.69/54.12 209.69/54.12 209.69/54.12 We have to consider all (P,R,Pi)-chains 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (57) UsableRulesProof (EQUIVALENT) 209.69/54.12 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (58) 209.69/54.12 Obligation: 209.69/54.12 Pi DP problem: 209.69/54.12 The TRS P consists of the following rules: 209.69/54.12 209.69/54.12 DOUBLE_IN_GA(s(X), s(s(Y))) -> U2_GA(X, Y, pred_in_ga(s(X), Z)) 209.69/54.12 U2_GA(X, Y, pred_out_ga(s(X), Z)) -> DOUBLE_IN_GA(Z, Y) 209.69/54.12 209.69/54.12 The TRS R consists of the following rules: 209.69/54.12 209.69/54.12 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.12 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.12 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.12 209.69/54.12 The argument filtering Pi contains the following mapping: 209.69/54.12 s(x1) = s(x1) 209.69/54.12 209.69/54.12 0 = 0 209.69/54.12 209.69/54.12 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.12 209.69/54.12 pred_out_ga(x1, x2) = pred_out_ga(x2) 209.69/54.12 209.69/54.12 U1_ga(x1, x2, x3) = U1_ga(x3) 209.69/54.12 209.69/54.12 DOUBLE_IN_GA(x1, x2) = DOUBLE_IN_GA(x1) 209.69/54.12 209.69/54.12 U2_GA(x1, x2, x3) = U2_GA(x3) 209.69/54.12 209.69/54.12 209.69/54.12 We have to consider all (P,R,Pi)-chains 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (59) PiDPToQDPProof (SOUND) 209.69/54.12 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (60) 209.69/54.12 Obligation: 209.69/54.12 Q DP problem: 209.69/54.12 The TRS P consists of the following rules: 209.69/54.12 209.69/54.12 DOUBLE_IN_GA(s(X)) -> U2_GA(pred_in_ga(s(X))) 209.69/54.12 U2_GA(pred_out_ga(Z)) -> DOUBLE_IN_GA(Z) 209.69/54.12 209.69/54.12 The TRS R consists of the following rules: 209.69/54.12 209.69/54.12 pred_in_ga(s(0)) -> pred_out_ga(0) 209.69/54.12 pred_in_ga(s(s(X))) -> U1_ga(pred_in_ga(s(X))) 209.69/54.12 U1_ga(pred_out_ga(Y)) -> pred_out_ga(s(Y)) 209.69/54.12 209.69/54.12 The set Q consists of the following terms: 209.69/54.12 209.69/54.12 pred_in_ga(x0) 209.69/54.12 U1_ga(x0) 209.69/54.12 209.69/54.12 We have to consider all (P,Q,R)-chains. 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (61) MRRProof (EQUIVALENT) 209.69/54.12 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. 209.69/54.12 209.69/54.12 Strictly oriented dependency pairs: 209.69/54.12 209.69/54.12 DOUBLE_IN_GA(s(X)) -> U2_GA(pred_in_ga(s(X))) 209.69/54.12 U2_GA(pred_out_ga(Z)) -> DOUBLE_IN_GA(Z) 209.69/54.12 209.69/54.12 Strictly oriented rules of the TRS R: 209.69/54.12 209.69/54.12 pred_in_ga(s(0)) -> pred_out_ga(0) 209.69/54.12 pred_in_ga(s(s(X))) -> U1_ga(pred_in_ga(s(X))) 209.69/54.12 U1_ga(pred_out_ga(Y)) -> pred_out_ga(s(Y)) 209.69/54.12 209.69/54.12 Used ordering: Knuth-Bendix order [KBO] with precedence:s_1 > pred_in_ga_1 > DOUBLE_IN_GA_1 > U1_ga_1 > pred_out_ga_1 > 0 > U2_GA_1 209.69/54.12 209.69/54.12 and weight map: 209.69/54.12 209.69/54.12 0=1 209.69/54.12 pred_in_ga_1=1 209.69/54.12 s_1=4 209.69/54.12 pred_out_ga_1=3 209.69/54.12 U1_ga_1=4 209.69/54.12 DOUBLE_IN_GA_1=3 209.69/54.12 U2_GA_1=1 209.69/54.12 209.69/54.12 The variable weight is 1 209.69/54.12 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (62) 209.69/54.12 Obligation: 209.69/54.12 Q DP problem: 209.69/54.12 P is empty. 209.69/54.12 R is empty. 209.69/54.12 The set Q consists of the following terms: 209.69/54.12 209.69/54.12 pred_in_ga(x0) 209.69/54.12 U1_ga(x0) 209.69/54.12 209.69/54.12 We have to consider all (P,Q,R)-chains. 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (63) PisEmptyProof (EQUIVALENT) 209.69/54.12 The TRS P is empty. Hence, there is no (P,Q,R) chain. 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (64) 209.69/54.12 YES 209.69/54.12 209.69/54.12 ---------------------------------------- 209.69/54.12 209.69/54.12 (65) 209.69/54.12 Obligation: 209.69/54.12 Pi DP problem: 209.69/54.12 The TRS P consists of the following rules: 209.69/54.12 209.69/54.12 U4_GA(X, U, pred_out_ga(s(s(X)), Y)) -> U5_GA(X, U, pred_in_ga(Y, Z)) 209.69/54.12 U5_GA(X, U, pred_out_ga(Y, Z)) -> HALF_IN_GA(Z, U) 209.69/54.12 HALF_IN_GA(s(s(X)), s(U)) -> U4_GA(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.12 209.69/54.12 The TRS R consists of the following rules: 209.69/54.12 209.69/54.12 f_in_g(s(X)) -> U7_g(X, half_in_ga(s(X), Y)) 209.69/54.12 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.12 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.12 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.12 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.12 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.12 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.12 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.12 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.12 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.12 U7_g(X, half_out_ga(s(X), Y)) -> U8_g(X, double_in_ga(Y, Z)) 209.69/54.12 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.12 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.12 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.12 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.12 U8_g(X, double_out_ga(Y, Z)) -> U9_g(X, f_in_g(Z)) 209.69/54.12 U9_g(X, f_out_g(Z)) -> f_out_g(s(X)) 209.69/54.12 209.69/54.12 The argument filtering Pi contains the following mapping: 209.69/54.12 f_in_g(x1) = f_in_g(x1) 209.69/54.12 209.69/54.12 s(x1) = s(x1) 209.69/54.12 209.69/54.12 U7_g(x1, x2) = U7_g(x2) 209.69/54.12 209.69/54.12 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.12 209.69/54.12 0 = 0 209.69/54.12 209.69/54.12 half_out_ga(x1, x2) = half_out_ga(x2) 209.69/54.12 209.69/54.12 U4_ga(x1, x2, x3) = U4_ga(x3) 209.69/54.12 209.69/54.12 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.12 209.69/54.12 pred_out_ga(x1, x2) = pred_out_ga(x2) 209.69/54.12 209.69/54.12 U1_ga(x1, x2, x3) = U1_ga(x3) 209.69/54.12 209.69/54.12 U5_ga(x1, x2, x3) = U5_ga(x3) 209.69/54.12 209.69/54.12 U6_ga(x1, x2, x3) = U6_ga(x3) 209.69/54.12 209.69/54.12 U8_g(x1, x2) = U8_g(x2) 209.69/54.12 209.69/54.12 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.12 209.69/54.12 double_out_ga(x1, x2) = double_out_ga(x2) 209.69/54.12 209.69/54.12 U2_ga(x1, x2, x3) = U2_ga(x3) 209.69/54.12 209.69/54.12 U3_ga(x1, x2, x3) = U3_ga(x3) 209.69/54.12 209.69/54.12 U9_g(x1, x2) = U9_g(x2) 209.69/54.12 209.69/54.12 f_out_g(x1) = f_out_g 209.69/54.12 209.69/54.12 HALF_IN_GA(x1, x2) = HALF_IN_GA(x1) 209.69/54.13 209.69/54.13 U4_GA(x1, x2, x3) = U4_GA(x3) 209.69/54.13 209.69/54.13 U5_GA(x1, x2, x3) = U5_GA(x3) 209.69/54.13 209.69/54.13 209.69/54.13 We have to consider all (P,R,Pi)-chains 209.69/54.13 ---------------------------------------- 209.69/54.13 209.69/54.13 (66) UsableRulesProof (EQUIVALENT) 209.69/54.13 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 209.69/54.13 ---------------------------------------- 209.69/54.13 209.69/54.13 (67) 209.69/54.13 Obligation: 209.69/54.13 Pi DP problem: 209.69/54.13 The TRS P consists of the following rules: 209.69/54.13 209.69/54.13 U4_GA(X, U, pred_out_ga(s(s(X)), Y)) -> U5_GA(X, U, pred_in_ga(Y, Z)) 209.69/54.13 U5_GA(X, U, pred_out_ga(Y, Z)) -> HALF_IN_GA(Z, U) 209.69/54.13 HALF_IN_GA(s(s(X)), s(U)) -> U4_GA(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.13 209.69/54.13 The TRS R consists of the following rules: 209.69/54.13 209.69/54.13 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.13 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.13 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.13 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.13 209.69/54.13 The argument filtering Pi contains the following mapping: 209.69/54.13 s(x1) = s(x1) 209.69/54.13 209.69/54.13 0 = 0 209.69/54.13 209.69/54.13 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.13 209.69/54.13 pred_out_ga(x1, x2) = pred_out_ga(x2) 209.69/54.14 209.69/54.14 U1_ga(x1, x2, x3) = U1_ga(x3) 209.69/54.14 209.69/54.14 HALF_IN_GA(x1, x2) = HALF_IN_GA(x1) 209.69/54.14 209.69/54.14 U4_GA(x1, x2, x3) = U4_GA(x3) 209.69/54.14 209.69/54.14 U5_GA(x1, x2, x3) = U5_GA(x3) 209.69/54.14 209.69/54.14 209.69/54.14 We have to consider all (P,R,Pi)-chains 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (68) PiDPToQDPProof (SOUND) 209.69/54.14 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (69) 209.69/54.14 Obligation: 209.69/54.14 Q DP problem: 209.69/54.14 The TRS P consists of the following rules: 209.69/54.14 209.69/54.14 U4_GA(pred_out_ga(Y)) -> U5_GA(pred_in_ga(Y)) 209.69/54.14 U5_GA(pred_out_ga(Z)) -> HALF_IN_GA(Z) 209.69/54.14 HALF_IN_GA(s(s(X))) -> U4_GA(pred_in_ga(s(s(X)))) 209.69/54.14 209.69/54.14 The TRS R consists of the following rules: 209.69/54.14 209.69/54.14 pred_in_ga(0) -> pred_out_ga(0) 209.69/54.14 pred_in_ga(s(0)) -> pred_out_ga(0) 209.69/54.14 pred_in_ga(s(s(X))) -> U1_ga(pred_in_ga(s(X))) 209.69/54.14 U1_ga(pred_out_ga(Y)) -> pred_out_ga(s(Y)) 209.69/54.14 209.69/54.14 The set Q consists of the following terms: 209.69/54.14 209.69/54.14 pred_in_ga(x0) 209.69/54.14 U1_ga(x0) 209.69/54.14 209.69/54.14 We have to consider all (P,Q,R)-chains. 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (70) MRRProof (EQUIVALENT) 209.69/54.14 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. 209.69/54.14 209.69/54.14 209.69/54.14 Strictly oriented rules of the TRS R: 209.69/54.14 209.69/54.14 pred_in_ga(s(0)) -> pred_out_ga(0) 209.69/54.14 209.69/54.14 Used ordering: Polynomial interpretation [POLO]: 209.69/54.14 209.69/54.14 POL(0) = 0 209.69/54.14 POL(HALF_IN_GA(x_1)) = 2*x_1 209.69/54.14 POL(U1_ga(x_1)) = 2 + x_1 209.69/54.14 POL(U4_GA(x_1)) = x_1 209.69/54.14 POL(U5_GA(x_1)) = x_1 209.69/54.14 POL(pred_in_ga(x_1)) = 2*x_1 209.69/54.14 POL(pred_out_ga(x_1)) = 2*x_1 209.69/54.14 POL(s(x_1)) = 1 + x_1 209.69/54.14 209.69/54.14 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (71) 209.69/54.14 Obligation: 209.69/54.14 Q DP problem: 209.69/54.14 The TRS P consists of the following rules: 209.69/54.14 209.69/54.14 U4_GA(pred_out_ga(Y)) -> U5_GA(pred_in_ga(Y)) 209.69/54.14 U5_GA(pred_out_ga(Z)) -> HALF_IN_GA(Z) 209.69/54.14 HALF_IN_GA(s(s(X))) -> U4_GA(pred_in_ga(s(s(X)))) 209.69/54.14 209.69/54.14 The TRS R consists of the following rules: 209.69/54.14 209.69/54.14 pred_in_ga(0) -> pred_out_ga(0) 209.69/54.14 pred_in_ga(s(s(X))) -> U1_ga(pred_in_ga(s(X))) 209.69/54.14 U1_ga(pred_out_ga(Y)) -> pred_out_ga(s(Y)) 209.69/54.14 209.69/54.14 The set Q consists of the following terms: 209.69/54.14 209.69/54.14 pred_in_ga(x0) 209.69/54.14 U1_ga(x0) 209.69/54.14 209.69/54.14 We have to consider all (P,Q,R)-chains. 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (72) RFCMatchBoundsDPProof (EQUIVALENT) 209.69/54.14 Termination of the TRS P cup R can be shown by a matchbound [MATCHBOUNDS1,MATCHBOUNDS2] of 2. This implies finiteness of the given DP problem. 209.69/54.14 The following rules (P cup R) were used to construct the certificate: 209.69/54.14 209.69/54.14 pred_in_ga(0) -> pred_out_ga(0) 209.69/54.14 pred_in_ga(s(s(X))) -> U1_ga(pred_in_ga(s(X))) 209.69/54.14 U1_ga(pred_out_ga(Y)) -> pred_out_ga(s(Y)) 209.69/54.14 U4_GA(pred_out_ga(Y)) -> U5_GA(pred_in_ga(Y)) 209.69/54.14 U5_GA(pred_out_ga(Z)) -> HALF_IN_GA(Z) 209.69/54.14 HALF_IN_GA(s(s(X))) -> U4_GA(pred_in_ga(s(s(X)))) 209.69/54.14 209.69/54.14 The certificate found is represented by the following graph. 209.69/54.14 The certificate consists of the following enumerated nodes: 209.69/54.14 1298, 1299, 1396, 1397, 1398, 1399, 1400, 1401, 1402, 1403, 1404, 1405, 1406, 1407, 1408, 1409, 1410 209.69/54.14 209.69/54.14 Node 1298 is start node and node 1299 is final node. 209.69/54.14 209.69/54.14 Those nodes are connected through the following edges: 209.69/54.14 209.69/54.14 * 1298 to 1396 labelled pred_out_ga_1(0)* 1298 to 1397 labelled U1_ga_1(0)* 1298 to 1398 labelled pred_out_ga_1(0)* 1298 to 1399 labelled U5_GA_1(0)* 1298 to 1299 labelled HALF_IN_GA_1(0)* 1298 to 1400 labelled U4_GA_1(0)* 1298 to 1403 labelled U4_GA_1(1)* 1298 to 1406 labelled HALF_IN_GA_1(1)* 1299 to 1299 labelled #_1(0)* 1396 to 1299 labelled 0(0)* 1397 to 1398 labelled pred_in_ga_1(0)* 1397 to 1407 labelled U1_ga_1(1)* 1398 to 1299 labelled s_1(0)* 1399 to 1299 labelled pred_in_ga_1(0)* 1399 to 1406 labelled pred_out_ga_1(1)* 1399 to 1407 labelled U1_ga_1(1)* 1400 to 1401 labelled pred_in_ga_1(0)* 1400 to 1407 labelled U1_ga_1(1)* 1401 to 1402 labelled s_1(0)* 1402 to 1299 labelled s_1(0)* 1403 to 1404 labelled pred_in_ga_1(1)* 1403 to 1409 labelled U1_ga_1(2)* 1404 to 1405 labelled s_1(1)* 1405 to 1299 labelled s_1(1)* 1406 to 1299 labelled 0(1)* 1407 to 1408 labelled pred_in_ga_1(1)* 1407 to 1407 labelled U1_ga_1(1)* 1408 to 1299 labelled s_1(1)* 1409 to 1410 labelled pred_in_ga_1(2)* 1409 to 1407 labelled U1_ga_1(1)* 1410 to 1299 labelled s_1(2) 209.69/54.14 209.69/54.14 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (73) 209.69/54.14 YES 209.69/54.14 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (74) 209.69/54.14 Obligation: 209.69/54.14 Pi DP problem: 209.69/54.14 The TRS P consists of the following rules: 209.69/54.14 209.69/54.14 U7_G(X, half_out_ga(s(X), Y)) -> U8_G(X, double_in_ga(Y, Z)) 209.69/54.14 U8_G(X, double_out_ga(Y, Z)) -> F_IN_G(Z) 209.69/54.14 F_IN_G(s(X)) -> U7_G(X, half_in_ga(s(X), Y)) 209.69/54.14 209.69/54.14 The TRS R consists of the following rules: 209.69/54.14 209.69/54.14 f_in_g(s(X)) -> U7_g(X, half_in_ga(s(X), Y)) 209.69/54.14 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.14 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.14 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.14 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.14 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.14 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.14 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.14 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.14 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.14 U7_g(X, half_out_ga(s(X), Y)) -> U8_g(X, double_in_ga(Y, Z)) 209.69/54.14 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.14 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.14 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.14 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.14 U8_g(X, double_out_ga(Y, Z)) -> U9_g(X, f_in_g(Z)) 209.69/54.14 U9_g(X, f_out_g(Z)) -> f_out_g(s(X)) 209.69/54.14 209.69/54.14 The argument filtering Pi contains the following mapping: 209.69/54.14 f_in_g(x1) = f_in_g(x1) 209.69/54.14 209.69/54.14 s(x1) = s(x1) 209.69/54.14 209.69/54.14 U7_g(x1, x2) = U7_g(x2) 209.69/54.14 209.69/54.14 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.14 209.69/54.14 0 = 0 209.69/54.14 209.69/54.14 half_out_ga(x1, x2) = half_out_ga(x2) 209.69/54.14 209.69/54.14 U4_ga(x1, x2, x3) = U4_ga(x3) 209.69/54.14 209.69/54.14 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.14 209.69/54.14 pred_out_ga(x1, x2) = pred_out_ga(x2) 209.69/54.14 209.69/54.14 U1_ga(x1, x2, x3) = U1_ga(x3) 209.69/54.14 209.69/54.14 U5_ga(x1, x2, x3) = U5_ga(x3) 209.69/54.14 209.69/54.14 U6_ga(x1, x2, x3) = U6_ga(x3) 209.69/54.14 209.69/54.14 U8_g(x1, x2) = U8_g(x2) 209.69/54.14 209.69/54.14 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.14 209.69/54.14 double_out_ga(x1, x2) = double_out_ga(x2) 209.69/54.14 209.69/54.14 U2_ga(x1, x2, x3) = U2_ga(x3) 209.69/54.14 209.69/54.14 U3_ga(x1, x2, x3) = U3_ga(x3) 209.69/54.14 209.69/54.14 U9_g(x1, x2) = U9_g(x2) 209.69/54.14 209.69/54.14 f_out_g(x1) = f_out_g 209.69/54.14 209.69/54.14 F_IN_G(x1) = F_IN_G(x1) 209.69/54.14 209.69/54.14 U7_G(x1, x2) = U7_G(x2) 209.69/54.14 209.69/54.14 U8_G(x1, x2) = U8_G(x2) 209.69/54.14 209.69/54.14 209.69/54.14 We have to consider all (P,R,Pi)-chains 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (75) UsableRulesProof (EQUIVALENT) 209.69/54.14 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (76) 209.69/54.14 Obligation: 209.69/54.14 Pi DP problem: 209.69/54.14 The TRS P consists of the following rules: 209.69/54.14 209.69/54.14 U7_G(X, half_out_ga(s(X), Y)) -> U8_G(X, double_in_ga(Y, Z)) 209.69/54.14 U8_G(X, double_out_ga(Y, Z)) -> F_IN_G(Z) 209.69/54.14 F_IN_G(s(X)) -> U7_G(X, half_in_ga(s(X), Y)) 209.69/54.14 209.69/54.14 The TRS R consists of the following rules: 209.69/54.14 209.69/54.14 double_in_ga(0, 0) -> double_out_ga(0, 0) 209.69/54.14 double_in_ga(s(X), s(s(Y))) -> U2_ga(X, Y, pred_in_ga(s(X), Z)) 209.69/54.14 half_in_ga(s(s(X)), s(U)) -> U4_ga(X, U, pred_in_ga(s(s(X)), Y)) 209.69/54.14 U2_ga(X, Y, pred_out_ga(s(X), Z)) -> U3_ga(X, Y, double_in_ga(Z, Y)) 209.69/54.14 U4_ga(X, U, pred_out_ga(s(s(X)), Y)) -> U5_ga(X, U, pred_in_ga(Y, Z)) 209.69/54.14 pred_in_ga(s(0), 0) -> pred_out_ga(s(0), 0) 209.69/54.14 pred_in_ga(s(s(X)), s(Y)) -> U1_ga(X, Y, pred_in_ga(s(X), Y)) 209.69/54.14 U3_ga(X, Y, double_out_ga(Z, Y)) -> double_out_ga(s(X), s(s(Y))) 209.69/54.14 U5_ga(X, U, pred_out_ga(Y, Z)) -> U6_ga(X, U, half_in_ga(Z, U)) 209.69/54.14 U1_ga(X, Y, pred_out_ga(s(X), Y)) -> pred_out_ga(s(s(X)), s(Y)) 209.69/54.14 pred_in_ga(0, 0) -> pred_out_ga(0, 0) 209.69/54.14 U6_ga(X, U, half_out_ga(Z, U)) -> half_out_ga(s(s(X)), s(U)) 209.69/54.14 half_in_ga(0, 0) -> half_out_ga(0, 0) 209.69/54.14 209.69/54.14 The argument filtering Pi contains the following mapping: 209.69/54.14 s(x1) = s(x1) 209.69/54.14 209.69/54.14 half_in_ga(x1, x2) = half_in_ga(x1) 209.69/54.14 209.69/54.14 0 = 0 209.69/54.14 209.69/54.14 half_out_ga(x1, x2) = half_out_ga(x2) 209.69/54.14 209.69/54.14 U4_ga(x1, x2, x3) = U4_ga(x3) 209.69/54.14 209.69/54.14 pred_in_ga(x1, x2) = pred_in_ga(x1) 209.69/54.14 209.69/54.14 pred_out_ga(x1, x2) = pred_out_ga(x2) 209.69/54.14 209.69/54.14 U1_ga(x1, x2, x3) = U1_ga(x3) 209.69/54.14 209.69/54.14 U5_ga(x1, x2, x3) = U5_ga(x3) 209.69/54.14 209.69/54.14 U6_ga(x1, x2, x3) = U6_ga(x3) 209.69/54.14 209.69/54.14 double_in_ga(x1, x2) = double_in_ga(x1) 209.69/54.14 209.69/54.14 double_out_ga(x1, x2) = double_out_ga(x2) 209.69/54.14 209.69/54.14 U2_ga(x1, x2, x3) = U2_ga(x3) 209.69/54.14 209.69/54.14 U3_ga(x1, x2, x3) = U3_ga(x3) 209.69/54.14 209.69/54.14 F_IN_G(x1) = F_IN_G(x1) 209.69/54.14 209.69/54.14 U7_G(x1, x2) = U7_G(x2) 209.69/54.14 209.69/54.14 U8_G(x1, x2) = U8_G(x2) 209.69/54.14 209.69/54.14 209.69/54.14 We have to consider all (P,R,Pi)-chains 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (77) PiDPToQDPProof (SOUND) 209.69/54.14 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (78) 209.69/54.14 Obligation: 209.69/54.14 Q DP problem: 209.69/54.14 The TRS P consists of the following rules: 209.69/54.14 209.69/54.14 U7_G(half_out_ga(Y)) -> U8_G(double_in_ga(Y)) 209.69/54.14 U8_G(double_out_ga(Z)) -> F_IN_G(Z) 209.69/54.14 F_IN_G(s(X)) -> U7_G(half_in_ga(s(X))) 209.69/54.14 209.69/54.14 The TRS R consists of the following rules: 209.69/54.14 209.69/54.14 double_in_ga(0) -> double_out_ga(0) 209.69/54.14 double_in_ga(s(X)) -> U2_ga(pred_in_ga(s(X))) 209.69/54.14 half_in_ga(s(s(X))) -> U4_ga(pred_in_ga(s(s(X)))) 209.69/54.14 U2_ga(pred_out_ga(Z)) -> U3_ga(double_in_ga(Z)) 209.69/54.14 U4_ga(pred_out_ga(Y)) -> U5_ga(pred_in_ga(Y)) 209.69/54.14 pred_in_ga(s(0)) -> pred_out_ga(0) 209.69/54.14 pred_in_ga(s(s(X))) -> U1_ga(pred_in_ga(s(X))) 209.69/54.14 U3_ga(double_out_ga(Y)) -> double_out_ga(s(s(Y))) 209.69/54.14 U5_ga(pred_out_ga(Z)) -> U6_ga(half_in_ga(Z)) 209.69/54.14 U1_ga(pred_out_ga(Y)) -> pred_out_ga(s(Y)) 209.69/54.14 pred_in_ga(0) -> pred_out_ga(0) 209.69/54.14 U6_ga(half_out_ga(U)) -> half_out_ga(s(U)) 209.69/54.14 half_in_ga(0) -> half_out_ga(0) 209.69/54.14 209.69/54.14 The set Q consists of the following terms: 209.69/54.14 209.69/54.14 double_in_ga(x0) 209.69/54.14 half_in_ga(x0) 209.69/54.14 U2_ga(x0) 209.69/54.14 U4_ga(x0) 209.69/54.14 pred_in_ga(x0) 209.69/54.14 U3_ga(x0) 209.69/54.14 U5_ga(x0) 209.69/54.14 U1_ga(x0) 209.69/54.14 U6_ga(x0) 209.69/54.14 209.69/54.14 We have to consider all (P,Q,R)-chains. 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (79) TransformationProof (SOUND) 209.69/54.14 By narrowing [LPAR04] the rule U7_G(half_out_ga(Y)) -> U8_G(double_in_ga(Y)) at position [0] we obtained the following new rules [LPAR04]: 209.69/54.14 209.69/54.14 (U7_G(half_out_ga(0)) -> U8_G(double_out_ga(0)),U7_G(half_out_ga(0)) -> U8_G(double_out_ga(0))) 209.69/54.14 (U7_G(half_out_ga(s(x0))) -> U8_G(U2_ga(pred_in_ga(s(x0)))),U7_G(half_out_ga(s(x0))) -> U8_G(U2_ga(pred_in_ga(s(x0))))) 209.69/54.14 209.69/54.14 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (80) 209.69/54.14 Obligation: 209.69/54.14 Q DP problem: 209.69/54.14 The TRS P consists of the following rules: 209.69/54.14 209.69/54.14 U8_G(double_out_ga(Z)) -> F_IN_G(Z) 209.69/54.14 F_IN_G(s(X)) -> U7_G(half_in_ga(s(X))) 209.69/54.14 U7_G(half_out_ga(0)) -> U8_G(double_out_ga(0)) 209.69/54.14 U7_G(half_out_ga(s(x0))) -> U8_G(U2_ga(pred_in_ga(s(x0)))) 209.69/54.14 209.69/54.14 The TRS R consists of the following rules: 209.69/54.14 209.69/54.14 double_in_ga(0) -> double_out_ga(0) 209.69/54.14 double_in_ga(s(X)) -> U2_ga(pred_in_ga(s(X))) 209.69/54.14 half_in_ga(s(s(X))) -> U4_ga(pred_in_ga(s(s(X)))) 209.69/54.14 U2_ga(pred_out_ga(Z)) -> U3_ga(double_in_ga(Z)) 209.69/54.14 U4_ga(pred_out_ga(Y)) -> U5_ga(pred_in_ga(Y)) 209.69/54.14 pred_in_ga(s(0)) -> pred_out_ga(0) 209.69/54.14 pred_in_ga(s(s(X))) -> U1_ga(pred_in_ga(s(X))) 209.69/54.14 U3_ga(double_out_ga(Y)) -> double_out_ga(s(s(Y))) 209.69/54.14 U5_ga(pred_out_ga(Z)) -> U6_ga(half_in_ga(Z)) 209.69/54.14 U1_ga(pred_out_ga(Y)) -> pred_out_ga(s(Y)) 209.69/54.14 pred_in_ga(0) -> pred_out_ga(0) 209.69/54.14 U6_ga(half_out_ga(U)) -> half_out_ga(s(U)) 209.69/54.14 half_in_ga(0) -> half_out_ga(0) 209.69/54.14 209.69/54.14 The set Q consists of the following terms: 209.69/54.14 209.69/54.14 double_in_ga(x0) 209.69/54.14 half_in_ga(x0) 209.69/54.14 U2_ga(x0) 209.69/54.14 U4_ga(x0) 209.69/54.14 pred_in_ga(x0) 209.69/54.14 U3_ga(x0) 209.69/54.14 U5_ga(x0) 209.69/54.14 U1_ga(x0) 209.69/54.14 U6_ga(x0) 209.69/54.14 209.69/54.14 We have to consider all (P,Q,R)-chains. 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (81) TransformationProof (SOUND) 209.69/54.14 By narrowing [LPAR04] the rule F_IN_G(s(X)) -> U7_G(half_in_ga(s(X))) at position [0] we obtained the following new rules [LPAR04]: 209.69/54.14 209.69/54.14 (F_IN_G(s(s(x0))) -> U7_G(U4_ga(pred_in_ga(s(s(x0))))),F_IN_G(s(s(x0))) -> U7_G(U4_ga(pred_in_ga(s(s(x0)))))) 209.69/54.14 209.69/54.14 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (82) 209.69/54.14 Obligation: 209.69/54.14 Q DP problem: 209.69/54.14 The TRS P consists of the following rules: 209.69/54.14 209.69/54.14 U8_G(double_out_ga(Z)) -> F_IN_G(Z) 209.69/54.14 U7_G(half_out_ga(0)) -> U8_G(double_out_ga(0)) 209.69/54.14 U7_G(half_out_ga(s(x0))) -> U8_G(U2_ga(pred_in_ga(s(x0)))) 209.69/54.14 F_IN_G(s(s(x0))) -> U7_G(U4_ga(pred_in_ga(s(s(x0))))) 209.69/54.14 209.69/54.14 The TRS R consists of the following rules: 209.69/54.14 209.69/54.14 double_in_ga(0) -> double_out_ga(0) 209.69/54.14 double_in_ga(s(X)) -> U2_ga(pred_in_ga(s(X))) 209.69/54.14 half_in_ga(s(s(X))) -> U4_ga(pred_in_ga(s(s(X)))) 209.69/54.14 U2_ga(pred_out_ga(Z)) -> U3_ga(double_in_ga(Z)) 209.69/54.14 U4_ga(pred_out_ga(Y)) -> U5_ga(pred_in_ga(Y)) 209.69/54.14 pred_in_ga(s(0)) -> pred_out_ga(0) 209.69/54.14 pred_in_ga(s(s(X))) -> U1_ga(pred_in_ga(s(X))) 209.69/54.14 U3_ga(double_out_ga(Y)) -> double_out_ga(s(s(Y))) 209.69/54.14 U5_ga(pred_out_ga(Z)) -> U6_ga(half_in_ga(Z)) 209.69/54.14 U1_ga(pred_out_ga(Y)) -> pred_out_ga(s(Y)) 209.69/54.14 pred_in_ga(0) -> pred_out_ga(0) 209.69/54.14 U6_ga(half_out_ga(U)) -> half_out_ga(s(U)) 209.69/54.14 half_in_ga(0) -> half_out_ga(0) 209.69/54.14 209.69/54.14 The set Q consists of the following terms: 209.69/54.14 209.69/54.14 double_in_ga(x0) 209.69/54.14 half_in_ga(x0) 209.69/54.14 U2_ga(x0) 209.69/54.14 U4_ga(x0) 209.69/54.14 pred_in_ga(x0) 209.69/54.14 U3_ga(x0) 209.69/54.14 U5_ga(x0) 209.69/54.14 U1_ga(x0) 209.69/54.14 U6_ga(x0) 209.69/54.14 209.69/54.14 We have to consider all (P,Q,R)-chains. 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (83) TransformationProof (EQUIVALENT) 209.69/54.14 By rewriting [LPAR04] the rule F_IN_G(s(s(x0))) -> U7_G(U4_ga(pred_in_ga(s(s(x0))))) at position [0,0] we obtained the following new rules [LPAR04]: 209.69/54.14 209.69/54.14 (F_IN_G(s(s(x0))) -> U7_G(U4_ga(U1_ga(pred_in_ga(s(x0))))),F_IN_G(s(s(x0))) -> U7_G(U4_ga(U1_ga(pred_in_ga(s(x0)))))) 209.69/54.14 209.69/54.14 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (84) 209.69/54.14 Obligation: 209.69/54.14 Q DP problem: 209.69/54.14 The TRS P consists of the following rules: 209.69/54.14 209.69/54.14 U8_G(double_out_ga(Z)) -> F_IN_G(Z) 209.69/54.14 U7_G(half_out_ga(0)) -> U8_G(double_out_ga(0)) 209.69/54.14 U7_G(half_out_ga(s(x0))) -> U8_G(U2_ga(pred_in_ga(s(x0)))) 209.69/54.14 F_IN_G(s(s(x0))) -> U7_G(U4_ga(U1_ga(pred_in_ga(s(x0))))) 209.69/54.14 209.69/54.14 The TRS R consists of the following rules: 209.69/54.14 209.69/54.14 double_in_ga(0) -> double_out_ga(0) 209.69/54.14 double_in_ga(s(X)) -> U2_ga(pred_in_ga(s(X))) 209.69/54.14 half_in_ga(s(s(X))) -> U4_ga(pred_in_ga(s(s(X)))) 209.69/54.14 U2_ga(pred_out_ga(Z)) -> U3_ga(double_in_ga(Z)) 209.69/54.14 U4_ga(pred_out_ga(Y)) -> U5_ga(pred_in_ga(Y)) 209.69/54.14 pred_in_ga(s(0)) -> pred_out_ga(0) 209.69/54.14 pred_in_ga(s(s(X))) -> U1_ga(pred_in_ga(s(X))) 209.69/54.14 U3_ga(double_out_ga(Y)) -> double_out_ga(s(s(Y))) 209.69/54.14 U5_ga(pred_out_ga(Z)) -> U6_ga(half_in_ga(Z)) 209.69/54.14 U1_ga(pred_out_ga(Y)) -> pred_out_ga(s(Y)) 209.69/54.14 pred_in_ga(0) -> pred_out_ga(0) 209.69/54.14 U6_ga(half_out_ga(U)) -> half_out_ga(s(U)) 209.69/54.14 half_in_ga(0) -> half_out_ga(0) 209.69/54.14 209.69/54.14 The set Q consists of the following terms: 209.69/54.14 209.69/54.14 double_in_ga(x0) 209.69/54.14 half_in_ga(x0) 209.69/54.14 U2_ga(x0) 209.69/54.14 U4_ga(x0) 209.69/54.14 pred_in_ga(x0) 209.69/54.14 U3_ga(x0) 209.69/54.14 U5_ga(x0) 209.69/54.14 U1_ga(x0) 209.69/54.14 U6_ga(x0) 209.69/54.14 209.69/54.14 We have to consider all (P,Q,R)-chains. 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (85) TransformationProof (EQUIVALENT) 209.69/54.14 By forward instantiating [JAR06] the rule U8_G(double_out_ga(Z)) -> F_IN_G(Z) we obtained the following new rules [LPAR04]: 209.69/54.14 209.69/54.14 (U8_G(double_out_ga(s(s(y_0)))) -> F_IN_G(s(s(y_0))),U8_G(double_out_ga(s(s(y_0)))) -> F_IN_G(s(s(y_0)))) 209.69/54.14 209.69/54.14 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (86) 209.69/54.14 Obligation: 209.69/54.14 Q DP problem: 209.69/54.14 The TRS P consists of the following rules: 209.69/54.14 209.69/54.14 U7_G(half_out_ga(0)) -> U8_G(double_out_ga(0)) 209.69/54.14 U7_G(half_out_ga(s(x0))) -> U8_G(U2_ga(pred_in_ga(s(x0)))) 209.69/54.14 F_IN_G(s(s(x0))) -> U7_G(U4_ga(U1_ga(pred_in_ga(s(x0))))) 209.69/54.14 U8_G(double_out_ga(s(s(y_0)))) -> F_IN_G(s(s(y_0))) 209.69/54.14 209.69/54.14 The TRS R consists of the following rules: 209.69/54.14 209.69/54.14 double_in_ga(0) -> double_out_ga(0) 209.69/54.14 double_in_ga(s(X)) -> U2_ga(pred_in_ga(s(X))) 209.69/54.14 half_in_ga(s(s(X))) -> U4_ga(pred_in_ga(s(s(X)))) 209.69/54.14 U2_ga(pred_out_ga(Z)) -> U3_ga(double_in_ga(Z)) 209.69/54.14 U4_ga(pred_out_ga(Y)) -> U5_ga(pred_in_ga(Y)) 209.69/54.14 pred_in_ga(s(0)) -> pred_out_ga(0) 209.69/54.14 pred_in_ga(s(s(X))) -> U1_ga(pred_in_ga(s(X))) 209.69/54.14 U3_ga(double_out_ga(Y)) -> double_out_ga(s(s(Y))) 209.69/54.14 U5_ga(pred_out_ga(Z)) -> U6_ga(half_in_ga(Z)) 209.69/54.14 U1_ga(pred_out_ga(Y)) -> pred_out_ga(s(Y)) 209.69/54.14 pred_in_ga(0) -> pred_out_ga(0) 209.69/54.14 U6_ga(half_out_ga(U)) -> half_out_ga(s(U)) 209.69/54.14 half_in_ga(0) -> half_out_ga(0) 209.69/54.14 209.69/54.14 The set Q consists of the following terms: 209.69/54.14 209.69/54.14 double_in_ga(x0) 209.69/54.14 half_in_ga(x0) 209.69/54.14 U2_ga(x0) 209.69/54.14 U4_ga(x0) 209.69/54.14 pred_in_ga(x0) 209.69/54.14 U3_ga(x0) 209.69/54.14 U5_ga(x0) 209.69/54.14 U1_ga(x0) 209.69/54.14 U6_ga(x0) 209.69/54.14 209.69/54.14 We have to consider all (P,Q,R)-chains. 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (87) DependencyGraphProof (EQUIVALENT) 209.69/54.14 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node. 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (88) 209.69/54.14 Obligation: 209.69/54.14 Q DP problem: 209.69/54.14 The TRS P consists of the following rules: 209.69/54.14 209.69/54.14 U7_G(half_out_ga(s(x0))) -> U8_G(U2_ga(pred_in_ga(s(x0)))) 209.69/54.14 U8_G(double_out_ga(s(s(y_0)))) -> F_IN_G(s(s(y_0))) 209.69/54.14 F_IN_G(s(s(x0))) -> U7_G(U4_ga(U1_ga(pred_in_ga(s(x0))))) 209.69/54.14 209.69/54.14 The TRS R consists of the following rules: 209.69/54.14 209.69/54.14 double_in_ga(0) -> double_out_ga(0) 209.69/54.14 double_in_ga(s(X)) -> U2_ga(pred_in_ga(s(X))) 209.69/54.14 half_in_ga(s(s(X))) -> U4_ga(pred_in_ga(s(s(X)))) 209.69/54.14 U2_ga(pred_out_ga(Z)) -> U3_ga(double_in_ga(Z)) 209.69/54.14 U4_ga(pred_out_ga(Y)) -> U5_ga(pred_in_ga(Y)) 209.69/54.14 pred_in_ga(s(0)) -> pred_out_ga(0) 209.69/54.14 pred_in_ga(s(s(X))) -> U1_ga(pred_in_ga(s(X))) 209.69/54.14 U3_ga(double_out_ga(Y)) -> double_out_ga(s(s(Y))) 209.69/54.14 U5_ga(pred_out_ga(Z)) -> U6_ga(half_in_ga(Z)) 209.69/54.14 U1_ga(pred_out_ga(Y)) -> pred_out_ga(s(Y)) 209.69/54.14 pred_in_ga(0) -> pred_out_ga(0) 209.69/54.14 U6_ga(half_out_ga(U)) -> half_out_ga(s(U)) 209.69/54.14 half_in_ga(0) -> half_out_ga(0) 209.69/54.14 209.69/54.14 The set Q consists of the following terms: 209.69/54.14 209.69/54.14 double_in_ga(x0) 209.69/54.14 half_in_ga(x0) 209.69/54.14 U2_ga(x0) 209.69/54.14 U4_ga(x0) 209.69/54.14 pred_in_ga(x0) 209.69/54.14 U3_ga(x0) 209.69/54.14 U5_ga(x0) 209.69/54.14 U1_ga(x0) 209.69/54.14 U6_ga(x0) 209.69/54.14 209.69/54.14 We have to consider all (P,Q,R)-chains. 209.69/54.14 ---------------------------------------- 209.69/54.14 209.69/54.14 (89) PrologToTRSTransformerProof (SOUND) 209.69/54.14 Transformed Prolog program to TRS. 209.69/54.14 209.69/54.14 { 209.69/54.14 "root": 3, 209.69/54.14 "program": { 209.69/54.14 "directives": [], 209.69/54.14 "clauses": [ 209.69/54.14 [ 209.69/54.14 "(pred (0) (0))", 209.69/54.14 null 209.69/54.14 ], 209.69/54.14 [ 209.69/54.14 "(pred (s (0)) (0))", 209.69/54.14 null 209.69/54.14 ], 209.69/54.14 [ 209.69/54.14 "(pred (s (s X)) (s Y))", 209.69/54.14 "(pred (s X) Y)" 209.69/54.14 ], 209.69/54.14 [ 209.69/54.14 "(double (0) (0))", 209.69/54.14 null 209.69/54.14 ], 209.69/54.14 [ 209.69/54.14 "(double (s X) (s (s Y)))", 209.69/54.14 "(',' (pred (s X) Z) (double Z Y))" 209.69/54.14 ], 209.69/54.14 [ 209.69/54.14 "(half (0) (0))", 209.69/54.14 null 209.69/54.14 ], 209.69/54.14 [ 209.69/54.14 "(half (s (s X)) (s U))", 209.69/54.14 "(',' (pred (s (s X)) Y) (',' (pred Y Z) (half Z U)))" 209.69/54.14 ], 209.69/54.14 [ 209.69/54.14 "(f (s X))", 209.69/54.14 "(',' (half (s X) Y) (',' (double Y Z) (f Z)))" 209.69/54.14 ] 209.69/54.14 ] 209.69/54.14 }, 209.69/54.14 "graph": { 209.69/54.14 "nodes": { 209.69/54.14 "190": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": 2, 209.69/54.14 "scope": 4, 209.69/54.14 "term": "(pred (s T12) X29)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T12"], 209.69/54.14 "free": ["X29"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "191": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(true)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "192": { 209.69/54.14 "goal": [], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "193": { 209.69/54.14 "goal": [], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "type": "Nodes", 209.69/54.14 "194": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(pred (s T15) X38)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T15"], 209.69/54.14 "free": ["X38"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "152": { 209.69/54.14 "goal": [ 209.69/54.14 { 209.69/54.14 "clause": 1, 209.69/54.14 "scope": 3, 209.69/54.14 "term": "(pred (s (s T8)) X18)" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "clause": 2, 209.69/54.14 "scope": 3, 209.69/54.14 "term": "(pred (s (s T8)) X18)" 209.69/54.14 } 209.69/54.14 ], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T8"], 209.69/54.14 "free": ["X18"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "196": { 209.69/54.14 "goal": [], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "351": { 209.69/54.14 "goal": [], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "354": { 209.69/54.14 "goal": [], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "398": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": 5, 209.69/54.14 "scope": 6, 209.69/54.14 "term": "(half T16 X20)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T16"], 209.69/54.14 "free": ["X20"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "311": { 209.69/54.14 "goal": [], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "399": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": 6, 209.69/54.14 "scope": 6, 209.69/54.14 "term": "(half T16 X20)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T16"], 209.69/54.14 "free": ["X20"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "279": { 209.69/54.14 "goal": [ 209.69/54.14 { 209.69/54.14 "clause": 0, 209.69/54.14 "scope": 5, 209.69/54.14 "term": "(pred T9 X19)" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "clause": 1, 209.69/54.14 "scope": 5, 209.69/54.14 "term": "(pred T9 X19)" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "clause": 2, 209.69/54.14 "scope": 5, 209.69/54.14 "term": "(pred T9 X19)" 209.69/54.14 } 209.69/54.14 ], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T9"], 209.69/54.14 "free": ["X19"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "314": { 209.69/54.14 "goal": [], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "92": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(half (s T4) X6)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T4"], 209.69/54.14 "free": ["X6"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "93": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(',' (double T5 X7) (f X7))" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T5"], 209.69/54.14 "free": ["X7"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "94": { 209.69/54.14 "goal": [ 209.69/54.14 { 209.69/54.14 "clause": 5, 209.69/54.14 "scope": 2, 209.69/54.14 "term": "(half (s T4) X6)" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "clause": 6, 209.69/54.14 "scope": 2, 209.69/54.14 "term": "(half (s T4) X6)" 209.69/54.14 } 209.69/54.14 ], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T4"], 209.69/54.14 "free": ["X6"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "96": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": 6, 209.69/54.14 "scope": 2, 209.69/54.14 "term": "(half (s T4) X6)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T4"], 209.69/54.14 "free": ["X6"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "98": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(',' (pred (s (s T8)) X18) (',' (pred X18 X19) (half X19 X20)))" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T8"], 209.69/54.14 "free": [ 209.69/54.14 "X20", 209.69/54.14 "X18", 209.69/54.14 "X19" 209.69/54.14 ], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "99": { 209.69/54.14 "goal": [], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "12": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(',' (half (s T4) X6) (',' (double X6 X7) (f X7)))" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T4"], 209.69/54.14 "free": [ 209.69/54.14 "X6", 209.69/54.14 "X7" 209.69/54.14 ], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "13": { 209.69/54.14 "goal": [], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "161": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": 2, 209.69/54.14 "scope": 3, 209.69/54.14 "term": "(pred (s (s T8)) X18)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T8"], 209.69/54.14 "free": ["X18"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "123": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(pred (s (s T8)) X18)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T8"], 209.69/54.14 "free": ["X18"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "3": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(f T1)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T1"], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "289": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": 0, 209.69/54.14 "scope": 5, 209.69/54.14 "term": "(pred T9 X19)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T9"], 209.69/54.14 "free": ["X19"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "324": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": 1, 209.69/54.14 "scope": 5, 209.69/54.14 "term": "(pred T9 X19)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T9"], 209.69/54.14 "free": ["X19"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "6": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": 7, 209.69/54.14 "scope": 1, 209.69/54.14 "term": "(f T1)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T1"], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "128": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(',' (pred T9 X19) (half X19 X20))" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T9"], 209.69/54.14 "free": [ 209.69/54.14 "X20", 209.69/54.14 "X19" 209.69/54.14 ], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "403": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(true)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "328": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": 2, 209.69/54.14 "scope": 5, 209.69/54.14 "term": "(pred T9 X19)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T9"], 209.69/54.14 "free": ["X19"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "405": { 209.69/54.14 "goal": [], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "406": { 209.69/54.14 "goal": [], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "290": { 209.69/54.14 "goal": [ 209.69/54.14 { 209.69/54.14 "clause": 1, 209.69/54.14 "scope": 5, 209.69/54.14 "term": "(pred T9 X19)" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "clause": 2, 209.69/54.14 "scope": 5, 209.69/54.14 "term": "(pred T9 X19)" 209.69/54.14 } 209.69/54.14 ], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T9"], 209.69/54.14 "free": ["X19"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "377": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(pred (s T19) X47)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T19"], 209.69/54.14 "free": ["X47"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "378": { 209.69/54.14 "goal": [], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "411": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(',' (pred (s (s T22)) X58) (',' (pred X58 X59) (half X59 X60)))" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T22"], 209.69/54.14 "free": [ 209.69/54.14 "X60", 209.69/54.14 "X58", 209.69/54.14 "X59" 209.69/54.14 ], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "412": { 209.69/54.14 "goal": [], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "413": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(double T5 X7)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T5"], 209.69/54.14 "free": ["X7"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "414": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(f T23)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T23"], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "458": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(true)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "459": { 209.69/54.14 "goal": [], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "416": { 209.69/54.14 "goal": [ 209.69/54.14 { 209.69/54.14 "clause": 3, 209.69/54.14 "scope": 7, 209.69/54.14 "term": "(double T5 X7)" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "clause": 4, 209.69/54.14 "scope": 7, 209.69/54.14 "term": "(double T5 X7)" 209.69/54.14 } 209.69/54.14 ], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T5"], 209.69/54.14 "free": ["X7"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "417": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": 3, 209.69/54.14 "scope": 7, 209.69/54.14 "term": "(double T5 X7)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T5"], 209.69/54.14 "free": ["X7"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "418": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": 4, 209.69/54.14 "scope": 7, 209.69/54.14 "term": "(double T5 X7)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T5"], 209.69/54.14 "free": ["X7"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "460": { 209.69/54.14 "goal": [], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "186": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(pred (s T12) X29)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T12"], 209.69/54.14 "free": ["X29"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "461": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(',' (pred (s T26) X70) (double X70 X71))" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T26"], 209.69/54.14 "free": [ 209.69/54.14 "X71", 209.69/54.14 "X70" 209.69/54.14 ], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "187": { 209.69/54.14 "goal": [ 209.69/54.14 { 209.69/54.14 "clause": 0, 209.69/54.14 "scope": 4, 209.69/54.14 "term": "(pred (s T12) X29)" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "clause": 1, 209.69/54.14 "scope": 4, 209.69/54.14 "term": "(pred (s T12) X29)" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "clause": 2, 209.69/54.14 "scope": 4, 209.69/54.14 "term": "(pred (s T12) X29)" 209.69/54.14 } 209.69/54.14 ], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T12"], 209.69/54.14 "free": ["X29"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "462": { 209.69/54.14 "goal": [], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "188": { 209.69/54.14 "goal": [ 209.69/54.14 { 209.69/54.14 "clause": 1, 209.69/54.14 "scope": 4, 209.69/54.14 "term": "(pred (s T12) X29)" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "clause": 2, 209.69/54.14 "scope": 4, 209.69/54.14 "term": "(pred (s T12) X29)" 209.69/54.14 } 209.69/54.14 ], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T12"], 209.69/54.14 "free": ["X29"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "463": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(pred (s T26) X70)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T26"], 209.69/54.14 "free": ["X70"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "189": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": 1, 209.69/54.14 "scope": 4, 209.69/54.14 "term": "(pred (s T12) X29)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T12"], 209.69/54.14 "free": ["X29"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "266": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(pred T9 X19)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T9"], 209.69/54.14 "free": ["X19"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "464": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(double T27 X71)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T27"], 209.69/54.14 "free": ["X71"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "146": { 209.69/54.14 "goal": [ 209.69/54.14 { 209.69/54.14 "clause": 0, 209.69/54.14 "scope": 3, 209.69/54.14 "term": "(pred (s (s T8)) X18)" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "clause": 1, 209.69/54.14 "scope": 3, 209.69/54.14 "term": "(pred (s (s T8)) X18)" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "clause": 2, 209.69/54.14 "scope": 3, 209.69/54.14 "term": "(pred (s (s T8)) X18)" 209.69/54.14 } 209.69/54.14 ], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T8"], 209.69/54.14 "free": ["X18"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "268": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(half T16 X20)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T16"], 209.69/54.14 "free": ["X20"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "389": { 209.69/54.14 "goal": [ 209.69/54.14 { 209.69/54.14 "clause": 5, 209.69/54.14 "scope": 6, 209.69/54.14 "term": "(half T16 X20)" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "clause": 6, 209.69/54.14 "scope": 6, 209.69/54.14 "term": "(half T16 X20)" 209.69/54.14 } 209.69/54.14 ], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": ["T16"], 209.69/54.14 "free": ["X20"], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "346": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(true)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "304": { 209.69/54.14 "goal": [{ 209.69/54.14 "clause": -1, 209.69/54.14 "scope": -1, 209.69/54.14 "term": "(true)" 209.69/54.14 }], 209.69/54.14 "kb": { 209.69/54.14 "nonunifying": [], 209.69/54.14 "intvars": {}, 209.69/54.14 "arithmetic": { 209.69/54.14 "type": "PlainIntegerRelationState", 209.69/54.14 "relations": [] 209.69/54.14 }, 209.69/54.14 "ground": [], 209.69/54.14 "free": [], 209.69/54.14 "exprvars": [] 209.69/54.14 } 209.69/54.14 } 209.69/54.14 }, 209.69/54.14 "edges": [ 209.69/54.14 { 209.69/54.14 "from": 3, 209.69/54.14 "to": 6, 209.69/54.14 "label": "CASE" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 6, 209.69/54.14 "to": 12, 209.69/54.14 "label": "EVAL with clause\nf(s(X5)) :- ','(half(s(X5), X6), ','(double(X6, X7), f(X7))).\nand substitutionX5 -> T4,\nT1 -> s(T4)" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 6, 209.69/54.14 "to": 13, 209.69/54.14 "label": "EVAL-BACKTRACK" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 12, 209.69/54.14 "to": 92, 209.69/54.14 "label": "SPLIT 1" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 12, 209.69/54.14 "to": 93, 209.69/54.14 "label": "SPLIT 2\nnew knowledge:\nT4 is ground\nT5 is ground\nreplacements:X6 -> T5" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 92, 209.69/54.14 "to": 94, 209.69/54.14 "label": "CASE" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 93, 209.69/54.14 "to": 413, 209.69/54.14 "label": "SPLIT 1" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 93, 209.69/54.14 "to": 414, 209.69/54.14 "label": "SPLIT 2\nnew knowledge:\nT5 is ground\nT23 is ground\nreplacements:X7 -> T23" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 94, 209.69/54.14 "to": 96, 209.69/54.14 "label": "BACKTRACK\nfor clause: half(0, 0)because of non-unification" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 96, 209.69/54.14 "to": 98, 209.69/54.14 "label": "EVAL with clause\nhalf(s(s(X16)), s(X17)) :- ','(pred(s(s(X16)), X18), ','(pred(X18, X19), half(X19, X17))).\nand substitutionX16 -> T8,\nT4 -> s(T8),\nX17 -> X20,\nX6 -> s(X20)" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 96, 209.69/54.14 "to": 99, 209.69/54.14 "label": "EVAL-BACKTRACK" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 98, 209.69/54.14 "to": 123, 209.69/54.14 "label": "SPLIT 1" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 98, 209.69/54.14 "to": 128, 209.69/54.14 "label": "SPLIT 2\nnew knowledge:\nT8 is ground\nT9 is ground\nreplacements:X18 -> T9" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 123, 209.69/54.14 "to": 146, 209.69/54.14 "label": "CASE" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 128, 209.69/54.14 "to": 266, 209.69/54.14 "label": "SPLIT 1" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 128, 209.69/54.14 "to": 268, 209.69/54.14 "label": "SPLIT 2\nnew knowledge:\nT9 is ground\nT16 is ground\nreplacements:X19 -> T16" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 146, 209.69/54.14 "to": 152, 209.69/54.14 "label": "BACKTRACK\nfor clause: pred(0, 0)because of non-unification" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 152, 209.69/54.14 "to": 161, 209.69/54.14 "label": "BACKTRACK\nfor clause: pred(s(0), 0)because of non-unification" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 161, 209.69/54.14 "to": 186, 209.69/54.14 "label": "ONLY EVAL with clause\npred(s(s(X27)), s(X28)) :- pred(s(X27), X28).\nand substitutionT8 -> T12,\nX27 -> T12,\nX28 -> X29,\nX18 -> s(X29)" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 186, 209.69/54.14 "to": 187, 209.69/54.14 "label": "CASE" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 187, 209.69/54.14 "to": 188, 209.69/54.14 "label": "BACKTRACK\nfor clause: pred(0, 0)because of non-unification" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 188, 209.69/54.14 "to": 189, 209.69/54.14 "label": "PARALLEL" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 188, 209.69/54.14 "to": 190, 209.69/54.14 "label": "PARALLEL" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 189, 209.69/54.14 "to": 191, 209.69/54.14 "label": "EVAL with clause\npred(s(0), 0).\nand substitutionT12 -> 0,\nX29 -> 0" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 189, 209.69/54.14 "to": 192, 209.69/54.14 "label": "EVAL-BACKTRACK" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 190, 209.69/54.14 "to": 194, 209.69/54.14 "label": "EVAL with clause\npred(s(s(X36)), s(X37)) :- pred(s(X36), X37).\nand substitutionX36 -> T15,\nT12 -> s(T15),\nX37 -> X38,\nX29 -> s(X38)" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 190, 209.69/54.14 "to": 196, 209.69/54.14 "label": "EVAL-BACKTRACK" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 191, 209.69/54.14 "to": 193, 209.69/54.14 "label": "SUCCESS" 209.69/54.14 }, 209.69/54.14 { 209.69/54.14 "from": 194, 209.69/54.14 "to": 186, 209.69/54.14 "label": "INSTANCE with matching:\nT12 -> T15\nX29 -> X38" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 266, 209.69/54.15 "to": 279, 209.69/54.15 "label": "CASE" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 268, 209.69/54.15 "to": 389, 209.69/54.15 "label": "CASE" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 279, 209.69/54.15 "to": 289, 209.69/54.15 "label": "PARALLEL" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 279, 209.69/54.15 "to": 290, 209.69/54.15 "label": "PARALLEL" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 289, 209.69/54.15 "to": 304, 209.69/54.15 "label": "EVAL with clause\npred(0, 0).\nand substitutionT9 -> 0,\nX19 -> 0" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 289, 209.69/54.15 "to": 311, 209.69/54.15 "label": "EVAL-BACKTRACK" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 290, 209.69/54.15 "to": 324, 209.69/54.15 "label": "PARALLEL" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 290, 209.69/54.15 "to": 328, 209.69/54.15 "label": "PARALLEL" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 304, 209.69/54.15 "to": 314, 209.69/54.15 "label": "SUCCESS" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 324, 209.69/54.15 "to": 346, 209.69/54.15 "label": "EVAL with clause\npred(s(0), 0).\nand substitutionT9 -> s(0),\nX19 -> 0" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 324, 209.69/54.15 "to": 351, 209.69/54.15 "label": "EVAL-BACKTRACK" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 328, 209.69/54.15 "to": 377, 209.69/54.15 "label": "EVAL with clause\npred(s(s(X45)), s(X46)) :- pred(s(X45), X46).\nand substitutionX45 -> T19,\nT9 -> s(s(T19)),\nX46 -> X47,\nX19 -> s(X47)" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 328, 209.69/54.15 "to": 378, 209.69/54.15 "label": "EVAL-BACKTRACK" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 346, 209.69/54.15 "to": 354, 209.69/54.15 "label": "SUCCESS" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 377, 209.69/54.15 "to": 266, 209.69/54.15 "label": "INSTANCE with matching:\nT9 -> s(T19)\nX19 -> X47" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 389, 209.69/54.15 "to": 398, 209.69/54.15 "label": "PARALLEL" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 389, 209.69/54.15 "to": 399, 209.69/54.15 "label": "PARALLEL" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 398, 209.69/54.15 "to": 403, 209.69/54.15 "label": "EVAL with clause\nhalf(0, 0).\nand substitutionT16 -> 0,\nX20 -> 0" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 398, 209.69/54.15 "to": 405, 209.69/54.15 "label": "EVAL-BACKTRACK" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 399, 209.69/54.15 "to": 411, 209.69/54.15 "label": "EVAL with clause\nhalf(s(s(X56)), s(X57)) :- ','(pred(s(s(X56)), X58), ','(pred(X58, X59), half(X59, X57))).\nand substitutionX56 -> T22,\nT16 -> s(s(T22)),\nX57 -> X60,\nX20 -> s(X60)" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 399, 209.69/54.15 "to": 412, 209.69/54.15 "label": "EVAL-BACKTRACK" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 403, 209.69/54.15 "to": 406, 209.69/54.15 "label": "SUCCESS" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 411, 209.69/54.15 "to": 98, 209.69/54.15 "label": "INSTANCE with matching:\nT8 -> T22\nX18 -> X58\nX19 -> X59\nX20 -> X60" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 413, 209.69/54.15 "to": 416, 209.69/54.15 "label": "CASE" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 414, 209.69/54.15 "to": 3, 209.69/54.15 "label": "INSTANCE with matching:\nT1 -> T23" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 416, 209.69/54.15 "to": 417, 209.69/54.15 "label": "PARALLEL" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 416, 209.69/54.15 "to": 418, 209.69/54.15 "label": "PARALLEL" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 417, 209.69/54.15 "to": 458, 209.69/54.15 "label": "EVAL with clause\ndouble(0, 0).\nand substitutionT5 -> 0,\nX7 -> 0" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 417, 209.69/54.15 "to": 459, 209.69/54.15 "label": "EVAL-BACKTRACK" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 418, 209.69/54.15 "to": 461, 209.69/54.15 "label": "EVAL with clause\ndouble(s(X68), s(s(X69))) :- ','(pred(s(X68), X70), double(X70, X69)).\nand substitutionX68 -> T26,\nT5 -> s(T26),\nX69 -> X71,\nX7 -> s(s(X71))" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 418, 209.69/54.15 "to": 462, 209.69/54.15 "label": "EVAL-BACKTRACK" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 458, 209.69/54.15 "to": 460, 209.69/54.15 "label": "SUCCESS" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 461, 209.69/54.15 "to": 463, 209.69/54.15 "label": "SPLIT 1" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 461, 209.69/54.15 "to": 464, 209.69/54.15 "label": "SPLIT 2\nnew knowledge:\nT26 is ground\nT27 is ground\nreplacements:X70 -> T27" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 463, 209.69/54.15 "to": 266, 209.69/54.15 "label": "INSTANCE with matching:\nT9 -> s(T26)\nX19 -> X70" 209.69/54.15 }, 209.69/54.15 { 209.69/54.15 "from": 464, 209.69/54.15 "to": 413, 209.69/54.15 "label": "INSTANCE with matching:\nT5 -> T27\nX7 -> X71" 209.69/54.15 } 209.69/54.15 ], 209.69/54.15 "type": "Graph" 209.69/54.15 } 209.69/54.15 } 209.69/54.15 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (90) 209.69/54.15 Obligation: 209.69/54.15 Q restricted rewrite system: 209.69/54.15 The TRS R consists of the following rules: 209.69/54.15 209.69/54.15 f3_in(s(T4)) -> U1(f12_in(T4), s(T4)) 209.69/54.15 U1(f12_out1(X6, X7), s(T4)) -> f3_out1 209.69/54.15 f186_in(0) -> f186_out1(0) 209.69/54.15 f186_in(s(T15)) -> U2(f186_in(T15), s(T15)) 209.69/54.15 U2(f186_out1(X38), s(T15)) -> f186_out1(s(X38)) 209.69/54.15 f266_in(0) -> f266_out1(0) 209.69/54.15 f266_in(s(0)) -> f266_out1(0) 209.69/54.15 f266_in(s(s(T19))) -> U3(f266_in(s(T19)), s(s(T19))) 209.69/54.15 U3(f266_out1(X47), s(s(T19))) -> f266_out1(s(X47)) 209.69/54.15 f413_in(0) -> f413_out1(0) 209.69/54.15 f413_in(s(T26)) -> U4(f461_in(T26), s(T26)) 209.69/54.15 U4(f461_out1(X70, X71), s(T26)) -> f413_out1(s(s(X71))) 209.69/54.15 f92_in(s(T8)) -> U5(f98_in(T8), s(T8)) 209.69/54.15 U5(f98_out1(X18, X19, X20), s(T8)) -> f92_out1(s(X20)) 209.69/54.15 f123_in(T12) -> U6(f186_in(T12), T12) 209.69/54.15 U6(f186_out1(X29), T12) -> f123_out1(s(X29)) 209.69/54.15 f268_in(0) -> f268_out1(0) 209.69/54.15 f268_in(s(s(T22))) -> U7(f98_in(T22), s(s(T22))) 209.69/54.15 U7(f98_out1(X58, X59, X60), s(s(T22))) -> f268_out1(s(X60)) 209.69/54.15 f12_in(T4) -> U8(f92_in(T4), T4) 209.69/54.15 U8(f92_out1(T5), T4) -> U9(f93_in(T5), T4, T5) 209.69/54.15 U9(f93_out1(X7), T4, T5) -> f12_out1(T5, X7) 209.69/54.15 f93_in(T5) -> U10(f413_in(T5), T5) 209.69/54.15 U10(f413_out1(T23), T5) -> U11(f3_in(T23), T5, T23) 209.69/54.15 U11(f3_out1, T5, T23) -> f93_out1(T23) 209.69/54.15 f98_in(T8) -> U12(f123_in(T8), T8) 209.69/54.15 U12(f123_out1(T9), T8) -> U13(f128_in(T9), T8, T9) 209.69/54.15 U13(f128_out1(X19, X20), T8, T9) -> f98_out1(T9, X19, X20) 209.69/54.15 f128_in(T9) -> U14(f266_in(T9), T9) 209.69/54.15 U14(f266_out1(T16), T9) -> U15(f268_in(T16), T9, T16) 209.69/54.15 U15(f268_out1(X20), T9, T16) -> f128_out1(T16, X20) 209.69/54.15 f461_in(T26) -> U16(f266_in(s(T26)), T26) 209.69/54.15 U16(f266_out1(T27), T26) -> U17(f413_in(T27), T26, T27) 209.69/54.15 U17(f413_out1(X71), T26, T27) -> f461_out1(T27, X71) 209.69/54.15 209.69/54.15 Q is empty. 209.69/54.15 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (91) Overlay + Local Confluence (EQUIVALENT) 209.69/54.15 The TRS is overlay and locally confluent. By [NOC] we can switch to innermost. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (92) 209.69/54.15 Obligation: 209.69/54.15 Q restricted rewrite system: 209.69/54.15 The TRS R consists of the following rules: 209.69/54.15 209.69/54.15 f3_in(s(T4)) -> U1(f12_in(T4), s(T4)) 209.69/54.15 U1(f12_out1(X6, X7), s(T4)) -> f3_out1 209.69/54.15 f186_in(0) -> f186_out1(0) 209.69/54.15 f186_in(s(T15)) -> U2(f186_in(T15), s(T15)) 209.69/54.15 U2(f186_out1(X38), s(T15)) -> f186_out1(s(X38)) 209.69/54.15 f266_in(0) -> f266_out1(0) 209.69/54.15 f266_in(s(0)) -> f266_out1(0) 209.69/54.15 f266_in(s(s(T19))) -> U3(f266_in(s(T19)), s(s(T19))) 209.69/54.15 U3(f266_out1(X47), s(s(T19))) -> f266_out1(s(X47)) 209.69/54.15 f413_in(0) -> f413_out1(0) 209.69/54.15 f413_in(s(T26)) -> U4(f461_in(T26), s(T26)) 209.69/54.15 U4(f461_out1(X70, X71), s(T26)) -> f413_out1(s(s(X71))) 209.69/54.15 f92_in(s(T8)) -> U5(f98_in(T8), s(T8)) 209.69/54.15 U5(f98_out1(X18, X19, X20), s(T8)) -> f92_out1(s(X20)) 209.69/54.15 f123_in(T12) -> U6(f186_in(T12), T12) 209.69/54.15 U6(f186_out1(X29), T12) -> f123_out1(s(X29)) 209.69/54.15 f268_in(0) -> f268_out1(0) 209.69/54.15 f268_in(s(s(T22))) -> U7(f98_in(T22), s(s(T22))) 209.69/54.15 U7(f98_out1(X58, X59, X60), s(s(T22))) -> f268_out1(s(X60)) 209.69/54.15 f12_in(T4) -> U8(f92_in(T4), T4) 209.69/54.15 U8(f92_out1(T5), T4) -> U9(f93_in(T5), T4, T5) 209.69/54.15 U9(f93_out1(X7), T4, T5) -> f12_out1(T5, X7) 209.69/54.15 f93_in(T5) -> U10(f413_in(T5), T5) 209.69/54.15 U10(f413_out1(T23), T5) -> U11(f3_in(T23), T5, T23) 209.69/54.15 U11(f3_out1, T5, T23) -> f93_out1(T23) 209.69/54.15 f98_in(T8) -> U12(f123_in(T8), T8) 209.69/54.15 U12(f123_out1(T9), T8) -> U13(f128_in(T9), T8, T9) 209.69/54.15 U13(f128_out1(X19, X20), T8, T9) -> f98_out1(T9, X19, X20) 209.69/54.15 f128_in(T9) -> U14(f266_in(T9), T9) 209.69/54.15 U14(f266_out1(T16), T9) -> U15(f268_in(T16), T9, T16) 209.69/54.15 U15(f268_out1(X20), T9, T16) -> f128_out1(T16, X20) 209.69/54.15 f461_in(T26) -> U16(f266_in(s(T26)), T26) 209.69/54.15 U16(f266_out1(T27), T26) -> U17(f413_in(T27), T26, T27) 209.69/54.15 U17(f413_out1(X71), T26, T27) -> f461_out1(T27, X71) 209.69/54.15 209.69/54.15 The set Q consists of the following terms: 209.69/54.15 209.69/54.15 f3_in(s(x0)) 209.69/54.15 U1(f12_out1(x0, x1), s(x2)) 209.69/54.15 f186_in(0) 209.69/54.15 f186_in(s(x0)) 209.69/54.15 U2(f186_out1(x0), s(x1)) 209.69/54.15 f266_in(0) 209.69/54.15 f266_in(s(0)) 209.69/54.15 f266_in(s(s(x0))) 209.69/54.15 U3(f266_out1(x0), s(s(x1))) 209.69/54.15 f413_in(0) 209.69/54.15 f413_in(s(x0)) 209.69/54.15 U4(f461_out1(x0, x1), s(x2)) 209.69/54.15 f92_in(s(x0)) 209.69/54.15 U5(f98_out1(x0, x1, x2), s(x3)) 209.69/54.15 f123_in(x0) 209.69/54.15 U6(f186_out1(x0), x1) 209.69/54.15 f268_in(0) 209.69/54.15 f268_in(s(s(x0))) 209.69/54.15 U7(f98_out1(x0, x1, x2), s(s(x3))) 209.69/54.15 f12_in(x0) 209.69/54.15 U8(f92_out1(x0), x1) 209.69/54.15 U9(f93_out1(x0), x1, x2) 209.69/54.15 f93_in(x0) 209.69/54.15 U10(f413_out1(x0), x1) 209.69/54.15 U11(f3_out1, x0, x1) 209.69/54.15 f98_in(x0) 209.69/54.15 U12(f123_out1(x0), x1) 209.69/54.15 U13(f128_out1(x0, x1), x2, x3) 209.69/54.15 f128_in(x0) 209.69/54.15 U14(f266_out1(x0), x1) 209.69/54.15 U15(f268_out1(x0), x1, x2) 209.69/54.15 f461_in(x0) 209.69/54.15 U16(f266_out1(x0), x1) 209.69/54.15 U17(f413_out1(x0), x1, x2) 209.69/54.15 209.69/54.15 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (93) DependencyPairsProof (EQUIVALENT) 209.69/54.15 Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (94) 209.69/54.15 Obligation: 209.69/54.15 Q DP problem: 209.69/54.15 The TRS P consists of the following rules: 209.69/54.15 209.69/54.15 F3_IN(s(T4)) -> U1^1(f12_in(T4), s(T4)) 209.69/54.15 F3_IN(s(T4)) -> F12_IN(T4) 209.69/54.15 F186_IN(s(T15)) -> U2^1(f186_in(T15), s(T15)) 209.69/54.15 F186_IN(s(T15)) -> F186_IN(T15) 209.69/54.15 F266_IN(s(s(T19))) -> U3^1(f266_in(s(T19)), s(s(T19))) 209.69/54.15 F266_IN(s(s(T19))) -> F266_IN(s(T19)) 209.69/54.15 F413_IN(s(T26)) -> U4^1(f461_in(T26), s(T26)) 209.69/54.15 F413_IN(s(T26)) -> F461_IN(T26) 209.69/54.15 F92_IN(s(T8)) -> U5^1(f98_in(T8), s(T8)) 209.69/54.15 F92_IN(s(T8)) -> F98_IN(T8) 209.69/54.15 F123_IN(T12) -> U6^1(f186_in(T12), T12) 209.69/54.15 F123_IN(T12) -> F186_IN(T12) 209.69/54.15 F268_IN(s(s(T22))) -> U7^1(f98_in(T22), s(s(T22))) 209.69/54.15 F268_IN(s(s(T22))) -> F98_IN(T22) 209.69/54.15 F12_IN(T4) -> U8^1(f92_in(T4), T4) 209.69/54.15 F12_IN(T4) -> F92_IN(T4) 209.69/54.15 U8^1(f92_out1(T5), T4) -> U9^1(f93_in(T5), T4, T5) 209.69/54.15 U8^1(f92_out1(T5), T4) -> F93_IN(T5) 209.69/54.15 F93_IN(T5) -> U10^1(f413_in(T5), T5) 209.69/54.15 F93_IN(T5) -> F413_IN(T5) 209.69/54.15 U10^1(f413_out1(T23), T5) -> U11^1(f3_in(T23), T5, T23) 209.69/54.15 U10^1(f413_out1(T23), T5) -> F3_IN(T23) 209.69/54.15 F98_IN(T8) -> U12^1(f123_in(T8), T8) 209.69/54.15 F98_IN(T8) -> F123_IN(T8) 209.69/54.15 U12^1(f123_out1(T9), T8) -> U13^1(f128_in(T9), T8, T9) 209.69/54.15 U12^1(f123_out1(T9), T8) -> F128_IN(T9) 209.69/54.15 F128_IN(T9) -> U14^1(f266_in(T9), T9) 209.69/54.15 F128_IN(T9) -> F266_IN(T9) 209.69/54.15 U14^1(f266_out1(T16), T9) -> U15^1(f268_in(T16), T9, T16) 209.69/54.15 U14^1(f266_out1(T16), T9) -> F268_IN(T16) 209.69/54.15 F461_IN(T26) -> U16^1(f266_in(s(T26)), T26) 209.69/54.15 F461_IN(T26) -> F266_IN(s(T26)) 209.69/54.15 U16^1(f266_out1(T27), T26) -> U17^1(f413_in(T27), T26, T27) 209.69/54.15 U16^1(f266_out1(T27), T26) -> F413_IN(T27) 209.69/54.15 209.69/54.15 The TRS R consists of the following rules: 209.69/54.15 209.69/54.15 f3_in(s(T4)) -> U1(f12_in(T4), s(T4)) 209.69/54.15 U1(f12_out1(X6, X7), s(T4)) -> f3_out1 209.69/54.15 f186_in(0) -> f186_out1(0) 209.69/54.15 f186_in(s(T15)) -> U2(f186_in(T15), s(T15)) 209.69/54.15 U2(f186_out1(X38), s(T15)) -> f186_out1(s(X38)) 209.69/54.15 f266_in(0) -> f266_out1(0) 209.69/54.15 f266_in(s(0)) -> f266_out1(0) 209.69/54.15 f266_in(s(s(T19))) -> U3(f266_in(s(T19)), s(s(T19))) 209.69/54.15 U3(f266_out1(X47), s(s(T19))) -> f266_out1(s(X47)) 209.69/54.15 f413_in(0) -> f413_out1(0) 209.69/54.15 f413_in(s(T26)) -> U4(f461_in(T26), s(T26)) 209.69/54.15 U4(f461_out1(X70, X71), s(T26)) -> f413_out1(s(s(X71))) 209.69/54.15 f92_in(s(T8)) -> U5(f98_in(T8), s(T8)) 209.69/54.15 U5(f98_out1(X18, X19, X20), s(T8)) -> f92_out1(s(X20)) 209.69/54.15 f123_in(T12) -> U6(f186_in(T12), T12) 209.69/54.15 U6(f186_out1(X29), T12) -> f123_out1(s(X29)) 209.69/54.15 f268_in(0) -> f268_out1(0) 209.69/54.15 f268_in(s(s(T22))) -> U7(f98_in(T22), s(s(T22))) 209.69/54.15 U7(f98_out1(X58, X59, X60), s(s(T22))) -> f268_out1(s(X60)) 209.69/54.15 f12_in(T4) -> U8(f92_in(T4), T4) 209.69/54.15 U8(f92_out1(T5), T4) -> U9(f93_in(T5), T4, T5) 209.69/54.15 U9(f93_out1(X7), T4, T5) -> f12_out1(T5, X7) 209.69/54.15 f93_in(T5) -> U10(f413_in(T5), T5) 209.69/54.15 U10(f413_out1(T23), T5) -> U11(f3_in(T23), T5, T23) 209.69/54.15 U11(f3_out1, T5, T23) -> f93_out1(T23) 209.69/54.15 f98_in(T8) -> U12(f123_in(T8), T8) 209.69/54.15 U12(f123_out1(T9), T8) -> U13(f128_in(T9), T8, T9) 209.69/54.15 U13(f128_out1(X19, X20), T8, T9) -> f98_out1(T9, X19, X20) 209.69/54.15 f128_in(T9) -> U14(f266_in(T9), T9) 209.69/54.15 U14(f266_out1(T16), T9) -> U15(f268_in(T16), T9, T16) 209.69/54.15 U15(f268_out1(X20), T9, T16) -> f128_out1(T16, X20) 209.69/54.15 f461_in(T26) -> U16(f266_in(s(T26)), T26) 209.69/54.15 U16(f266_out1(T27), T26) -> U17(f413_in(T27), T26, T27) 209.69/54.15 U17(f413_out1(X71), T26, T27) -> f461_out1(T27, X71) 209.69/54.15 209.69/54.15 The set Q consists of the following terms: 209.69/54.15 209.69/54.15 f3_in(s(x0)) 209.69/54.15 U1(f12_out1(x0, x1), s(x2)) 209.69/54.15 f186_in(0) 209.69/54.15 f186_in(s(x0)) 209.69/54.15 U2(f186_out1(x0), s(x1)) 209.69/54.15 f266_in(0) 209.69/54.15 f266_in(s(0)) 209.69/54.15 f266_in(s(s(x0))) 209.69/54.15 U3(f266_out1(x0), s(s(x1))) 209.69/54.15 f413_in(0) 209.69/54.15 f413_in(s(x0)) 209.69/54.15 U4(f461_out1(x0, x1), s(x2)) 209.69/54.15 f92_in(s(x0)) 209.69/54.15 U5(f98_out1(x0, x1, x2), s(x3)) 209.69/54.15 f123_in(x0) 209.69/54.15 U6(f186_out1(x0), x1) 209.69/54.15 f268_in(0) 209.69/54.15 f268_in(s(s(x0))) 209.69/54.15 U7(f98_out1(x0, x1, x2), s(s(x3))) 209.69/54.15 f12_in(x0) 209.69/54.15 U8(f92_out1(x0), x1) 209.69/54.15 U9(f93_out1(x0), x1, x2) 209.69/54.15 f93_in(x0) 209.69/54.15 U10(f413_out1(x0), x1) 209.69/54.15 U11(f3_out1, x0, x1) 209.69/54.15 f98_in(x0) 209.69/54.15 U12(f123_out1(x0), x1) 209.69/54.15 U13(f128_out1(x0, x1), x2, x3) 209.69/54.15 f128_in(x0) 209.69/54.15 U14(f266_out1(x0), x1) 209.69/54.15 U15(f268_out1(x0), x1, x2) 209.69/54.15 f461_in(x0) 209.69/54.15 U16(f266_out1(x0), x1) 209.69/54.15 U17(f413_out1(x0), x1, x2) 209.69/54.15 209.69/54.15 We have to consider all minimal (P,Q,R)-chains. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (95) DependencyGraphProof (EQUIVALENT) 209.69/54.15 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 5 SCCs with 19 less nodes. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (96) 209.69/54.15 Complex Obligation (AND) 209.69/54.15 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (97) 209.69/54.15 Obligation: 209.69/54.15 Q DP problem: 209.69/54.15 The TRS P consists of the following rules: 209.69/54.15 209.69/54.15 F266_IN(s(s(T19))) -> F266_IN(s(T19)) 209.69/54.15 209.69/54.15 The TRS R consists of the following rules: 209.69/54.15 209.69/54.15 f3_in(s(T4)) -> U1(f12_in(T4), s(T4)) 209.69/54.15 U1(f12_out1(X6, X7), s(T4)) -> f3_out1 209.69/54.15 f186_in(0) -> f186_out1(0) 209.69/54.15 f186_in(s(T15)) -> U2(f186_in(T15), s(T15)) 209.69/54.15 U2(f186_out1(X38), s(T15)) -> f186_out1(s(X38)) 209.69/54.15 f266_in(0) -> f266_out1(0) 209.69/54.15 f266_in(s(0)) -> f266_out1(0) 209.69/54.15 f266_in(s(s(T19))) -> U3(f266_in(s(T19)), s(s(T19))) 209.69/54.15 U3(f266_out1(X47), s(s(T19))) -> f266_out1(s(X47)) 209.69/54.15 f413_in(0) -> f413_out1(0) 209.69/54.15 f413_in(s(T26)) -> U4(f461_in(T26), s(T26)) 209.69/54.15 U4(f461_out1(X70, X71), s(T26)) -> f413_out1(s(s(X71))) 209.69/54.15 f92_in(s(T8)) -> U5(f98_in(T8), s(T8)) 209.69/54.15 U5(f98_out1(X18, X19, X20), s(T8)) -> f92_out1(s(X20)) 209.69/54.15 f123_in(T12) -> U6(f186_in(T12), T12) 209.69/54.15 U6(f186_out1(X29), T12) -> f123_out1(s(X29)) 209.69/54.15 f268_in(0) -> f268_out1(0) 209.69/54.15 f268_in(s(s(T22))) -> U7(f98_in(T22), s(s(T22))) 209.69/54.15 U7(f98_out1(X58, X59, X60), s(s(T22))) -> f268_out1(s(X60)) 209.69/54.15 f12_in(T4) -> U8(f92_in(T4), T4) 209.69/54.15 U8(f92_out1(T5), T4) -> U9(f93_in(T5), T4, T5) 209.69/54.15 U9(f93_out1(X7), T4, T5) -> f12_out1(T5, X7) 209.69/54.15 f93_in(T5) -> U10(f413_in(T5), T5) 209.69/54.15 U10(f413_out1(T23), T5) -> U11(f3_in(T23), T5, T23) 209.69/54.15 U11(f3_out1, T5, T23) -> f93_out1(T23) 209.69/54.15 f98_in(T8) -> U12(f123_in(T8), T8) 209.69/54.15 U12(f123_out1(T9), T8) -> U13(f128_in(T9), T8, T9) 209.69/54.15 U13(f128_out1(X19, X20), T8, T9) -> f98_out1(T9, X19, X20) 209.69/54.15 f128_in(T9) -> U14(f266_in(T9), T9) 209.69/54.15 U14(f266_out1(T16), T9) -> U15(f268_in(T16), T9, T16) 209.69/54.15 U15(f268_out1(X20), T9, T16) -> f128_out1(T16, X20) 209.69/54.15 f461_in(T26) -> U16(f266_in(s(T26)), T26) 209.69/54.15 U16(f266_out1(T27), T26) -> U17(f413_in(T27), T26, T27) 209.69/54.15 U17(f413_out1(X71), T26, T27) -> f461_out1(T27, X71) 209.69/54.15 209.69/54.15 The set Q consists of the following terms: 209.69/54.15 209.69/54.15 f3_in(s(x0)) 209.69/54.15 U1(f12_out1(x0, x1), s(x2)) 209.69/54.15 f186_in(0) 209.69/54.15 f186_in(s(x0)) 209.69/54.15 U2(f186_out1(x0), s(x1)) 209.69/54.15 f266_in(0) 209.69/54.15 f266_in(s(0)) 209.69/54.15 f266_in(s(s(x0))) 209.69/54.15 U3(f266_out1(x0), s(s(x1))) 209.69/54.15 f413_in(0) 209.69/54.15 f413_in(s(x0)) 209.69/54.15 U4(f461_out1(x0, x1), s(x2)) 209.69/54.15 f92_in(s(x0)) 209.69/54.15 U5(f98_out1(x0, x1, x2), s(x3)) 209.69/54.15 f123_in(x0) 209.69/54.15 U6(f186_out1(x0), x1) 209.69/54.15 f268_in(0) 209.69/54.15 f268_in(s(s(x0))) 209.69/54.15 U7(f98_out1(x0, x1, x2), s(s(x3))) 209.69/54.15 f12_in(x0) 209.69/54.15 U8(f92_out1(x0), x1) 209.69/54.15 U9(f93_out1(x0), x1, x2) 209.69/54.15 f93_in(x0) 209.69/54.15 U10(f413_out1(x0), x1) 209.69/54.15 U11(f3_out1, x0, x1) 209.69/54.15 f98_in(x0) 209.69/54.15 U12(f123_out1(x0), x1) 209.69/54.15 U13(f128_out1(x0, x1), x2, x3) 209.69/54.15 f128_in(x0) 209.69/54.15 U14(f266_out1(x0), x1) 209.69/54.15 U15(f268_out1(x0), x1, x2) 209.69/54.15 f461_in(x0) 209.69/54.15 U16(f266_out1(x0), x1) 209.69/54.15 U17(f413_out1(x0), x1, x2) 209.69/54.15 209.69/54.15 We have to consider all minimal (P,Q,R)-chains. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (98) UsableRulesProof (EQUIVALENT) 209.69/54.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. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (99) 209.69/54.15 Obligation: 209.69/54.15 Q DP problem: 209.69/54.15 The TRS P consists of the following rules: 209.69/54.15 209.69/54.15 F266_IN(s(s(T19))) -> F266_IN(s(T19)) 209.69/54.15 209.69/54.15 R is empty. 209.69/54.15 The set Q consists of the following terms: 209.69/54.15 209.69/54.15 f3_in(s(x0)) 209.69/54.15 U1(f12_out1(x0, x1), s(x2)) 209.69/54.15 f186_in(0) 209.69/54.15 f186_in(s(x0)) 209.69/54.15 U2(f186_out1(x0), s(x1)) 209.69/54.15 f266_in(0) 209.69/54.15 f266_in(s(0)) 209.69/54.15 f266_in(s(s(x0))) 209.69/54.15 U3(f266_out1(x0), s(s(x1))) 209.69/54.15 f413_in(0) 209.69/54.15 f413_in(s(x0)) 209.69/54.15 U4(f461_out1(x0, x1), s(x2)) 209.69/54.15 f92_in(s(x0)) 209.69/54.15 U5(f98_out1(x0, x1, x2), s(x3)) 209.69/54.15 f123_in(x0) 209.69/54.15 U6(f186_out1(x0), x1) 209.69/54.15 f268_in(0) 209.69/54.15 f268_in(s(s(x0))) 209.69/54.15 U7(f98_out1(x0, x1, x2), s(s(x3))) 209.69/54.15 f12_in(x0) 209.69/54.15 U8(f92_out1(x0), x1) 209.69/54.15 U9(f93_out1(x0), x1, x2) 209.69/54.15 f93_in(x0) 209.69/54.15 U10(f413_out1(x0), x1) 209.69/54.15 U11(f3_out1, x0, x1) 209.69/54.15 f98_in(x0) 209.69/54.15 U12(f123_out1(x0), x1) 209.69/54.15 U13(f128_out1(x0, x1), x2, x3) 209.69/54.15 f128_in(x0) 209.69/54.15 U14(f266_out1(x0), x1) 209.69/54.15 U15(f268_out1(x0), x1, x2) 209.69/54.15 f461_in(x0) 209.69/54.15 U16(f266_out1(x0), x1) 209.69/54.15 U17(f413_out1(x0), x1, x2) 209.69/54.15 209.69/54.15 We have to consider all minimal (P,Q,R)-chains. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (100) QReductionProof (EQUIVALENT) 209.69/54.15 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 209.69/54.15 209.69/54.15 f3_in(s(x0)) 209.69/54.15 U1(f12_out1(x0, x1), s(x2)) 209.69/54.15 f186_in(0) 209.69/54.15 f186_in(s(x0)) 209.69/54.15 U2(f186_out1(x0), s(x1)) 209.69/54.15 f266_in(0) 209.69/54.15 f266_in(s(0)) 209.69/54.15 f266_in(s(s(x0))) 209.69/54.15 U3(f266_out1(x0), s(s(x1))) 209.69/54.15 f413_in(0) 209.69/54.15 f413_in(s(x0)) 209.69/54.15 U4(f461_out1(x0, x1), s(x2)) 209.69/54.15 f92_in(s(x0)) 209.69/54.15 U5(f98_out1(x0, x1, x2), s(x3)) 209.69/54.15 f123_in(x0) 209.69/54.15 U6(f186_out1(x0), x1) 209.69/54.15 f268_in(0) 209.69/54.15 f268_in(s(s(x0))) 209.69/54.15 U7(f98_out1(x0, x1, x2), s(s(x3))) 209.69/54.15 f12_in(x0) 209.69/54.15 U8(f92_out1(x0), x1) 209.69/54.15 U9(f93_out1(x0), x1, x2) 209.69/54.15 f93_in(x0) 209.69/54.15 U10(f413_out1(x0), x1) 209.69/54.15 U11(f3_out1, x0, x1) 209.69/54.15 f98_in(x0) 209.69/54.15 U12(f123_out1(x0), x1) 209.69/54.15 U13(f128_out1(x0, x1), x2, x3) 209.69/54.15 f128_in(x0) 209.69/54.15 U14(f266_out1(x0), x1) 209.69/54.15 U15(f268_out1(x0), x1, x2) 209.69/54.15 f461_in(x0) 209.69/54.15 U16(f266_out1(x0), x1) 209.69/54.15 U17(f413_out1(x0), x1, x2) 209.69/54.15 209.69/54.15 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (101) 209.69/54.15 Obligation: 209.69/54.15 Q DP problem: 209.69/54.15 The TRS P consists of the following rules: 209.69/54.15 209.69/54.15 F266_IN(s(s(T19))) -> F266_IN(s(T19)) 209.69/54.15 209.69/54.15 R is empty. 209.69/54.15 Q is empty. 209.69/54.15 We have to consider all minimal (P,Q,R)-chains. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (102) QDPSizeChangeProof (EQUIVALENT) 209.69/54.15 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. 209.69/54.15 209.69/54.15 From the DPs we obtained the following set of size-change graphs: 209.69/54.15 *F266_IN(s(s(T19))) -> F266_IN(s(T19)) 209.69/54.15 The graph contains the following edges 1 > 1 209.69/54.15 209.69/54.15 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (103) 209.69/54.15 YES 209.69/54.15 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (104) 209.69/54.15 Obligation: 209.69/54.15 Q DP problem: 209.69/54.15 The TRS P consists of the following rules: 209.69/54.15 209.69/54.15 F461_IN(T26) -> U16^1(f266_in(s(T26)), T26) 209.69/54.15 U16^1(f266_out1(T27), T26) -> F413_IN(T27) 209.69/54.15 F413_IN(s(T26)) -> F461_IN(T26) 209.69/54.15 209.69/54.15 The TRS R consists of the following rules: 209.69/54.15 209.69/54.15 f3_in(s(T4)) -> U1(f12_in(T4), s(T4)) 209.69/54.15 U1(f12_out1(X6, X7), s(T4)) -> f3_out1 209.69/54.15 f186_in(0) -> f186_out1(0) 209.69/54.15 f186_in(s(T15)) -> U2(f186_in(T15), s(T15)) 209.69/54.15 U2(f186_out1(X38), s(T15)) -> f186_out1(s(X38)) 209.69/54.15 f266_in(0) -> f266_out1(0) 209.69/54.15 f266_in(s(0)) -> f266_out1(0) 209.69/54.15 f266_in(s(s(T19))) -> U3(f266_in(s(T19)), s(s(T19))) 209.69/54.15 U3(f266_out1(X47), s(s(T19))) -> f266_out1(s(X47)) 209.69/54.15 f413_in(0) -> f413_out1(0) 209.69/54.15 f413_in(s(T26)) -> U4(f461_in(T26), s(T26)) 209.69/54.15 U4(f461_out1(X70, X71), s(T26)) -> f413_out1(s(s(X71))) 209.69/54.15 f92_in(s(T8)) -> U5(f98_in(T8), s(T8)) 209.69/54.15 U5(f98_out1(X18, X19, X20), s(T8)) -> f92_out1(s(X20)) 209.69/54.15 f123_in(T12) -> U6(f186_in(T12), T12) 209.69/54.15 U6(f186_out1(X29), T12) -> f123_out1(s(X29)) 209.69/54.15 f268_in(0) -> f268_out1(0) 209.69/54.15 f268_in(s(s(T22))) -> U7(f98_in(T22), s(s(T22))) 209.69/54.15 U7(f98_out1(X58, X59, X60), s(s(T22))) -> f268_out1(s(X60)) 209.69/54.15 f12_in(T4) -> U8(f92_in(T4), T4) 209.69/54.15 U8(f92_out1(T5), T4) -> U9(f93_in(T5), T4, T5) 209.69/54.15 U9(f93_out1(X7), T4, T5) -> f12_out1(T5, X7) 209.69/54.15 f93_in(T5) -> U10(f413_in(T5), T5) 209.69/54.15 U10(f413_out1(T23), T5) -> U11(f3_in(T23), T5, T23) 209.69/54.15 U11(f3_out1, T5, T23) -> f93_out1(T23) 209.69/54.15 f98_in(T8) -> U12(f123_in(T8), T8) 209.69/54.15 U12(f123_out1(T9), T8) -> U13(f128_in(T9), T8, T9) 209.69/54.15 U13(f128_out1(X19, X20), T8, T9) -> f98_out1(T9, X19, X20) 209.69/54.15 f128_in(T9) -> U14(f266_in(T9), T9) 209.69/54.15 U14(f266_out1(T16), T9) -> U15(f268_in(T16), T9, T16) 209.69/54.15 U15(f268_out1(X20), T9, T16) -> f128_out1(T16, X20) 209.69/54.15 f461_in(T26) -> U16(f266_in(s(T26)), T26) 209.69/54.15 U16(f266_out1(T27), T26) -> U17(f413_in(T27), T26, T27) 209.69/54.15 U17(f413_out1(X71), T26, T27) -> f461_out1(T27, X71) 209.69/54.15 209.69/54.15 The set Q consists of the following terms: 209.69/54.15 209.69/54.15 f3_in(s(x0)) 209.69/54.15 U1(f12_out1(x0, x1), s(x2)) 209.69/54.15 f186_in(0) 209.69/54.15 f186_in(s(x0)) 209.69/54.15 U2(f186_out1(x0), s(x1)) 209.69/54.15 f266_in(0) 209.69/54.15 f266_in(s(0)) 209.69/54.15 f266_in(s(s(x0))) 209.69/54.15 U3(f266_out1(x0), s(s(x1))) 209.69/54.15 f413_in(0) 209.69/54.15 f413_in(s(x0)) 209.69/54.15 U4(f461_out1(x0, x1), s(x2)) 209.69/54.15 f92_in(s(x0)) 209.69/54.15 U5(f98_out1(x0, x1, x2), s(x3)) 209.69/54.15 f123_in(x0) 209.69/54.15 U6(f186_out1(x0), x1) 209.69/54.15 f268_in(0) 209.69/54.15 f268_in(s(s(x0))) 209.69/54.15 U7(f98_out1(x0, x1, x2), s(s(x3))) 209.69/54.15 f12_in(x0) 209.69/54.15 U8(f92_out1(x0), x1) 209.69/54.15 U9(f93_out1(x0), x1, x2) 209.69/54.15 f93_in(x0) 209.69/54.15 U10(f413_out1(x0), x1) 209.69/54.15 U11(f3_out1, x0, x1) 209.69/54.15 f98_in(x0) 209.69/54.15 U12(f123_out1(x0), x1) 209.69/54.15 U13(f128_out1(x0, x1), x2, x3) 209.69/54.15 f128_in(x0) 209.69/54.15 U14(f266_out1(x0), x1) 209.69/54.15 U15(f268_out1(x0), x1, x2) 209.69/54.15 f461_in(x0) 209.69/54.15 U16(f266_out1(x0), x1) 209.69/54.15 U17(f413_out1(x0), x1, x2) 209.69/54.15 209.69/54.15 We have to consider all minimal (P,Q,R)-chains. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (105) UsableRulesProof (EQUIVALENT) 209.69/54.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. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (106) 209.69/54.15 Obligation: 209.69/54.15 Q DP problem: 209.69/54.15 The TRS P consists of the following rules: 209.69/54.15 209.69/54.15 F461_IN(T26) -> U16^1(f266_in(s(T26)), T26) 209.69/54.15 U16^1(f266_out1(T27), T26) -> F413_IN(T27) 209.69/54.15 F413_IN(s(T26)) -> F461_IN(T26) 209.69/54.15 209.69/54.15 The TRS R consists of the following rules: 209.69/54.15 209.69/54.15 f266_in(s(0)) -> f266_out1(0) 209.69/54.15 f266_in(s(s(T19))) -> U3(f266_in(s(T19)), s(s(T19))) 209.69/54.15 U3(f266_out1(X47), s(s(T19))) -> f266_out1(s(X47)) 209.69/54.15 209.69/54.15 The set Q consists of the following terms: 209.69/54.15 209.69/54.15 f3_in(s(x0)) 209.69/54.15 U1(f12_out1(x0, x1), s(x2)) 209.69/54.15 f186_in(0) 209.69/54.15 f186_in(s(x0)) 209.69/54.15 U2(f186_out1(x0), s(x1)) 209.69/54.15 f266_in(0) 209.69/54.15 f266_in(s(0)) 209.69/54.15 f266_in(s(s(x0))) 209.69/54.15 U3(f266_out1(x0), s(s(x1))) 209.69/54.15 f413_in(0) 209.69/54.15 f413_in(s(x0)) 209.69/54.15 U4(f461_out1(x0, x1), s(x2)) 209.69/54.15 f92_in(s(x0)) 209.69/54.15 U5(f98_out1(x0, x1, x2), s(x3)) 209.69/54.15 f123_in(x0) 209.69/54.15 U6(f186_out1(x0), x1) 209.69/54.15 f268_in(0) 209.69/54.15 f268_in(s(s(x0))) 209.69/54.15 U7(f98_out1(x0, x1, x2), s(s(x3))) 209.69/54.15 f12_in(x0) 209.69/54.15 U8(f92_out1(x0), x1) 209.69/54.15 U9(f93_out1(x0), x1, x2) 209.69/54.15 f93_in(x0) 209.69/54.15 U10(f413_out1(x0), x1) 209.69/54.15 U11(f3_out1, x0, x1) 209.69/54.15 f98_in(x0) 209.69/54.15 U12(f123_out1(x0), x1) 209.69/54.15 U13(f128_out1(x0, x1), x2, x3) 209.69/54.15 f128_in(x0) 209.69/54.15 U14(f266_out1(x0), x1) 209.69/54.15 U15(f268_out1(x0), x1, x2) 209.69/54.15 f461_in(x0) 209.69/54.15 U16(f266_out1(x0), x1) 209.69/54.15 U17(f413_out1(x0), x1, x2) 209.69/54.15 209.69/54.15 We have to consider all minimal (P,Q,R)-chains. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (107) QReductionProof (EQUIVALENT) 209.69/54.15 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 209.69/54.15 209.69/54.15 f3_in(s(x0)) 209.69/54.15 U1(f12_out1(x0, x1), s(x2)) 209.69/54.15 f186_in(0) 209.69/54.15 f186_in(s(x0)) 209.69/54.15 U2(f186_out1(x0), s(x1)) 209.69/54.15 f413_in(0) 209.69/54.15 f413_in(s(x0)) 209.69/54.15 U4(f461_out1(x0, x1), s(x2)) 209.69/54.15 f92_in(s(x0)) 209.69/54.15 U5(f98_out1(x0, x1, x2), s(x3)) 209.69/54.15 f123_in(x0) 209.69/54.15 U6(f186_out1(x0), x1) 209.69/54.15 f268_in(0) 209.69/54.15 f268_in(s(s(x0))) 209.69/54.15 U7(f98_out1(x0, x1, x2), s(s(x3))) 209.69/54.15 f12_in(x0) 209.69/54.15 U8(f92_out1(x0), x1) 209.69/54.15 U9(f93_out1(x0), x1, x2) 209.69/54.15 f93_in(x0) 209.69/54.15 U10(f413_out1(x0), x1) 209.69/54.15 U11(f3_out1, x0, x1) 209.69/54.15 f98_in(x0) 209.69/54.15 U12(f123_out1(x0), x1) 209.69/54.15 U13(f128_out1(x0, x1), x2, x3) 209.69/54.15 f128_in(x0) 209.69/54.15 U14(f266_out1(x0), x1) 209.69/54.15 U15(f268_out1(x0), x1, x2) 209.69/54.15 f461_in(x0) 209.69/54.15 U16(f266_out1(x0), x1) 209.69/54.15 U17(f413_out1(x0), x1, x2) 209.69/54.15 209.69/54.15 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (108) 209.69/54.15 Obligation: 209.69/54.15 Q DP problem: 209.69/54.15 The TRS P consists of the following rules: 209.69/54.15 209.69/54.15 F461_IN(T26) -> U16^1(f266_in(s(T26)), T26) 209.69/54.15 U16^1(f266_out1(T27), T26) -> F413_IN(T27) 209.69/54.15 F413_IN(s(T26)) -> F461_IN(T26) 209.69/54.15 209.69/54.15 The TRS R consists of the following rules: 209.69/54.15 209.69/54.15 f266_in(s(0)) -> f266_out1(0) 209.69/54.15 f266_in(s(s(T19))) -> U3(f266_in(s(T19)), s(s(T19))) 209.69/54.15 U3(f266_out1(X47), s(s(T19))) -> f266_out1(s(X47)) 209.69/54.15 209.69/54.15 The set Q consists of the following terms: 209.69/54.15 209.69/54.15 f266_in(0) 209.69/54.15 f266_in(s(0)) 209.69/54.15 f266_in(s(s(x0))) 209.69/54.15 U3(f266_out1(x0), s(s(x1))) 209.69/54.15 209.69/54.15 We have to consider all minimal (P,Q,R)-chains. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (109) QDPOrderProof (EQUIVALENT) 209.69/54.15 We use the reduction pair processor [LPAR04,JAR06]. 209.69/54.15 209.69/54.15 209.69/54.15 The following pairs can be oriented strictly and are deleted. 209.69/54.15 209.69/54.15 F461_IN(T26) -> U16^1(f266_in(s(T26)), T26) 209.69/54.15 F413_IN(s(T26)) -> F461_IN(T26) 209.69/54.15 The remaining pairs can at least be oriented weakly. 209.69/54.15 Used ordering: Polynomial Order [NEGPOLO,POLO] with Interpretation: 209.69/54.15 209.69/54.15 POL( U16^1_2(x_1, x_2) ) = max{0, x_1 - 2} 209.69/54.15 POL( f266_in_1(x_1) ) = max{0, x_1 - 2} 209.69/54.15 POL( s_1(x_1) ) = 2x_1 + 2 209.69/54.15 POL( 0 ) = 2 209.69/54.15 POL( f266_out1_1(x_1) ) = x_1 + 2 209.69/54.15 POL( U3_2(x_1, x_2) ) = 2x_1 209.69/54.15 POL( F461_IN_1(x_1) ) = 2x_1 + 1 209.69/54.15 POL( F413_IN_1(x_1) ) = x_1 209.69/54.15 209.69/54.15 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 209.69/54.15 209.69/54.15 f266_in(s(0)) -> f266_out1(0) 209.69/54.15 f266_in(s(s(T19))) -> U3(f266_in(s(T19)), s(s(T19))) 209.69/54.15 U3(f266_out1(X47), s(s(T19))) -> f266_out1(s(X47)) 209.69/54.15 209.69/54.15 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (110) 209.69/54.15 Obligation: 209.69/54.15 Q DP problem: 209.69/54.15 The TRS P consists of the following rules: 209.69/54.15 209.69/54.15 U16^1(f266_out1(T27), T26) -> F413_IN(T27) 209.69/54.15 209.69/54.15 The TRS R consists of the following rules: 209.69/54.15 209.69/54.15 f266_in(s(0)) -> f266_out1(0) 209.69/54.15 f266_in(s(s(T19))) -> U3(f266_in(s(T19)), s(s(T19))) 209.69/54.15 U3(f266_out1(X47), s(s(T19))) -> f266_out1(s(X47)) 209.69/54.15 209.69/54.15 The set Q consists of the following terms: 209.69/54.15 209.69/54.15 f266_in(0) 209.69/54.15 f266_in(s(0)) 209.69/54.15 f266_in(s(s(x0))) 209.69/54.15 U3(f266_out1(x0), s(s(x1))) 209.69/54.15 209.69/54.15 We have to consider all minimal (P,Q,R)-chains. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (111) DependencyGraphProof (EQUIVALENT) 209.69/54.15 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (112) 209.69/54.15 TRUE 209.69/54.15 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (113) 209.69/54.15 Obligation: 209.69/54.15 Q DP problem: 209.69/54.15 The TRS P consists of the following rules: 209.69/54.15 209.69/54.15 F186_IN(s(T15)) -> F186_IN(T15) 209.69/54.15 209.69/54.15 The TRS R consists of the following rules: 209.69/54.15 209.69/54.15 f3_in(s(T4)) -> U1(f12_in(T4), s(T4)) 209.69/54.15 U1(f12_out1(X6, X7), s(T4)) -> f3_out1 209.69/54.15 f186_in(0) -> f186_out1(0) 209.69/54.15 f186_in(s(T15)) -> U2(f186_in(T15), s(T15)) 209.69/54.15 U2(f186_out1(X38), s(T15)) -> f186_out1(s(X38)) 209.69/54.15 f266_in(0) -> f266_out1(0) 209.69/54.15 f266_in(s(0)) -> f266_out1(0) 209.69/54.15 f266_in(s(s(T19))) -> U3(f266_in(s(T19)), s(s(T19))) 209.69/54.15 U3(f266_out1(X47), s(s(T19))) -> f266_out1(s(X47)) 209.69/54.15 f413_in(0) -> f413_out1(0) 209.69/54.15 f413_in(s(T26)) -> U4(f461_in(T26), s(T26)) 209.69/54.15 U4(f461_out1(X70, X71), s(T26)) -> f413_out1(s(s(X71))) 209.69/54.15 f92_in(s(T8)) -> U5(f98_in(T8), s(T8)) 209.69/54.15 U5(f98_out1(X18, X19, X20), s(T8)) -> f92_out1(s(X20)) 209.69/54.15 f123_in(T12) -> U6(f186_in(T12), T12) 209.69/54.15 U6(f186_out1(X29), T12) -> f123_out1(s(X29)) 209.69/54.15 f268_in(0) -> f268_out1(0) 209.69/54.15 f268_in(s(s(T22))) -> U7(f98_in(T22), s(s(T22))) 209.69/54.15 U7(f98_out1(X58, X59, X60), s(s(T22))) -> f268_out1(s(X60)) 209.69/54.15 f12_in(T4) -> U8(f92_in(T4), T4) 209.69/54.15 U8(f92_out1(T5), T4) -> U9(f93_in(T5), T4, T5) 209.69/54.15 U9(f93_out1(X7), T4, T5) -> f12_out1(T5, X7) 209.69/54.15 f93_in(T5) -> U10(f413_in(T5), T5) 209.69/54.15 U10(f413_out1(T23), T5) -> U11(f3_in(T23), T5, T23) 209.69/54.15 U11(f3_out1, T5, T23) -> f93_out1(T23) 209.69/54.15 f98_in(T8) -> U12(f123_in(T8), T8) 209.69/54.15 U12(f123_out1(T9), T8) -> U13(f128_in(T9), T8, T9) 209.69/54.15 U13(f128_out1(X19, X20), T8, T9) -> f98_out1(T9, X19, X20) 209.69/54.15 f128_in(T9) -> U14(f266_in(T9), T9) 209.69/54.15 U14(f266_out1(T16), T9) -> U15(f268_in(T16), T9, T16) 209.69/54.15 U15(f268_out1(X20), T9, T16) -> f128_out1(T16, X20) 209.69/54.15 f461_in(T26) -> U16(f266_in(s(T26)), T26) 209.69/54.15 U16(f266_out1(T27), T26) -> U17(f413_in(T27), T26, T27) 209.69/54.15 U17(f413_out1(X71), T26, T27) -> f461_out1(T27, X71) 209.69/54.15 209.69/54.15 The set Q consists of the following terms: 209.69/54.15 209.69/54.15 f3_in(s(x0)) 209.69/54.15 U1(f12_out1(x0, x1), s(x2)) 209.69/54.15 f186_in(0) 209.69/54.15 f186_in(s(x0)) 209.69/54.15 U2(f186_out1(x0), s(x1)) 209.69/54.15 f266_in(0) 209.69/54.15 f266_in(s(0)) 209.69/54.15 f266_in(s(s(x0))) 209.69/54.15 U3(f266_out1(x0), s(s(x1))) 209.69/54.15 f413_in(0) 209.69/54.15 f413_in(s(x0)) 209.69/54.15 U4(f461_out1(x0, x1), s(x2)) 209.69/54.15 f92_in(s(x0)) 209.69/54.15 U5(f98_out1(x0, x1, x2), s(x3)) 209.69/54.15 f123_in(x0) 209.69/54.15 U6(f186_out1(x0), x1) 209.69/54.15 f268_in(0) 209.69/54.15 f268_in(s(s(x0))) 209.69/54.15 U7(f98_out1(x0, x1, x2), s(s(x3))) 209.69/54.15 f12_in(x0) 209.69/54.15 U8(f92_out1(x0), x1) 209.69/54.15 U9(f93_out1(x0), x1, x2) 209.69/54.15 f93_in(x0) 209.69/54.15 U10(f413_out1(x0), x1) 209.69/54.15 U11(f3_out1, x0, x1) 209.69/54.15 f98_in(x0) 209.69/54.15 U12(f123_out1(x0), x1) 209.69/54.15 U13(f128_out1(x0, x1), x2, x3) 209.69/54.15 f128_in(x0) 209.69/54.15 U14(f266_out1(x0), x1) 209.69/54.15 U15(f268_out1(x0), x1, x2) 209.69/54.15 f461_in(x0) 209.69/54.15 U16(f266_out1(x0), x1) 209.69/54.15 U17(f413_out1(x0), x1, x2) 209.69/54.15 209.69/54.15 We have to consider all minimal (P,Q,R)-chains. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (114) UsableRulesProof (EQUIVALENT) 209.69/54.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. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (115) 209.69/54.15 Obligation: 209.69/54.15 Q DP problem: 209.69/54.15 The TRS P consists of the following rules: 209.69/54.15 209.69/54.15 F186_IN(s(T15)) -> F186_IN(T15) 209.69/54.15 209.69/54.15 R is empty. 209.69/54.15 The set Q consists of the following terms: 209.69/54.15 209.69/54.15 f3_in(s(x0)) 209.69/54.15 U1(f12_out1(x0, x1), s(x2)) 209.69/54.15 f186_in(0) 209.69/54.15 f186_in(s(x0)) 209.69/54.15 U2(f186_out1(x0), s(x1)) 209.69/54.15 f266_in(0) 209.69/54.15 f266_in(s(0)) 209.69/54.15 f266_in(s(s(x0))) 209.69/54.15 U3(f266_out1(x0), s(s(x1))) 209.69/54.15 f413_in(0) 209.69/54.15 f413_in(s(x0)) 209.69/54.15 U4(f461_out1(x0, x1), s(x2)) 209.69/54.15 f92_in(s(x0)) 209.69/54.15 U5(f98_out1(x0, x1, x2), s(x3)) 209.69/54.15 f123_in(x0) 209.69/54.15 U6(f186_out1(x0), x1) 209.69/54.15 f268_in(0) 209.69/54.15 f268_in(s(s(x0))) 209.69/54.15 U7(f98_out1(x0, x1, x2), s(s(x3))) 209.69/54.15 f12_in(x0) 209.69/54.15 U8(f92_out1(x0), x1) 209.69/54.15 U9(f93_out1(x0), x1, x2) 209.69/54.15 f93_in(x0) 209.69/54.15 U10(f413_out1(x0), x1) 209.69/54.15 U11(f3_out1, x0, x1) 209.69/54.15 f98_in(x0) 209.69/54.15 U12(f123_out1(x0), x1) 209.69/54.15 U13(f128_out1(x0, x1), x2, x3) 209.69/54.15 f128_in(x0) 209.69/54.15 U14(f266_out1(x0), x1) 209.69/54.15 U15(f268_out1(x0), x1, x2) 209.69/54.15 f461_in(x0) 209.69/54.15 U16(f266_out1(x0), x1) 209.69/54.15 U17(f413_out1(x0), x1, x2) 209.69/54.15 209.69/54.15 We have to consider all minimal (P,Q,R)-chains. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (116) QReductionProof (EQUIVALENT) 209.69/54.15 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 209.69/54.15 209.69/54.15 f3_in(s(x0)) 209.69/54.15 U1(f12_out1(x0, x1), s(x2)) 209.69/54.15 f186_in(0) 209.69/54.15 f186_in(s(x0)) 209.69/54.15 U2(f186_out1(x0), s(x1)) 209.69/54.15 f266_in(0) 209.69/54.15 f266_in(s(0)) 209.69/54.15 f266_in(s(s(x0))) 209.69/54.15 U3(f266_out1(x0), s(s(x1))) 209.69/54.15 f413_in(0) 209.69/54.15 f413_in(s(x0)) 209.69/54.15 U4(f461_out1(x0, x1), s(x2)) 209.69/54.15 f92_in(s(x0)) 209.69/54.15 U5(f98_out1(x0, x1, x2), s(x3)) 209.69/54.15 f123_in(x0) 209.69/54.15 U6(f186_out1(x0), x1) 209.69/54.15 f268_in(0) 209.69/54.15 f268_in(s(s(x0))) 209.69/54.15 U7(f98_out1(x0, x1, x2), s(s(x3))) 209.69/54.15 f12_in(x0) 209.69/54.15 U8(f92_out1(x0), x1) 209.69/54.15 U9(f93_out1(x0), x1, x2) 209.69/54.15 f93_in(x0) 209.69/54.15 U10(f413_out1(x0), x1) 209.69/54.15 U11(f3_out1, x0, x1) 209.69/54.15 f98_in(x0) 209.69/54.15 U12(f123_out1(x0), x1) 209.69/54.15 U13(f128_out1(x0, x1), x2, x3) 209.69/54.15 f128_in(x0) 209.69/54.15 U14(f266_out1(x0), x1) 209.69/54.15 U15(f268_out1(x0), x1, x2) 209.69/54.15 f461_in(x0) 209.69/54.15 U16(f266_out1(x0), x1) 209.69/54.15 U17(f413_out1(x0), x1, x2) 209.69/54.15 209.69/54.15 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (117) 209.69/54.15 Obligation: 209.69/54.15 Q DP problem: 209.69/54.15 The TRS P consists of the following rules: 209.69/54.15 209.69/54.15 F186_IN(s(T15)) -> F186_IN(T15) 209.69/54.15 209.69/54.15 R is empty. 209.69/54.15 Q is empty. 209.69/54.15 We have to consider all minimal (P,Q,R)-chains. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (118) QDPSizeChangeProof (EQUIVALENT) 209.69/54.15 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. 209.69/54.15 209.69/54.15 From the DPs we obtained the following set of size-change graphs: 209.69/54.15 *F186_IN(s(T15)) -> F186_IN(T15) 209.69/54.15 The graph contains the following edges 1 > 1 209.69/54.15 209.69/54.15 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (119) 209.69/54.15 YES 209.69/54.15 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (120) 209.69/54.15 Obligation: 209.69/54.15 Q DP problem: 209.69/54.15 The TRS P consists of the following rules: 209.69/54.15 209.69/54.15 F98_IN(T8) -> U12^1(f123_in(T8), T8) 209.69/54.15 U12^1(f123_out1(T9), T8) -> F128_IN(T9) 209.69/54.15 F128_IN(T9) -> U14^1(f266_in(T9), T9) 209.69/54.15 U14^1(f266_out1(T16), T9) -> F268_IN(T16) 209.69/54.15 F268_IN(s(s(T22))) -> F98_IN(T22) 209.69/54.15 209.69/54.15 The TRS R consists of the following rules: 209.69/54.15 209.69/54.15 f3_in(s(T4)) -> U1(f12_in(T4), s(T4)) 209.69/54.15 U1(f12_out1(X6, X7), s(T4)) -> f3_out1 209.69/54.15 f186_in(0) -> f186_out1(0) 209.69/54.15 f186_in(s(T15)) -> U2(f186_in(T15), s(T15)) 209.69/54.15 U2(f186_out1(X38), s(T15)) -> f186_out1(s(X38)) 209.69/54.15 f266_in(0) -> f266_out1(0) 209.69/54.15 f266_in(s(0)) -> f266_out1(0) 209.69/54.15 f266_in(s(s(T19))) -> U3(f266_in(s(T19)), s(s(T19))) 209.69/54.15 U3(f266_out1(X47), s(s(T19))) -> f266_out1(s(X47)) 209.69/54.15 f413_in(0) -> f413_out1(0) 209.69/54.15 f413_in(s(T26)) -> U4(f461_in(T26), s(T26)) 209.69/54.15 U4(f461_out1(X70, X71), s(T26)) -> f413_out1(s(s(X71))) 209.69/54.15 f92_in(s(T8)) -> U5(f98_in(T8), s(T8)) 209.69/54.15 U5(f98_out1(X18, X19, X20), s(T8)) -> f92_out1(s(X20)) 209.69/54.15 f123_in(T12) -> U6(f186_in(T12), T12) 209.69/54.15 U6(f186_out1(X29), T12) -> f123_out1(s(X29)) 209.69/54.15 f268_in(0) -> f268_out1(0) 209.69/54.15 f268_in(s(s(T22))) -> U7(f98_in(T22), s(s(T22))) 209.69/54.15 U7(f98_out1(X58, X59, X60), s(s(T22))) -> f268_out1(s(X60)) 209.69/54.15 f12_in(T4) -> U8(f92_in(T4), T4) 209.69/54.15 U8(f92_out1(T5), T4) -> U9(f93_in(T5), T4, T5) 209.69/54.15 U9(f93_out1(X7), T4, T5) -> f12_out1(T5, X7) 209.69/54.15 f93_in(T5) -> U10(f413_in(T5), T5) 209.69/54.15 U10(f413_out1(T23), T5) -> U11(f3_in(T23), T5, T23) 209.69/54.15 U11(f3_out1, T5, T23) -> f93_out1(T23) 209.69/54.15 f98_in(T8) -> U12(f123_in(T8), T8) 209.69/54.15 U12(f123_out1(T9), T8) -> U13(f128_in(T9), T8, T9) 209.69/54.15 U13(f128_out1(X19, X20), T8, T9) -> f98_out1(T9, X19, X20) 209.69/54.15 f128_in(T9) -> U14(f266_in(T9), T9) 209.69/54.15 U14(f266_out1(T16), T9) -> U15(f268_in(T16), T9, T16) 209.69/54.15 U15(f268_out1(X20), T9, T16) -> f128_out1(T16, X20) 209.69/54.15 f461_in(T26) -> U16(f266_in(s(T26)), T26) 209.69/54.15 U16(f266_out1(T27), T26) -> U17(f413_in(T27), T26, T27) 209.69/54.15 U17(f413_out1(X71), T26, T27) -> f461_out1(T27, X71) 209.69/54.15 209.69/54.15 The set Q consists of the following terms: 209.69/54.15 209.69/54.15 f3_in(s(x0)) 209.69/54.15 U1(f12_out1(x0, x1), s(x2)) 209.69/54.15 f186_in(0) 209.69/54.15 f186_in(s(x0)) 209.69/54.15 U2(f186_out1(x0), s(x1)) 209.69/54.15 f266_in(0) 209.69/54.15 f266_in(s(0)) 209.69/54.15 f266_in(s(s(x0))) 209.69/54.15 U3(f266_out1(x0), s(s(x1))) 209.69/54.15 f413_in(0) 209.69/54.15 f413_in(s(x0)) 209.69/54.15 U4(f461_out1(x0, x1), s(x2)) 209.69/54.15 f92_in(s(x0)) 209.69/54.15 U5(f98_out1(x0, x1, x2), s(x3)) 209.69/54.15 f123_in(x0) 209.69/54.15 U6(f186_out1(x0), x1) 209.69/54.15 f268_in(0) 209.69/54.15 f268_in(s(s(x0))) 209.69/54.15 U7(f98_out1(x0, x1, x2), s(s(x3))) 209.69/54.15 f12_in(x0) 209.69/54.15 U8(f92_out1(x0), x1) 209.69/54.15 U9(f93_out1(x0), x1, x2) 209.69/54.15 f93_in(x0) 209.69/54.15 U10(f413_out1(x0), x1) 209.69/54.15 U11(f3_out1, x0, x1) 209.69/54.15 f98_in(x0) 209.69/54.15 U12(f123_out1(x0), x1) 209.69/54.15 U13(f128_out1(x0, x1), x2, x3) 209.69/54.15 f128_in(x0) 209.69/54.15 U14(f266_out1(x0), x1) 209.69/54.15 U15(f268_out1(x0), x1, x2) 209.69/54.15 f461_in(x0) 209.69/54.15 U16(f266_out1(x0), x1) 209.69/54.15 U17(f413_out1(x0), x1, x2) 209.69/54.15 209.69/54.15 We have to consider all minimal (P,Q,R)-chains. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (121) UsableRulesProof (EQUIVALENT) 209.69/54.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. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (122) 209.69/54.15 Obligation: 209.69/54.15 Q DP problem: 209.69/54.15 The TRS P consists of the following rules: 209.69/54.15 209.69/54.15 F98_IN(T8) -> U12^1(f123_in(T8), T8) 209.69/54.15 U12^1(f123_out1(T9), T8) -> F128_IN(T9) 209.69/54.15 F128_IN(T9) -> U14^1(f266_in(T9), T9) 209.69/54.15 U14^1(f266_out1(T16), T9) -> F268_IN(T16) 209.69/54.15 F268_IN(s(s(T22))) -> F98_IN(T22) 209.69/54.15 209.69/54.15 The TRS R consists of the following rules: 209.69/54.15 209.69/54.15 f266_in(0) -> f266_out1(0) 209.69/54.15 f266_in(s(0)) -> f266_out1(0) 209.69/54.15 f266_in(s(s(T19))) -> U3(f266_in(s(T19)), s(s(T19))) 209.69/54.15 U3(f266_out1(X47), s(s(T19))) -> f266_out1(s(X47)) 209.69/54.15 f123_in(T12) -> U6(f186_in(T12), T12) 209.69/54.15 f186_in(0) -> f186_out1(0) 209.69/54.15 f186_in(s(T15)) -> U2(f186_in(T15), s(T15)) 209.69/54.15 U6(f186_out1(X29), T12) -> f123_out1(s(X29)) 209.69/54.15 U2(f186_out1(X38), s(T15)) -> f186_out1(s(X38)) 209.69/54.15 209.69/54.15 The set Q consists of the following terms: 209.69/54.15 209.69/54.15 f3_in(s(x0)) 209.69/54.15 U1(f12_out1(x0, x1), s(x2)) 209.69/54.15 f186_in(0) 209.69/54.15 f186_in(s(x0)) 209.69/54.15 U2(f186_out1(x0), s(x1)) 209.69/54.15 f266_in(0) 209.69/54.15 f266_in(s(0)) 209.69/54.15 f266_in(s(s(x0))) 209.69/54.15 U3(f266_out1(x0), s(s(x1))) 209.69/54.15 f413_in(0) 209.69/54.15 f413_in(s(x0)) 209.69/54.15 U4(f461_out1(x0, x1), s(x2)) 209.69/54.15 f92_in(s(x0)) 209.69/54.15 U5(f98_out1(x0, x1, x2), s(x3)) 209.69/54.15 f123_in(x0) 209.69/54.15 U6(f186_out1(x0), x1) 209.69/54.15 f268_in(0) 209.69/54.15 f268_in(s(s(x0))) 209.69/54.15 U7(f98_out1(x0, x1, x2), s(s(x3))) 209.69/54.15 f12_in(x0) 209.69/54.15 U8(f92_out1(x0), x1) 209.69/54.15 U9(f93_out1(x0), x1, x2) 209.69/54.15 f93_in(x0) 209.69/54.15 U10(f413_out1(x0), x1) 209.69/54.15 U11(f3_out1, x0, x1) 209.69/54.15 f98_in(x0) 209.69/54.15 U12(f123_out1(x0), x1) 209.69/54.15 U13(f128_out1(x0, x1), x2, x3) 209.69/54.15 f128_in(x0) 209.69/54.15 U14(f266_out1(x0), x1) 209.69/54.15 U15(f268_out1(x0), x1, x2) 209.69/54.15 f461_in(x0) 209.69/54.15 U16(f266_out1(x0), x1) 209.69/54.15 U17(f413_out1(x0), x1, x2) 209.69/54.15 209.69/54.15 We have to consider all minimal (P,Q,R)-chains. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (123) QReductionProof (EQUIVALENT) 209.69/54.15 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 209.69/54.15 209.69/54.15 f3_in(s(x0)) 209.69/54.15 U1(f12_out1(x0, x1), s(x2)) 209.69/54.15 f413_in(0) 209.69/54.15 f413_in(s(x0)) 209.69/54.15 U4(f461_out1(x0, x1), s(x2)) 209.69/54.15 f92_in(s(x0)) 209.69/54.15 U5(f98_out1(x0, x1, x2), s(x3)) 209.69/54.15 f268_in(0) 209.69/54.15 f268_in(s(s(x0))) 209.69/54.15 U7(f98_out1(x0, x1, x2), s(s(x3))) 209.69/54.15 f12_in(x0) 209.69/54.15 U8(f92_out1(x0), x1) 209.69/54.15 U9(f93_out1(x0), x1, x2) 209.69/54.15 f93_in(x0) 209.69/54.15 U10(f413_out1(x0), x1) 209.69/54.15 U11(f3_out1, x0, x1) 209.69/54.15 f98_in(x0) 209.69/54.15 U12(f123_out1(x0), x1) 209.69/54.15 U13(f128_out1(x0, x1), x2, x3) 209.69/54.15 f128_in(x0) 209.69/54.15 U14(f266_out1(x0), x1) 209.69/54.15 U15(f268_out1(x0), x1, x2) 209.69/54.15 f461_in(x0) 209.69/54.15 U16(f266_out1(x0), x1) 209.69/54.15 U17(f413_out1(x0), x1, x2) 209.69/54.15 209.69/54.15 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (124) 209.69/54.15 Obligation: 209.69/54.15 Q DP problem: 209.69/54.15 The TRS P consists of the following rules: 209.69/54.15 209.69/54.15 F98_IN(T8) -> U12^1(f123_in(T8), T8) 209.69/54.15 U12^1(f123_out1(T9), T8) -> F128_IN(T9) 209.69/54.15 F128_IN(T9) -> U14^1(f266_in(T9), T9) 209.69/54.15 U14^1(f266_out1(T16), T9) -> F268_IN(T16) 209.69/54.15 F268_IN(s(s(T22))) -> F98_IN(T22) 209.69/54.15 209.69/54.15 The TRS R consists of the following rules: 209.69/54.15 209.69/54.15 f266_in(0) -> f266_out1(0) 209.69/54.15 f266_in(s(0)) -> f266_out1(0) 209.69/54.15 f266_in(s(s(T19))) -> U3(f266_in(s(T19)), s(s(T19))) 209.69/54.15 U3(f266_out1(X47), s(s(T19))) -> f266_out1(s(X47)) 209.69/54.15 f123_in(T12) -> U6(f186_in(T12), T12) 209.69/54.15 f186_in(0) -> f186_out1(0) 209.69/54.15 f186_in(s(T15)) -> U2(f186_in(T15), s(T15)) 209.69/54.15 U6(f186_out1(X29), T12) -> f123_out1(s(X29)) 209.69/54.15 U2(f186_out1(X38), s(T15)) -> f186_out1(s(X38)) 209.69/54.15 209.69/54.15 The set Q consists of the following terms: 209.69/54.15 209.69/54.15 f186_in(0) 209.69/54.15 f186_in(s(x0)) 209.69/54.15 U2(f186_out1(x0), s(x1)) 209.69/54.15 f266_in(0) 209.69/54.15 f266_in(s(0)) 209.69/54.15 f266_in(s(s(x0))) 209.69/54.15 U3(f266_out1(x0), s(s(x1))) 209.69/54.15 f123_in(x0) 209.69/54.15 U6(f186_out1(x0), x1) 209.69/54.15 209.69/54.15 We have to consider all minimal (P,Q,R)-chains. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (125) QDPOrderProof (EQUIVALENT) 209.69/54.15 We use the reduction pair processor [LPAR04,JAR06]. 209.69/54.15 209.69/54.15 209.69/54.15 The following pairs can be oriented strictly and are deleted. 209.69/54.15 209.69/54.15 F268_IN(s(s(T22))) -> F98_IN(T22) 209.69/54.15 The remaining pairs can at least be oriented weakly. 209.69/54.15 Used ordering: Polynomial Order [NEGPOLO,POLO] with Interpretation: 209.69/54.15 209.69/54.15 POL( U12^1_2(x_1, x_2) ) = 2x_1 209.69/54.15 POL( f123_in_1(x_1) ) = x_1 + 1 209.69/54.15 POL( U6_2(x_1, x_2) ) = x_1 + 1 209.69/54.15 POL( f186_in_1(x_1) ) = x_1 209.69/54.15 POL( U14^1_2(x_1, x_2) ) = 2x_1 209.69/54.15 POL( f266_in_1(x_1) ) = x_1 209.69/54.15 POL( 0 ) = 0 209.69/54.15 POL( f266_out1_1(x_1) ) = x_1 209.69/54.15 POL( s_1(x_1) ) = x_1 + 1 209.69/54.15 POL( U3_2(x_1, x_2) ) = x_1 + 1 209.69/54.15 POL( f186_out1_1(x_1) ) = x_1 209.69/54.15 POL( U2_2(x_1, x_2) ) = x_1 + 1 209.69/54.15 POL( f123_out1_1(x_1) ) = x_1 209.69/54.15 POL( F98_IN_1(x_1) ) = 2x_1 + 2 209.69/54.15 POL( F128_IN_1(x_1) ) = 2x_1 209.69/54.15 POL( F268_IN_1(x_1) ) = 2x_1 209.69/54.15 209.69/54.15 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 209.69/54.15 209.69/54.15 f123_in(T12) -> U6(f186_in(T12), T12) 209.69/54.15 f266_in(0) -> f266_out1(0) 209.69/54.15 f266_in(s(0)) -> f266_out1(0) 209.69/54.15 f266_in(s(s(T19))) -> U3(f266_in(s(T19)), s(s(T19))) 209.69/54.15 U3(f266_out1(X47), s(s(T19))) -> f266_out1(s(X47)) 209.69/54.15 f186_in(0) -> f186_out1(0) 209.69/54.15 f186_in(s(T15)) -> U2(f186_in(T15), s(T15)) 209.69/54.15 U6(f186_out1(X29), T12) -> f123_out1(s(X29)) 209.69/54.15 U2(f186_out1(X38), s(T15)) -> f186_out1(s(X38)) 209.69/54.15 209.69/54.15 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (126) 209.69/54.15 Obligation: 209.69/54.15 Q DP problem: 209.69/54.15 The TRS P consists of the following rules: 209.69/54.15 209.69/54.15 F98_IN(T8) -> U12^1(f123_in(T8), T8) 209.69/54.15 U12^1(f123_out1(T9), T8) -> F128_IN(T9) 209.69/54.15 F128_IN(T9) -> U14^1(f266_in(T9), T9) 209.69/54.15 U14^1(f266_out1(T16), T9) -> F268_IN(T16) 209.69/54.15 209.69/54.15 The TRS R consists of the following rules: 209.69/54.15 209.69/54.15 f266_in(0) -> f266_out1(0) 209.69/54.15 f266_in(s(0)) -> f266_out1(0) 209.69/54.15 f266_in(s(s(T19))) -> U3(f266_in(s(T19)), s(s(T19))) 209.69/54.15 U3(f266_out1(X47), s(s(T19))) -> f266_out1(s(X47)) 209.69/54.15 f123_in(T12) -> U6(f186_in(T12), T12) 209.69/54.15 f186_in(0) -> f186_out1(0) 209.69/54.15 f186_in(s(T15)) -> U2(f186_in(T15), s(T15)) 209.69/54.15 U6(f186_out1(X29), T12) -> f123_out1(s(X29)) 209.69/54.15 U2(f186_out1(X38), s(T15)) -> f186_out1(s(X38)) 209.69/54.15 209.69/54.15 The set Q consists of the following terms: 209.69/54.15 209.69/54.15 f186_in(0) 209.69/54.15 f186_in(s(x0)) 209.69/54.15 U2(f186_out1(x0), s(x1)) 209.69/54.15 f266_in(0) 209.69/54.15 f266_in(s(0)) 209.69/54.15 f266_in(s(s(x0))) 209.69/54.15 U3(f266_out1(x0), s(s(x1))) 209.69/54.15 f123_in(x0) 209.69/54.15 U6(f186_out1(x0), x1) 209.69/54.15 209.69/54.15 We have to consider all minimal (P,Q,R)-chains. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (127) DependencyGraphProof (EQUIVALENT) 209.69/54.15 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 4 less nodes. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (128) 209.69/54.15 TRUE 209.69/54.15 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (129) 209.69/54.15 Obligation: 209.69/54.15 Q DP problem: 209.69/54.15 The TRS P consists of the following rules: 209.69/54.15 209.69/54.15 F3_IN(s(T4)) -> F12_IN(T4) 209.69/54.15 F12_IN(T4) -> U8^1(f92_in(T4), T4) 209.69/54.15 U8^1(f92_out1(T5), T4) -> F93_IN(T5) 209.69/54.15 F93_IN(T5) -> U10^1(f413_in(T5), T5) 209.69/54.15 U10^1(f413_out1(T23), T5) -> F3_IN(T23) 209.69/54.15 209.69/54.15 The TRS R consists of the following rules: 209.69/54.15 209.69/54.15 f3_in(s(T4)) -> U1(f12_in(T4), s(T4)) 209.69/54.15 U1(f12_out1(X6, X7), s(T4)) -> f3_out1 209.69/54.15 f186_in(0) -> f186_out1(0) 209.69/54.15 f186_in(s(T15)) -> U2(f186_in(T15), s(T15)) 209.69/54.15 U2(f186_out1(X38), s(T15)) -> f186_out1(s(X38)) 209.69/54.15 f266_in(0) -> f266_out1(0) 209.69/54.15 f266_in(s(0)) -> f266_out1(0) 209.69/54.15 f266_in(s(s(T19))) -> U3(f266_in(s(T19)), s(s(T19))) 209.69/54.15 U3(f266_out1(X47), s(s(T19))) -> f266_out1(s(X47)) 209.69/54.15 f413_in(0) -> f413_out1(0) 209.69/54.15 f413_in(s(T26)) -> U4(f461_in(T26), s(T26)) 209.69/54.15 U4(f461_out1(X70, X71), s(T26)) -> f413_out1(s(s(X71))) 209.69/54.15 f92_in(s(T8)) -> U5(f98_in(T8), s(T8)) 209.69/54.15 U5(f98_out1(X18, X19, X20), s(T8)) -> f92_out1(s(X20)) 209.69/54.15 f123_in(T12) -> U6(f186_in(T12), T12) 209.69/54.15 U6(f186_out1(X29), T12) -> f123_out1(s(X29)) 209.69/54.15 f268_in(0) -> f268_out1(0) 209.69/54.15 f268_in(s(s(T22))) -> U7(f98_in(T22), s(s(T22))) 209.69/54.15 U7(f98_out1(X58, X59, X60), s(s(T22))) -> f268_out1(s(X60)) 209.69/54.15 f12_in(T4) -> U8(f92_in(T4), T4) 209.69/54.15 U8(f92_out1(T5), T4) -> U9(f93_in(T5), T4, T5) 209.69/54.15 U9(f93_out1(X7), T4, T5) -> f12_out1(T5, X7) 209.69/54.15 f93_in(T5) -> U10(f413_in(T5), T5) 209.69/54.15 U10(f413_out1(T23), T5) -> U11(f3_in(T23), T5, T23) 209.69/54.15 U11(f3_out1, T5, T23) -> f93_out1(T23) 209.69/54.15 f98_in(T8) -> U12(f123_in(T8), T8) 209.69/54.15 U12(f123_out1(T9), T8) -> U13(f128_in(T9), T8, T9) 209.69/54.15 U13(f128_out1(X19, X20), T8, T9) -> f98_out1(T9, X19, X20) 209.69/54.15 f128_in(T9) -> U14(f266_in(T9), T9) 209.69/54.15 U14(f266_out1(T16), T9) -> U15(f268_in(T16), T9, T16) 209.69/54.15 U15(f268_out1(X20), T9, T16) -> f128_out1(T16, X20) 209.69/54.15 f461_in(T26) -> U16(f266_in(s(T26)), T26) 209.69/54.15 U16(f266_out1(T27), T26) -> U17(f413_in(T27), T26, T27) 209.69/54.15 U17(f413_out1(X71), T26, T27) -> f461_out1(T27, X71) 209.69/54.15 209.69/54.15 The set Q consists of the following terms: 209.69/54.15 209.69/54.15 f3_in(s(x0)) 209.69/54.15 U1(f12_out1(x0, x1), s(x2)) 209.69/54.15 f186_in(0) 209.69/54.15 f186_in(s(x0)) 209.69/54.15 U2(f186_out1(x0), s(x1)) 209.69/54.15 f266_in(0) 209.69/54.15 f266_in(s(0)) 209.69/54.15 f266_in(s(s(x0))) 209.69/54.15 U3(f266_out1(x0), s(s(x1))) 209.69/54.15 f413_in(0) 209.69/54.15 f413_in(s(x0)) 209.69/54.15 U4(f461_out1(x0, x1), s(x2)) 209.69/54.15 f92_in(s(x0)) 209.69/54.15 U5(f98_out1(x0, x1, x2), s(x3)) 209.69/54.15 f123_in(x0) 209.69/54.15 U6(f186_out1(x0), x1) 209.69/54.15 f268_in(0) 209.69/54.15 f268_in(s(s(x0))) 209.69/54.15 U7(f98_out1(x0, x1, x2), s(s(x3))) 209.69/54.15 f12_in(x0) 209.69/54.15 U8(f92_out1(x0), x1) 209.69/54.15 U9(f93_out1(x0), x1, x2) 209.69/54.15 f93_in(x0) 209.69/54.15 U10(f413_out1(x0), x1) 209.69/54.15 U11(f3_out1, x0, x1) 209.69/54.15 f98_in(x0) 209.69/54.15 U12(f123_out1(x0), x1) 209.69/54.15 U13(f128_out1(x0, x1), x2, x3) 209.69/54.15 f128_in(x0) 209.69/54.15 U14(f266_out1(x0), x1) 209.69/54.15 U15(f268_out1(x0), x1, x2) 209.69/54.15 f461_in(x0) 209.69/54.15 U16(f266_out1(x0), x1) 209.69/54.15 U17(f413_out1(x0), x1, x2) 209.69/54.15 209.69/54.15 We have to consider all minimal (P,Q,R)-chains. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (130) MNOCProof (EQUIVALENT) 209.69/54.15 We use the modular non-overlap check [FROCOS05] to decrease Q to the empty set. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (131) 209.69/54.15 Obligation: 209.69/54.15 Q DP problem: 209.69/54.15 The TRS P consists of the following rules: 209.69/54.15 209.69/54.15 F3_IN(s(T4)) -> F12_IN(T4) 209.69/54.15 F12_IN(T4) -> U8^1(f92_in(T4), T4) 209.69/54.15 U8^1(f92_out1(T5), T4) -> F93_IN(T5) 209.69/54.15 F93_IN(T5) -> U10^1(f413_in(T5), T5) 209.69/54.15 U10^1(f413_out1(T23), T5) -> F3_IN(T23) 209.69/54.15 209.69/54.15 The TRS R consists of the following rules: 209.69/54.15 209.69/54.15 f3_in(s(T4)) -> U1(f12_in(T4), s(T4)) 209.69/54.15 U1(f12_out1(X6, X7), s(T4)) -> f3_out1 209.69/54.15 f186_in(0) -> f186_out1(0) 209.69/54.15 f186_in(s(T15)) -> U2(f186_in(T15), s(T15)) 209.69/54.15 U2(f186_out1(X38), s(T15)) -> f186_out1(s(X38)) 209.69/54.15 f266_in(0) -> f266_out1(0) 209.69/54.15 f266_in(s(0)) -> f266_out1(0) 209.69/54.15 f266_in(s(s(T19))) -> U3(f266_in(s(T19)), s(s(T19))) 209.69/54.15 U3(f266_out1(X47), s(s(T19))) -> f266_out1(s(X47)) 209.69/54.15 f413_in(0) -> f413_out1(0) 209.69/54.15 f413_in(s(T26)) -> U4(f461_in(T26), s(T26)) 209.69/54.15 U4(f461_out1(X70, X71), s(T26)) -> f413_out1(s(s(X71))) 209.69/54.15 f92_in(s(T8)) -> U5(f98_in(T8), s(T8)) 209.69/54.15 U5(f98_out1(X18, X19, X20), s(T8)) -> f92_out1(s(X20)) 209.69/54.15 f123_in(T12) -> U6(f186_in(T12), T12) 209.69/54.15 U6(f186_out1(X29), T12) -> f123_out1(s(X29)) 209.69/54.15 f268_in(0) -> f268_out1(0) 209.69/54.15 f268_in(s(s(T22))) -> U7(f98_in(T22), s(s(T22))) 209.69/54.15 U7(f98_out1(X58, X59, X60), s(s(T22))) -> f268_out1(s(X60)) 209.69/54.15 f12_in(T4) -> U8(f92_in(T4), T4) 209.69/54.15 U8(f92_out1(T5), T4) -> U9(f93_in(T5), T4, T5) 209.69/54.15 U9(f93_out1(X7), T4, T5) -> f12_out1(T5, X7) 209.69/54.15 f93_in(T5) -> U10(f413_in(T5), T5) 209.69/54.15 U10(f413_out1(T23), T5) -> U11(f3_in(T23), T5, T23) 209.69/54.15 U11(f3_out1, T5, T23) -> f93_out1(T23) 209.69/54.15 f98_in(T8) -> U12(f123_in(T8), T8) 209.69/54.15 U12(f123_out1(T9), T8) -> U13(f128_in(T9), T8, T9) 209.69/54.15 U13(f128_out1(X19, X20), T8, T9) -> f98_out1(T9, X19, X20) 209.69/54.15 f128_in(T9) -> U14(f266_in(T9), T9) 209.69/54.15 U14(f266_out1(T16), T9) -> U15(f268_in(T16), T9, T16) 209.69/54.15 U15(f268_out1(X20), T9, T16) -> f128_out1(T16, X20) 209.69/54.15 f461_in(T26) -> U16(f266_in(s(T26)), T26) 209.69/54.15 U16(f266_out1(T27), T26) -> U17(f413_in(T27), T26, T27) 209.69/54.15 U17(f413_out1(X71), T26, T27) -> f461_out1(T27, X71) 209.69/54.15 209.69/54.15 Q is empty. 209.69/54.15 We have to consider all (P,Q,R)-chains. 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (132) NonLoopProof (COMPLETE) 209.69/54.15 By Theorem 8 [NONLOOP] we deduce infiniteness of the QDP. 209.69/54.15 We apply the theorem with m = 1, b = 0, 209.69/54.15 σ' = [ ], and μ' = [x0 / s(0)] on the rule 209.69/54.15 U10^1(f413_out1(s(s(0))), s(0))[ ]^n[ ] -> U10^1(f413_out1(s(s(0))), s(0))[ ]^n[x0 / s(0)] 209.69/54.15 This rule is correct for the QDP as the following derivation shows: 209.69/54.15 209.69/54.15 U10^1(f413_out1(s(s(0))), s(0))[ ]^n[ ] -> U10^1(f413_out1(s(s(0))), s(0))[ ]^n[x0 / s(0)] 209.69/54.15 by Equivalency by Simplifying Mu with mu1: [x0 / s(0)] mu2: [ ] 209.69/54.15 intermediate steps: Instantiate mu 209.69/54.15 U10^1(f413_out1(s(s(0))), x0)[ ]^n[ ] -> U10^1(f413_out1(s(s(0))), s(0))[ ]^n[ ] 209.69/54.15 by Rewrite t with the rewrite sequence : [([0],f413_in(s(T26)) -> U4(f461_in(T26), s(T26))), ([0,0],f461_in(T26) -> U16(f266_in(s(T26)), T26)), ([0,0,0],f266_in(s(0)) -> f266_out1(0)), ([0,0],U16(f266_out1(T27), T26) -> U17(f413_in(T27), T26, T27)), ([0,0,0],f413_in(0) -> f413_out1(0)), ([0,0],U17(f413_out1(X71), T26, T27) -> f461_out1(T27, X71)), ([0],U4(f461_out1(X70, X71), s(T26)) -> f413_out1(s(s(X71))))] 209.69/54.15 U10^1(f413_out1(s(s(0))), x0)[ ]^n[ ] -> U10^1(f413_in(s(0)), s(0))[ ]^n[ ] 209.69/54.15 by Narrowing at position: [] 209.69/54.15 U10^1(f413_out1(s(s(0))), x0)[ ]^n[ ] -> F93_IN(s(0))[ ]^n[ ] 209.69/54.15 by Narrowing at position: [] 209.69/54.15 U10^1(f413_out1(s(s(0))), x0)[ ]^n[ ] -> U8^1(f92_out1(s(0)), s(0))[ ]^n[ ] 209.69/54.15 by Rewrite t with the rewrite sequence : [([0,0,0],U6(f186_out1(X29), T12) -> f123_out1(s(X29))), ([0,0],U12(f123_out1(T9), T8) -> U13(f128_in(T9), T8, T9)), ([0,0,0],f128_in(T9) -> U14(f266_in(T9), T9)), ([0,0,0,0],f266_in(s(0)) -> f266_out1(0)), ([0,0,0],U14(f266_out1(T16), T9) -> U15(f268_in(T16), T9, T16)), ([0,0,0,0],f268_in(0) -> f268_out1(0)), ([0,0,0],U15(f268_out1(X20), T9, T16) -> f128_out1(T16, X20)), ([0,0],U13(f128_out1(X19, X20), T8, T9) -> f98_out1(T9, X19, X20)), ([0],U5(f98_out1(X18, X19, X20), s(T8)) -> f92_out1(s(X20)))] 209.69/54.15 U10^1(f413_out1(s(s(0))), x0)[ ]^n[ ] -> U8^1(U5(U12(U6(f186_out1(0), 0), 0), s(0)), s(0))[ ]^n[ ] 209.69/54.15 by Narrowing at position: [0,0,0,0] 209.69/54.15 intermediate steps: Instantiation - Instantiation 209.69/54.15 U10^1(f413_out1(s(s(y0))), x0)[ ]^n[ ] -> U8^1(U5(U12(U6(f186_in(y0), y0), y0), s(y0)), s(y0))[ ]^n[ ] 209.69/54.15 by Rewrite t with the rewrite sequence : [([0,0],f98_in(T8) -> U12(f123_in(T8), T8)), ([0,0,0],f123_in(T12) -> U6(f186_in(T12), T12))] 209.69/54.15 U10^1(f413_out1(s(s(y0))), x0)[ ]^n[ ] -> U8^1(U5(f98_in(y0), s(y0)), s(y0))[ ]^n[ ] 209.69/54.15 by Narrowing at position: [] 209.69/54.15 intermediate steps: Instantiation - Instantiation 209.69/54.15 U10^1(f413_out1(T23), T5)[ ]^n[ ] -> F3_IN(T23)[ ]^n[ ] 209.69/54.15 by Rule from TRS P 209.69/54.15 209.69/54.15 F3_IN(s(s(y0)))[ ]^n[ ] -> U8^1(U5(f98_in(y0), s(y0)), s(y0))[ ]^n[ ] 209.69/54.15 by Narrowing at position: [0] 209.69/54.15 intermediate steps: Instantiation 209.69/54.15 F3_IN(s(x0))[ ]^n[ ] -> U8^1(f92_in(x0), x0)[ ]^n[ ] 209.69/54.15 by Narrowing at position: [] 209.69/54.15 intermediate steps: Instantiation 209.69/54.15 F3_IN(s(T4))[ ]^n[ ] -> F12_IN(T4)[ ]^n[ ] 209.69/54.15 by Rule from TRS P 209.69/54.15 209.69/54.15 intermediate steps: Instantiation - Instantiation 209.69/54.15 F12_IN(T4)[ ]^n[ ] -> U8^1(f92_in(T4), T4)[ ]^n[ ] 209.69/54.15 by Rule from TRS P 209.69/54.15 209.69/54.15 intermediate steps: Instantiation 209.69/54.15 f92_in(s(T8))[ ]^n[ ] -> U5(f98_in(T8), s(T8))[ ]^n[ ] 209.69/54.15 by Rule from TRS R 209.69/54.15 209.69/54.15 f186_in(0)[ ]^n[ ] -> f186_out1(0)[ ]^n[ ] 209.69/54.15 by Rule from TRS R 209.69/54.15 209.69/54.15 intermediate steps: Instantiation - Instantiation - Instantiation - Instantiation 209.69/54.15 U8^1(f92_out1(T5), T4)[ ]^n[ ] -> F93_IN(T5)[ ]^n[ ] 209.69/54.15 by Rule from TRS P 209.69/54.15 209.69/54.15 intermediate steps: Instantiation - Instantiation 209.69/54.15 F93_IN(T5)[ ]^n[ ] -> U10^1(f413_in(T5), T5)[ ]^n[ ] 209.69/54.15 by Rule from TRS P 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (133) 209.69/54.15 NO 209.69/54.15 209.69/54.15 ---------------------------------------- 209.69/54.15 209.69/54.15 (134) PrologToDTProblemTransformerProof (SOUND) 209.69/54.15 Built DT problem from termination graph DT10. 209.69/54.15 209.69/54.15 { 209.69/54.15 "root": 2, 209.69/54.15 "program": { 209.69/54.15 "directives": [], 209.69/54.15 "clauses": [ 209.69/54.15 [ 209.69/54.15 "(pred (0) (0))", 209.69/54.15 null 209.69/54.15 ], 209.69/54.15 [ 209.69/54.15 "(pred (s (0)) (0))", 209.69/54.15 null 209.69/54.15 ], 209.69/54.15 [ 209.69/54.15 "(pred (s (s X)) (s Y))", 209.69/54.15 "(pred (s X) Y)" 209.69/54.15 ], 209.69/54.15 [ 209.69/54.15 "(double (0) (0))", 209.69/54.15 null 209.69/54.15 ], 209.69/54.15 [ 209.69/54.15 "(double (s X) (s (s Y)))", 209.69/54.15 "(',' (pred (s X) Z) (double Z Y))" 209.69/54.15 ], 209.69/54.15 [ 209.69/54.16 "(half (0) (0))", 209.69/54.16 null 209.69/54.16 ], 209.69/54.16 [ 209.69/54.16 "(half (s (s X)) (s U))", 209.69/54.16 "(',' (pred (s (s X)) Y) (',' (pred Y Z) (half Z U)))" 209.69/54.16 ], 209.69/54.16 [ 209.69/54.16 "(f (s X))", 209.69/54.16 "(',' (half (s X) Y) (',' (double Y Z) (f Z)))" 209.69/54.16 ] 209.69/54.16 ] 209.69/54.16 }, 209.69/54.16 "graph": { 209.69/54.16 "nodes": { 209.69/54.16 "88": { 209.69/54.16 "goal": [], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "type": "Nodes", 209.69/54.16 "231": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(true)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "232": { 209.69/54.16 "goal": [], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "430": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(pred (s T27) X67)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T27"], 209.69/54.16 "free": ["X67"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "233": { 209.69/54.16 "goal": [], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "431": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(double T28 X68)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T28"], 209.69/54.16 "free": ["X68"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "234": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": 1, 209.69/54.16 "scope": 5, 209.69/54.16 "term": "(pred T7 X16)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T7"], 209.69/54.16 "free": ["X16"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "432": { 209.69/54.16 "goal": [ 209.69/54.16 { 209.69/54.16 "clause": 3, 209.69/54.16 "scope": 8, 209.69/54.16 "term": "(double T28 X68)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "clause": 4, 209.69/54.16 "scope": 8, 209.69/54.16 "term": "(double T28 X68)" 209.69/54.16 } 209.69/54.16 ], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T28"], 209.69/54.16 "free": ["X68"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "235": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": 2, 209.69/54.16 "scope": 5, 209.69/54.16 "term": "(pred T7 X16)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T7"], 209.69/54.16 "free": ["X16"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "433": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": 3, 209.69/54.16 "scope": 8, 209.69/54.16 "term": "(double T28 X68)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T28"], 209.69/54.16 "free": ["X68"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "236": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(true)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "434": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": 4, 209.69/54.16 "scope": 8, 209.69/54.16 "term": "(double T28 X68)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T28"], 209.69/54.16 "free": ["X68"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "237": { 209.69/54.16 "goal": [], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "435": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(true)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "90": { 209.69/54.16 "goal": [], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "238": { 209.69/54.16 "goal": [], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "436": { 209.69/54.16 "goal": [], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "437": { 209.69/54.16 "goal": [], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "438": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(',' (pred (s T31) X78) (double X78 X79))" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T31"], 209.69/54.16 "free": [ 209.69/54.16 "X79", 209.69/54.16 "X78" 209.69/54.16 ], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "439": { 209.69/54.16 "goal": [], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "95": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(pred (s T13) X35)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T13"], 209.69/54.16 "free": ["X35"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "97": { 209.69/54.16 "goal": [], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "55": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(pred (s (s T6)) X15)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T6"], 209.69/54.16 "free": ["X15"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "56": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(',' (',' (pred T7 X16) (half X16 X17)) (',' (double (s X17) X4) (f X4)))" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T7"], 209.69/54.16 "free": [ 209.69/54.16 "X4", 209.69/54.16 "X17", 209.69/54.16 "X16" 209.69/54.16 ], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "14": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(',' (half (s T3) X3) (',' (double X3 X4) (f X4)))" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T3"], 209.69/54.16 "free": [ 209.69/54.16 "X3", 209.69/54.16 "X4" 209.69/54.16 ], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "15": { 209.69/54.16 "goal": [], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "59": { 209.69/54.16 "goal": [ 209.69/54.16 { 209.69/54.16 "clause": 0, 209.69/54.16 "scope": 3, 209.69/54.16 "term": "(pred (s (s T6)) X15)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "clause": 1, 209.69/54.16 "scope": 3, 209.69/54.16 "term": "(pred (s (s T6)) X15)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "clause": 2, 209.69/54.16 "scope": 3, 209.69/54.16 "term": "(pred (s (s T6)) X15)" 209.69/54.16 } 209.69/54.16 ], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T6"], 209.69/54.16 "free": ["X15"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "16": { 209.69/54.16 "goal": [ 209.69/54.16 { 209.69/54.16 "clause": 5, 209.69/54.16 "scope": 2, 209.69/54.16 "term": "(',' (half (s T3) X3) (',' (double X3 X4) (f X4)))" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "clause": 6, 209.69/54.16 "scope": 2, 209.69/54.16 "term": "(',' (half (s T3) X3) (',' (double X3 X4) (f X4)))" 209.69/54.16 } 209.69/54.16 ], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T3"], 209.69/54.16 "free": [ 209.69/54.16 "X3", 209.69/54.16 "X4" 209.69/54.16 ], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "17": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": 6, 209.69/54.16 "scope": 2, 209.69/54.16 "term": "(',' (half (s T3) X3) (',' (double X3 X4) (f X4)))" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T3"], 209.69/54.16 "free": [ 209.69/54.16 "X3", 209.69/54.16 "X4" 209.69/54.16 ], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "241": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(pred (s T17) X44)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T17"], 209.69/54.16 "free": ["X44"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "242": { 209.69/54.16 "goal": [], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "2": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(f T1)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T1"], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "5": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": 7, 209.69/54.16 "scope": 1, 209.69/54.16 "term": "(f T1)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T1"], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "249": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(half T14 X17)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T14"], 209.69/54.16 "free": ["X17"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "60": { 209.69/54.16 "goal": [ 209.69/54.16 { 209.69/54.16 "clause": 1, 209.69/54.16 "scope": 3, 209.69/54.16 "term": "(pred (s (s T6)) X15)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "clause": 2, 209.69/54.16 "scope": 3, 209.69/54.16 "term": "(pred (s (s T6)) X15)" 209.69/54.16 } 209.69/54.16 ], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T6"], 209.69/54.16 "free": ["X15"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "61": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": 2, 209.69/54.16 "scope": 3, 209.69/54.16 "term": "(pred (s (s T6)) X15)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T6"], 209.69/54.16 "free": ["X15"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "64": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(pred (s T10) X26)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T10"], 209.69/54.16 "free": ["X26"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "21": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(',' (',' (pred (s (s T6)) X15) (',' (pred X15 X16) (half X16 X17))) (',' (double (s X17) X4) (f X4)))" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T6"], 209.69/54.16 "free": [ 209.69/54.16 "X4", 209.69/54.16 "X17", 209.69/54.16 "X15", 209.69/54.16 "X16" 209.69/54.16 ], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "22": { 209.69/54.16 "goal": [], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "67": { 209.69/54.16 "goal": [ 209.69/54.16 { 209.69/54.16 "clause": 0, 209.69/54.16 "scope": 4, 209.69/54.16 "term": "(pred (s T10) X26)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "clause": 1, 209.69/54.16 "scope": 4, 209.69/54.16 "term": "(pred (s T10) X26)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "clause": 2, 209.69/54.16 "scope": 4, 209.69/54.16 "term": "(pred (s T10) X26)" 209.69/54.16 } 209.69/54.16 ], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T10"], 209.69/54.16 "free": ["X26"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "69": { 209.69/54.16 "goal": [ 209.69/54.16 { 209.69/54.16 "clause": 1, 209.69/54.16 "scope": 4, 209.69/54.16 "term": "(pred (s T10) X26)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "clause": 2, 209.69/54.16 "scope": 4, 209.69/54.16 "term": "(pred (s T10) X26)" 209.69/54.16 } 209.69/54.16 ], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T10"], 209.69/54.16 "free": ["X26"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "250": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(',' (double (s T18) X4) (f X4))" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T18"], 209.69/54.16 "free": ["X4"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "251": { 209.69/54.16 "goal": [ 209.69/54.16 { 209.69/54.16 "clause": 5, 209.69/54.16 "scope": 6, 209.69/54.16 "term": "(half T14 X17)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "clause": 6, 209.69/54.16 "scope": 6, 209.69/54.16 "term": "(half T14 X17)" 209.69/54.16 } 209.69/54.16 ], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T14"], 209.69/54.16 "free": ["X17"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "253": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": 5, 209.69/54.16 "scope": 6, 209.69/54.16 "term": "(half T14 X17)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T14"], 209.69/54.16 "free": ["X17"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "255": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": 6, 209.69/54.16 "scope": 6, 209.69/54.16 "term": "(half T14 X17)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T14"], 209.69/54.16 "free": ["X17"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "256": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(true)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "257": { 209.69/54.16 "goal": [], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "258": { 209.69/54.16 "goal": [], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "259": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(',' (pred (s (s T21)) X55) (',' (pred X55 X56) (half X56 X57)))" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T21"], 209.69/54.16 "free": [ 209.69/54.16 "X57", 209.69/54.16 "X55", 209.69/54.16 "X56" 209.69/54.16 ], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "216": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(pred T7 X16)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T7"], 209.69/54.16 "free": ["X16"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "415": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(',' (pred T22 X56) (half X56 X57))" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T22"], 209.69/54.16 "free": [ 209.69/54.16 "X57", 209.69/54.16 "X56" 209.69/54.16 ], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "218": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(',' (half T14 X17) (',' (double (s X17) X4) (f X4)))" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T14"], 209.69/54.16 "free": [ 209.69/54.16 "X4", 209.69/54.16 "X17" 209.69/54.16 ], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "72": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": 1, 209.69/54.16 "scope": 4, 209.69/54.16 "term": "(pred (s T10) X26)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T10"], 209.69/54.16 "free": ["X26"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "73": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": 2, 209.69/54.16 "scope": 4, 209.69/54.16 "term": "(pred (s T10) X26)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T10"], 209.69/54.16 "free": ["X26"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "419": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(pred T22 X56)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T22"], 209.69/54.16 "free": ["X56"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "260": { 209.69/54.16 "goal": [], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "261": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(pred (s (s T21)) X55)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T21"], 209.69/54.16 "free": ["X55"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "420": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(half T23 X57)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T23"], 209.69/54.16 "free": ["X57"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "224": { 209.69/54.16 "goal": [ 209.69/54.16 { 209.69/54.16 "clause": 0, 209.69/54.16 "scope": 5, 209.69/54.16 "term": "(pred T7 X16)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "clause": 1, 209.69/54.16 "scope": 5, 209.69/54.16 "term": "(pred T7 X16)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "clause": 2, 209.69/54.16 "scope": 5, 209.69/54.16 "term": "(pred T7 X16)" 209.69/54.16 } 209.69/54.16 ], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T7"], 209.69/54.16 "free": ["X16"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "226": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": 0, 209.69/54.16 "scope": 5, 209.69/54.16 "term": "(pred T7 X16)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T7"], 209.69/54.16 "free": ["X16"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "227": { 209.69/54.16 "goal": [ 209.69/54.16 { 209.69/54.16 "clause": 1, 209.69/54.16 "scope": 5, 209.69/54.16 "term": "(pred T7 X16)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "clause": 2, 209.69/54.16 "scope": 5, 209.69/54.16 "term": "(pred T7 X16)" 209.69/54.16 } 209.69/54.16 ], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T7"], 209.69/54.16 "free": ["X16"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "425": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(double (s T18) X4)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T18"], 209.69/54.16 "free": ["X4"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "426": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(f T24)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T24"], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "427": { 209.69/54.16 "goal": [ 209.69/54.16 { 209.69/54.16 "clause": 3, 209.69/54.16 "scope": 7, 209.69/54.16 "term": "(double (s T18) X4)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "clause": 4, 209.69/54.16 "scope": 7, 209.69/54.16 "term": "(double (s T18) X4)" 209.69/54.16 } 209.69/54.16 ], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T18"], 209.69/54.16 "free": ["X4"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "428": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": 4, 209.69/54.16 "scope": 7, 209.69/54.16 "term": "(double (s T18) X4)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T18"], 209.69/54.16 "free": ["X4"], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "83": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(true)" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": [], 209.69/54.16 "free": [], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "429": { 209.69/54.16 "goal": [{ 209.69/54.16 "clause": -1, 209.69/54.16 "scope": -1, 209.69/54.16 "term": "(',' (pred (s T27) X67) (double X67 X68))" 209.69/54.16 }], 209.69/54.16 "kb": { 209.69/54.16 "nonunifying": [], 209.69/54.16 "intvars": {}, 209.69/54.16 "arithmetic": { 209.69/54.16 "type": "PlainIntegerRelationState", 209.69/54.16 "relations": [] 209.69/54.16 }, 209.69/54.16 "ground": ["T27"], 209.69/54.16 "free": [ 209.69/54.16 "X68", 209.69/54.16 "X67" 209.69/54.16 ], 209.69/54.16 "exprvars": [] 209.69/54.16 } 209.69/54.16 } 209.69/54.16 }, 209.69/54.16 "edges": [ 209.69/54.16 { 209.69/54.16 "from": 2, 209.69/54.16 "to": 5, 209.69/54.16 "label": "CASE" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 5, 209.69/54.16 "to": 14, 209.69/54.16 "label": "EVAL with clause\nf(s(X2)) :- ','(half(s(X2), X3), ','(double(X3, X4), f(X4))).\nand substitutionX2 -> T3,\nT1 -> s(T3)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 5, 209.69/54.16 "to": 15, 209.69/54.16 "label": "EVAL-BACKTRACK" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 14, 209.69/54.16 "to": 16, 209.69/54.16 "label": "CASE" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 16, 209.69/54.16 "to": 17, 209.69/54.16 "label": "BACKTRACK\nfor clause: half(0, 0)because of non-unification" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 17, 209.69/54.16 "to": 21, 209.69/54.16 "label": "EVAL with clause\nhalf(s(s(X13)), s(X14)) :- ','(pred(s(s(X13)), X15), ','(pred(X15, X16), half(X16, X14))).\nand substitutionX13 -> T6,\nT3 -> s(T6),\nX14 -> X17,\nX3 -> s(X17)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 17, 209.69/54.16 "to": 22, 209.69/54.16 "label": "EVAL-BACKTRACK" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 21, 209.69/54.16 "to": 55, 209.69/54.16 "label": "SPLIT 1" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 21, 209.69/54.16 "to": 56, 209.69/54.16 "label": "SPLIT 2\nnew knowledge:\nT6 is ground\nT7 is ground\nreplacements:X15 -> T7" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 55, 209.69/54.16 "to": 59, 209.69/54.16 "label": "CASE" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 56, 209.69/54.16 "to": 216, 209.69/54.16 "label": "SPLIT 1" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 56, 209.69/54.16 "to": 218, 209.69/54.16 "label": "SPLIT 2\nnew knowledge:\nT7 is ground\nT14 is ground\nreplacements:X16 -> T14" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 59, 209.69/54.16 "to": 60, 209.69/54.16 "label": "BACKTRACK\nfor clause: pred(0, 0)because of non-unification" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 60, 209.69/54.16 "to": 61, 209.69/54.16 "label": "BACKTRACK\nfor clause: pred(s(0), 0)because of non-unification" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 61, 209.69/54.16 "to": 64, 209.69/54.16 "label": "ONLY EVAL with clause\npred(s(s(X24)), s(X25)) :- pred(s(X24), X25).\nand substitutionT6 -> T10,\nX24 -> T10,\nX25 -> X26,\nX15 -> s(X26)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 64, 209.69/54.16 "to": 67, 209.69/54.16 "label": "CASE" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 67, 209.69/54.16 "to": 69, 209.69/54.16 "label": "BACKTRACK\nfor clause: pred(0, 0)because of non-unification" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 69, 209.69/54.16 "to": 72, 209.69/54.16 "label": "PARALLEL" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 69, 209.69/54.16 "to": 73, 209.69/54.16 "label": "PARALLEL" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 72, 209.69/54.16 "to": 83, 209.69/54.16 "label": "EVAL with clause\npred(s(0), 0).\nand substitutionT10 -> 0,\nX26 -> 0" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 72, 209.69/54.16 "to": 88, 209.69/54.16 "label": "EVAL-BACKTRACK" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 73, 209.69/54.16 "to": 95, 209.69/54.16 "label": "EVAL with clause\npred(s(s(X33)), s(X34)) :- pred(s(X33), X34).\nand substitutionX33 -> T13,\nT10 -> s(T13),\nX34 -> X35,\nX26 -> s(X35)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 73, 209.69/54.16 "to": 97, 209.69/54.16 "label": "EVAL-BACKTRACK" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 83, 209.69/54.16 "to": 90, 209.69/54.16 "label": "SUCCESS" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 95, 209.69/54.16 "to": 64, 209.69/54.16 "label": "INSTANCE with matching:\nT10 -> T13\nX26 -> X35" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 216, 209.69/54.16 "to": 224, 209.69/54.16 "label": "CASE" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 218, 209.69/54.16 "to": 249, 209.69/54.16 "label": "SPLIT 1" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 218, 209.69/54.16 "to": 250, 209.69/54.16 "label": "SPLIT 2\nnew knowledge:\nT14 is ground\nT18 is ground\nreplacements:X17 -> T18" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 224, 209.69/54.16 "to": 226, 209.69/54.16 "label": "PARALLEL" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 224, 209.69/54.16 "to": 227, 209.69/54.16 "label": "PARALLEL" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 226, 209.69/54.16 "to": 231, 209.69/54.16 "label": "EVAL with clause\npred(0, 0).\nand substitutionT7 -> 0,\nX16 -> 0" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 226, 209.69/54.16 "to": 232, 209.69/54.16 "label": "EVAL-BACKTRACK" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 227, 209.69/54.16 "to": 234, 209.69/54.16 "label": "PARALLEL" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 227, 209.69/54.16 "to": 235, 209.69/54.16 "label": "PARALLEL" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 231, 209.69/54.16 "to": 233, 209.69/54.16 "label": "SUCCESS" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 234, 209.69/54.16 "to": 236, 209.69/54.16 "label": "EVAL with clause\npred(s(0), 0).\nand substitutionT7 -> s(0),\nX16 -> 0" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 234, 209.69/54.16 "to": 237, 209.69/54.16 "label": "EVAL-BACKTRACK" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 235, 209.69/54.16 "to": 241, 209.69/54.16 "label": "EVAL with clause\npred(s(s(X42)), s(X43)) :- pred(s(X42), X43).\nand substitutionX42 -> T17,\nT7 -> s(s(T17)),\nX43 -> X44,\nX16 -> s(X44)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 235, 209.69/54.16 "to": 242, 209.69/54.16 "label": "EVAL-BACKTRACK" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 236, 209.69/54.16 "to": 238, 209.69/54.16 "label": "SUCCESS" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 241, 209.69/54.16 "to": 216, 209.69/54.16 "label": "INSTANCE with matching:\nT7 -> s(T17)\nX16 -> X44" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 249, 209.69/54.16 "to": 251, 209.69/54.16 "label": "CASE" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 250, 209.69/54.16 "to": 425, 209.69/54.16 "label": "SPLIT 1" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 250, 209.69/54.16 "to": 426, 209.69/54.16 "label": "SPLIT 2\nnew knowledge:\nT18 is ground\nT24 is ground\nreplacements:X4 -> T24" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 251, 209.69/54.16 "to": 253, 209.69/54.16 "label": "PARALLEL" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 251, 209.69/54.16 "to": 255, 209.69/54.16 "label": "PARALLEL" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 253, 209.69/54.16 "to": 256, 209.69/54.16 "label": "EVAL with clause\nhalf(0, 0).\nand substitutionT14 -> 0,\nX17 -> 0" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 253, 209.69/54.16 "to": 257, 209.69/54.16 "label": "EVAL-BACKTRACK" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 255, 209.69/54.16 "to": 259, 209.69/54.16 "label": "EVAL with clause\nhalf(s(s(X53)), s(X54)) :- ','(pred(s(s(X53)), X55), ','(pred(X55, X56), half(X56, X54))).\nand substitutionX53 -> T21,\nT14 -> s(s(T21)),\nX54 -> X57,\nX17 -> s(X57)" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 255, 209.69/54.16 "to": 260, 209.69/54.16 "label": "EVAL-BACKTRACK" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 256, 209.69/54.16 "to": 258, 209.69/54.16 "label": "SUCCESS" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 259, 209.69/54.16 "to": 261, 209.69/54.16 "label": "SPLIT 1" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 259, 209.69/54.16 "to": 415, 209.69/54.16 "label": "SPLIT 2\nnew knowledge:\nT21 is ground\nT22 is ground\nreplacements:X55 -> T22" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 261, 209.69/54.16 "to": 55, 209.69/54.16 "label": "INSTANCE with matching:\nT6 -> T21\nX15 -> X55" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 415, 209.69/54.16 "to": 419, 209.69/54.16 "label": "SPLIT 1" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 415, 209.69/54.16 "to": 420, 209.69/54.16 "label": "SPLIT 2\nnew knowledge:\nT22 is ground\nT23 is ground\nreplacements:X56 -> T23" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 419, 209.69/54.16 "to": 216, 209.69/54.16 "label": "INSTANCE with matching:\nT7 -> T22\nX16 -> X56" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 420, 209.69/54.16 "to": 249, 209.69/54.16 "label": "INSTANCE with matching:\nT14 -> T23\nX17 -> X57" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 425, 209.69/54.16 "to": 427, 209.69/54.16 "label": "CASE" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 426, 209.69/54.16 "to": 2, 209.69/54.16 "label": "INSTANCE with matching:\nT1 -> T24" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 427, 209.69/54.16 "to": 428, 209.69/54.16 "label": "BACKTRACK\nfor clause: double(0, 0)because of non-unification" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 428, 209.69/54.16 "to": 429, 209.69/54.16 "label": "ONLY EVAL with clause\ndouble(s(X65), s(s(X66))) :- ','(pred(s(X65), X67), double(X67, X66)).\nand substitutionT18 -> T27,\nX65 -> T27,\nX66 -> X68,\nX4 -> s(s(X68))" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 429, 209.69/54.16 "to": 430, 209.69/54.16 "label": "SPLIT 1" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 429, 209.69/54.16 "to": 431, 209.69/54.16 "label": "SPLIT 2\nnew knowledge:\nT27 is ground\nT28 is ground\nreplacements:X67 -> T28" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 430, 209.69/54.16 "to": 216, 209.69/54.16 "label": "INSTANCE with matching:\nT7 -> s(T27)\nX16 -> X67" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 431, 209.69/54.16 "to": 432, 209.69/54.16 "label": "CASE" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 432, 209.69/54.16 "to": 433, 209.69/54.16 "label": "PARALLEL" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 432, 209.69/54.16 "to": 434, 209.69/54.16 "label": "PARALLEL" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 433, 209.69/54.16 "to": 435, 209.69/54.16 "label": "EVAL with clause\ndouble(0, 0).\nand substitutionT28 -> 0,\nX68 -> 0" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 433, 209.69/54.16 "to": 436, 209.69/54.16 "label": "EVAL-BACKTRACK" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 434, 209.69/54.16 "to": 438, 209.69/54.16 "label": "EVAL with clause\ndouble(s(X76), s(s(X77))) :- ','(pred(s(X76), X78), double(X78, X77)).\nand substitutionX76 -> T31,\nT28 -> s(T31),\nX77 -> X79,\nX68 -> s(s(X79))" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 434, 209.69/54.16 "to": 439, 209.69/54.16 "label": "EVAL-BACKTRACK" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 435, 209.69/54.16 "to": 437, 209.69/54.16 "label": "SUCCESS" 209.69/54.16 }, 209.69/54.16 { 209.69/54.16 "from": 438, 209.69/54.16 "to": 429, 209.69/54.16 "label": "INSTANCE with matching:\nT27 -> T31\nX67 -> X78\nX68 -> X79" 209.69/54.16 } 209.69/54.16 ], 209.69/54.16 "type": "Graph" 209.69/54.16 } 209.69/54.16 } 209.69/54.16 209.69/54.16 ---------------------------------------- 209.69/54.16 209.69/54.16 (135) 209.69/54.16 Obligation: 209.69/54.16 Triples: 209.69/54.16 209.69/54.16 predA(s(X1), s(X2)) :- predA(X1, X2). 209.69/54.16 predB(s(s(X1)), s(X2)) :- predB(s(X1), X2). 209.69/54.16 predC(X1, s(X2)) :- predA(X1, X2). 209.69/54.16 halfD(s(s(X1)), s(X2)) :- predC(X1, X3). 209.69/54.16 halfD(s(s(X1)), s(X2)) :- ','(predcC(X1, X3), predB(X3, X4)). 209.69/54.16 halfD(s(s(X1)), s(X2)) :- ','(predcC(X1, X3), ','(predcB(X3, X4), halfD(X4, X2))). 209.69/54.16 pG(X1, X2, X3) :- predB(s(X1), X2). 209.69/54.16 pG(X1, s(X2), s(s(X3))) :- ','(predcB(s(X1), s(X2)), pG(X2, X4, X3)). 209.69/54.16 fE(s(s(X1))) :- predC(X1, X2). 209.69/54.16 fE(s(s(X1))) :- ','(predcC(X1, X2), predB(X2, X3)). 209.69/54.16 fE(s(s(X1))) :- ','(predcC(X1, X2), ','(predcB(X2, X3), halfD(X3, X4))). 209.69/54.16 fE(s(s(X1))) :- ','(predcC(X1, X2), ','(predcB(X2, X3), ','(halfcD(X3, X4), pG(X4, X5, X6)))). 209.69/54.16 fE(s(s(X1))) :- ','(predcC(X1, X2), ','(predcB(X2, X3), ','(halfcD(X3, X4), ','(doublecF(X4, X5), fE(X5))))). 209.69/54.16 209.69/54.16 Clauses: 209.69/54.16 209.69/54.16 predcA(0, 0). 209.69/54.16 predcA(s(X1), s(X2)) :- predcA(X1, X2). 209.69/54.16 predcB(0, 0). 209.69/54.16 predcB(s(0), 0). 209.69/54.16 predcB(s(s(X1)), s(X2)) :- predcB(s(X1), X2). 209.69/54.16 predcC(X1, s(X2)) :- predcA(X1, X2). 209.69/54.16 halfcD(0, 0). 209.69/54.16 halfcD(s(s(X1)), s(X2)) :- ','(predcC(X1, X3), ','(predcB(X3, X4), halfcD(X4, X2))). 209.69/54.16 fcE(s(s(X1))) :- ','(predcC(X1, X2), ','(predcB(X2, X3), ','(halfcD(X3, X4), ','(doublecF(X4, X5), fcE(X5))))). 209.69/54.16 qcG(X1, 0, 0) :- predcB(s(X1), 0). 209.69/54.16 qcG(X1, s(X2), s(s(X3))) :- ','(predcB(s(X1), s(X2)), qcG(X2, X4, X3)). 209.69/54.16 doublecF(X1, s(s(X2))) :- qcG(X1, X3, X2). 209.69/54.16 209.69/54.16 Afs: 209.69/54.16 209.69/54.16 fE(x1) = fE(x1) 209.69/54.16 209.69/54.16 209.69/54.16 ---------------------------------------- 209.69/54.16 209.69/54.16 (136) TriplesToPiDPProof (SOUND) 209.69/54.16 We use the technique of [DT09]. With regard to the inferred argument filtering the predicates were used in the following modes: 209.69/54.16 209.69/54.16 fE_in_1: (b) 209.69/54.16 209.69/54.16 predC_in_2: (b,f) 209.69/54.16 209.69/54.16 predA_in_2: (b,f) 209.69/54.16 209.69/54.16 predcC_in_2: (b,f) 209.69/54.16 209.69/54.16 predcA_in_2: (b,f) 209.69/54.16 209.69/54.16 predB_in_2: (b,f) 209.69/54.16 209.69/54.16 predcB_in_2: (b,f) (b,b) 209.69/54.16 209.69/54.16 halfD_in_2: (b,f) 209.69/54.16 209.69/54.16 halfcD_in_2: (b,f) 209.69/54.16 209.69/54.16 pG_in_3: (b,f,f) 209.69/54.16 209.69/54.16 doublecF_in_2: (b,f) 209.69/54.16 209.69/54.16 qcG_in_3: (b,f,f) 209.69/54.16 209.69/54.16 Transforming TRIPLES into the following Term Rewriting System: 209.69/54.16 209.69/54.16 Pi DP problem: 209.69/54.16 The TRS P consists of the following rules: 209.69/54.16 209.69/54.16 FE_IN_G(s(s(X1))) -> U12_G(X1, predC_in_ga(X1, X2)) 209.69/54.16 FE_IN_G(s(s(X1))) -> PREDC_IN_GA(X1, X2) 209.69/54.16 PREDC_IN_GA(X1, s(X2)) -> U3_GA(X1, X2, predA_in_ga(X1, X2)) 209.69/54.16 PREDC_IN_GA(X1, s(X2)) -> PREDA_IN_GA(X1, X2) 209.69/54.16 PREDA_IN_GA(s(X1), s(X2)) -> U1_GA(X1, X2, predA_in_ga(X1, X2)) 209.69/54.16 PREDA_IN_GA(s(X1), s(X2)) -> PREDA_IN_GA(X1, X2) 209.69/54.16 FE_IN_G(s(s(X1))) -> U13_G(X1, predcC_in_ga(X1, X2)) 209.69/54.16 U13_G(X1, predcC_out_ga(X1, X2)) -> U14_G(X1, predB_in_ga(X2, X3)) 209.69/54.16 U13_G(X1, predcC_out_ga(X1, X2)) -> PREDB_IN_GA(X2, X3) 209.69/54.16 PREDB_IN_GA(s(s(X1)), s(X2)) -> U2_GA(X1, X2, predB_in_ga(s(X1), X2)) 209.69/54.16 PREDB_IN_GA(s(s(X1)), s(X2)) -> PREDB_IN_GA(s(X1), X2) 209.69/54.16 U13_G(X1, predcC_out_ga(X1, X2)) -> U15_G(X1, predcB_in_ga(X2, X3)) 209.69/54.16 U15_G(X1, predcB_out_ga(X2, X3)) -> U16_G(X1, halfD_in_ga(X3, X4)) 209.69/54.16 U15_G(X1, predcB_out_ga(X2, X3)) -> HALFD_IN_GA(X3, X4) 209.69/54.16 HALFD_IN_GA(s(s(X1)), s(X2)) -> U4_GA(X1, X2, predC_in_ga(X1, X3)) 209.69/54.16 HALFD_IN_GA(s(s(X1)), s(X2)) -> PREDC_IN_GA(X1, X3) 209.69/54.16 HALFD_IN_GA(s(s(X1)), s(X2)) -> U5_GA(X1, X2, predcC_in_ga(X1, X3)) 209.69/54.16 U5_GA(X1, X2, predcC_out_ga(X1, X3)) -> U6_GA(X1, X2, predB_in_ga(X3, X4)) 209.69/54.16 U5_GA(X1, X2, predcC_out_ga(X1, X3)) -> PREDB_IN_GA(X3, X4) 209.69/54.16 U5_GA(X1, X2, predcC_out_ga(X1, X3)) -> U7_GA(X1, X2, predcB_in_ga(X3, X4)) 209.69/54.16 U7_GA(X1, X2, predcB_out_ga(X3, X4)) -> U8_GA(X1, X2, halfD_in_ga(X4, X2)) 209.69/54.16 U7_GA(X1, X2, predcB_out_ga(X3, X4)) -> HALFD_IN_GA(X4, X2) 209.69/54.16 U15_G(X1, predcB_out_ga(X2, X3)) -> U17_G(X1, halfcD_in_ga(X3, X4)) 209.69/54.16 U17_G(X1, halfcD_out_ga(X3, X4)) -> U18_G(X1, pG_in_gaa(X4, X5, X6)) 209.69/54.16 U17_G(X1, halfcD_out_ga(X3, X4)) -> PG_IN_GAA(X4, X5, X6) 209.69/54.16 PG_IN_GAA(X1, X2, X3) -> U9_GAA(X1, X2, X3, predB_in_ga(s(X1), X2)) 209.69/54.16 PG_IN_GAA(X1, X2, X3) -> PREDB_IN_GA(s(X1), X2) 209.69/54.16 PG_IN_GAA(X1, s(X2), s(s(X3))) -> U10_GAA(X1, X2, X3, predcB_in_ga(s(X1), s(X2))) 209.69/54.16 U10_GAA(X1, X2, X3, predcB_out_ga(s(X1), s(X2))) -> U11_GAA(X1, X2, X3, pG_in_gaa(X2, X4, X3)) 209.69/54.16 U10_GAA(X1, X2, X3, predcB_out_ga(s(X1), s(X2))) -> PG_IN_GAA(X2, X4, X3) 209.69/54.16 U17_G(X1, halfcD_out_ga(X3, X4)) -> U19_G(X1, doublecF_in_ga(X4, X5)) 209.69/54.16 U19_G(X1, doublecF_out_ga(X4, X5)) -> U20_G(X1, fE_in_g(X5)) 209.69/54.16 U19_G(X1, doublecF_out_ga(X4, X5)) -> FE_IN_G(X5) 209.69/54.16 209.69/54.16 The TRS R consists of the following rules: 209.69/54.16 209.69/54.16 predcC_in_ga(X1, s(X2)) -> U24_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.16 predcA_in_ga(0, 0) -> predcA_out_ga(0, 0) 209.69/54.16 predcA_in_ga(s(X1), s(X2)) -> U22_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.16 U22_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcA_out_ga(s(X1), s(X2)) 209.69/54.16 U24_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcC_out_ga(X1, s(X2)) 209.69/54.16 predcB_in_ga(0, 0) -> predcB_out_ga(0, 0) 209.69/54.16 predcB_in_ga(s(0), 0) -> predcB_out_ga(s(0), 0) 209.69/54.16 predcB_in_ga(s(s(X1)), s(X2)) -> U23_ga(X1, X2, predcB_in_ga(s(X1), X2)) 209.69/54.16 U23_ga(X1, X2, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.16 halfcD_in_ga(0, 0) -> halfcD_out_ga(0, 0) 209.69/54.16 halfcD_in_ga(s(s(X1)), s(X2)) -> U25_ga(X1, X2, predcC_in_ga(X1, X3)) 209.69/54.16 U25_ga(X1, X2, predcC_out_ga(X1, X3)) -> U26_ga(X1, X2, predcB_in_ga(X3, X4)) 209.69/54.16 U26_ga(X1, X2, predcB_out_ga(X3, X4)) -> U27_ga(X1, X2, halfcD_in_ga(X4, X2)) 209.69/54.16 U27_ga(X1, X2, halfcD_out_ga(X4, X2)) -> halfcD_out_ga(s(s(X1)), s(X2)) 209.69/54.16 doublecF_in_ga(X1, s(s(X2))) -> U36_ga(X1, X2, qcG_in_gaa(X1, X3, X2)) 209.69/54.16 qcG_in_gaa(X1, 0, 0) -> U33_gaa(X1, predcB_in_gg(s(X1), 0)) 209.69/54.16 predcB_in_gg(0, 0) -> predcB_out_gg(0, 0) 209.69/54.16 predcB_in_gg(s(0), 0) -> predcB_out_gg(s(0), 0) 209.69/54.16 predcB_in_gg(s(s(X1)), s(X2)) -> U23_gg(X1, X2, predcB_in_gg(s(X1), X2)) 209.69/54.16 U23_gg(X1, X2, predcB_out_gg(s(X1), X2)) -> predcB_out_gg(s(s(X1)), s(X2)) 209.69/54.16 U33_gaa(X1, predcB_out_gg(s(X1), 0)) -> qcG_out_gaa(X1, 0, 0) 209.69/54.16 qcG_in_gaa(X1, s(X2), s(s(X3))) -> U34_gaa(X1, X2, X3, predcB_in_ga(s(X1), s(X2))) 209.69/54.16 U34_gaa(X1, X2, X3, predcB_out_ga(s(X1), s(X2))) -> U35_gaa(X1, X2, X3, qcG_in_gaa(X2, X4, X3)) 209.69/54.16 U35_gaa(X1, X2, X3, qcG_out_gaa(X2, X4, X3)) -> qcG_out_gaa(X1, s(X2), s(s(X3))) 209.69/54.16 U36_ga(X1, X2, qcG_out_gaa(X1, X3, X2)) -> doublecF_out_ga(X1, s(s(X2))) 209.69/54.16 209.69/54.16 The argument filtering Pi contains the following mapping: 209.69/54.16 fE_in_g(x1) = fE_in_g(x1) 209.69/54.16 209.69/54.16 s(x1) = s(x1) 209.69/54.16 209.69/54.16 predC_in_ga(x1, x2) = predC_in_ga(x1) 209.69/54.16 209.69/54.16 predA_in_ga(x1, x2) = predA_in_ga(x1) 209.69/54.16 209.69/54.16 predcC_in_ga(x1, x2) = predcC_in_ga(x1) 209.69/54.16 209.69/54.16 U24_ga(x1, x2, x3) = U24_ga(x1, x3) 209.69/54.16 209.69/54.16 predcA_in_ga(x1, x2) = predcA_in_ga(x1) 209.69/54.16 209.69/54.16 0 = 0 209.69/54.16 209.69/54.16 predcA_out_ga(x1, x2) = predcA_out_ga(x1, x2) 209.69/54.16 209.69/54.16 U22_ga(x1, x2, x3) = U22_ga(x1, x3) 209.69/54.16 209.69/54.16 predcC_out_ga(x1, x2) = predcC_out_ga(x1, x2) 209.69/54.16 209.69/54.16 predB_in_ga(x1, x2) = predB_in_ga(x1) 209.69/54.16 209.69/54.16 predcB_in_ga(x1, x2) = predcB_in_ga(x1) 209.69/54.16 209.69/54.16 predcB_out_ga(x1, x2) = predcB_out_ga(x1, x2) 209.69/54.16 209.69/54.16 U23_ga(x1, x2, x3) = U23_ga(x1, x3) 209.69/54.16 209.69/54.16 halfD_in_ga(x1, x2) = halfD_in_ga(x1) 209.69/54.16 209.69/54.16 halfcD_in_ga(x1, x2) = halfcD_in_ga(x1) 209.69/54.16 209.69/54.16 halfcD_out_ga(x1, x2) = halfcD_out_ga(x1, x2) 209.69/54.16 209.69/54.16 U25_ga(x1, x2, x3) = U25_ga(x1, x3) 209.69/54.16 209.69/54.16 U26_ga(x1, x2, x3) = U26_ga(x1, x3) 209.69/54.16 209.69/54.16 U27_ga(x1, x2, x3) = U27_ga(x1, x3) 209.69/54.16 209.69/54.16 pG_in_gaa(x1, x2, x3) = pG_in_gaa(x1) 209.69/54.16 209.69/54.16 doublecF_in_ga(x1, x2) = doublecF_in_ga(x1) 209.69/54.16 209.69/54.16 U36_ga(x1, x2, x3) = U36_ga(x1, x3) 209.69/54.16 209.69/54.16 qcG_in_gaa(x1, x2, x3) = qcG_in_gaa(x1) 209.69/54.16 209.69/54.16 U33_gaa(x1, x2) = U33_gaa(x1, x2) 209.69/54.16 209.69/54.16 predcB_in_gg(x1, x2) = predcB_in_gg(x1, x2) 209.69/54.16 209.69/54.16 predcB_out_gg(x1, x2) = predcB_out_gg(x1, x2) 209.69/54.16 209.69/54.16 U23_gg(x1, x2, x3) = U23_gg(x1, x2, x3) 209.69/54.16 209.69/54.16 qcG_out_gaa(x1, x2, x3) = qcG_out_gaa(x1, x2, x3) 209.69/54.16 209.69/54.16 U34_gaa(x1, x2, x3, x4) = U34_gaa(x1, x4) 209.69/54.16 209.69/54.16 U35_gaa(x1, x2, x3, x4) = U35_gaa(x1, x2, x4) 209.69/54.16 209.69/54.16 doublecF_out_ga(x1, x2) = doublecF_out_ga(x1, x2) 209.69/54.16 209.69/54.16 FE_IN_G(x1) = FE_IN_G(x1) 209.69/54.16 209.69/54.16 U12_G(x1, x2) = U12_G(x1, x2) 209.69/54.16 209.69/54.16 PREDC_IN_GA(x1, x2) = PREDC_IN_GA(x1) 209.69/54.16 209.69/54.16 U3_GA(x1, x2, x3) = U3_GA(x1, x3) 209.69/54.16 209.69/54.16 PREDA_IN_GA(x1, x2) = PREDA_IN_GA(x1) 209.69/54.16 209.69/54.16 U1_GA(x1, x2, x3) = U1_GA(x1, x3) 209.69/54.16 209.69/54.16 U13_G(x1, x2) = U13_G(x1, x2) 209.69/54.16 209.69/54.16 U14_G(x1, x2) = U14_G(x1, x2) 209.69/54.16 209.69/54.16 PREDB_IN_GA(x1, x2) = PREDB_IN_GA(x1) 209.69/54.16 209.69/54.16 U2_GA(x1, x2, x3) = U2_GA(x1, x3) 209.69/54.16 209.69/54.16 U15_G(x1, x2) = U15_G(x1, x2) 209.69/54.16 209.69/54.16 U16_G(x1, x2) = U16_G(x1, x2) 209.69/54.16 209.69/54.16 HALFD_IN_GA(x1, x2) = HALFD_IN_GA(x1) 209.69/54.16 209.69/54.16 U4_GA(x1, x2, x3) = U4_GA(x1, x3) 209.69/54.16 209.69/54.16 U5_GA(x1, x2, x3) = U5_GA(x1, x3) 209.69/54.16 209.69/54.16 U6_GA(x1, x2, x3) = U6_GA(x1, x3) 209.69/54.16 209.69/54.16 U7_GA(x1, x2, x3) = U7_GA(x1, x3) 209.69/54.16 209.69/54.16 U8_GA(x1, x2, x3) = U8_GA(x1, x3) 209.69/54.16 209.69/54.16 U17_G(x1, x2) = U17_G(x1, x2) 209.69/54.16 209.69/54.16 U18_G(x1, x2) = U18_G(x1, x2) 209.69/54.16 209.69/54.16 PG_IN_GAA(x1, x2, x3) = PG_IN_GAA(x1) 209.69/54.16 209.69/54.16 U9_GAA(x1, x2, x3, x4) = U9_GAA(x1, x4) 209.69/54.16 209.69/54.16 U10_GAA(x1, x2, x3, x4) = U10_GAA(x1, x4) 209.69/54.16 209.69/54.16 U11_GAA(x1, x2, x3, x4) = U11_GAA(x1, x2, x4) 209.69/54.16 209.69/54.16 U19_G(x1, x2) = U19_G(x1, x2) 209.69/54.16 209.69/54.16 U20_G(x1, x2) = U20_G(x1, x2) 209.69/54.16 209.69/54.16 209.69/54.16 We have to consider all (P,R,Pi)-chains 209.69/54.16 209.69/54.16 209.69/54.16 Infinitary Constructor Rewriting Termination of PiDP implies Termination of TRIPLES 209.69/54.16 209.69/54.16 209.69/54.16 209.69/54.16 ---------------------------------------- 209.69/54.16 209.69/54.16 (137) 209.69/54.16 Obligation: 209.69/54.16 Pi DP problem: 209.69/54.16 The TRS P consists of the following rules: 209.69/54.16 209.69/54.16 FE_IN_G(s(s(X1))) -> U12_G(X1, predC_in_ga(X1, X2)) 209.69/54.16 FE_IN_G(s(s(X1))) -> PREDC_IN_GA(X1, X2) 209.69/54.16 PREDC_IN_GA(X1, s(X2)) -> U3_GA(X1, X2, predA_in_ga(X1, X2)) 209.69/54.16 PREDC_IN_GA(X1, s(X2)) -> PREDA_IN_GA(X1, X2) 209.69/54.16 PREDA_IN_GA(s(X1), s(X2)) -> U1_GA(X1, X2, predA_in_ga(X1, X2)) 209.69/54.17 PREDA_IN_GA(s(X1), s(X2)) -> PREDA_IN_GA(X1, X2) 209.69/54.17 FE_IN_G(s(s(X1))) -> U13_G(X1, predcC_in_ga(X1, X2)) 209.69/54.17 U13_G(X1, predcC_out_ga(X1, X2)) -> U14_G(X1, predB_in_ga(X2, X3)) 209.69/54.17 U13_G(X1, predcC_out_ga(X1, X2)) -> PREDB_IN_GA(X2, X3) 209.69/54.17 PREDB_IN_GA(s(s(X1)), s(X2)) -> U2_GA(X1, X2, predB_in_ga(s(X1), X2)) 209.69/54.17 PREDB_IN_GA(s(s(X1)), s(X2)) -> PREDB_IN_GA(s(X1), X2) 209.69/54.17 U13_G(X1, predcC_out_ga(X1, X2)) -> U15_G(X1, predcB_in_ga(X2, X3)) 209.69/54.17 U15_G(X1, predcB_out_ga(X2, X3)) -> U16_G(X1, halfD_in_ga(X3, X4)) 209.69/54.17 U15_G(X1, predcB_out_ga(X2, X3)) -> HALFD_IN_GA(X3, X4) 209.69/54.17 HALFD_IN_GA(s(s(X1)), s(X2)) -> U4_GA(X1, X2, predC_in_ga(X1, X3)) 209.69/54.17 HALFD_IN_GA(s(s(X1)), s(X2)) -> PREDC_IN_GA(X1, X3) 209.69/54.17 HALFD_IN_GA(s(s(X1)), s(X2)) -> U5_GA(X1, X2, predcC_in_ga(X1, X3)) 209.69/54.17 U5_GA(X1, X2, predcC_out_ga(X1, X3)) -> U6_GA(X1, X2, predB_in_ga(X3, X4)) 209.69/54.17 U5_GA(X1, X2, predcC_out_ga(X1, X3)) -> PREDB_IN_GA(X3, X4) 209.69/54.17 U5_GA(X1, X2, predcC_out_ga(X1, X3)) -> U7_GA(X1, X2, predcB_in_ga(X3, X4)) 209.69/54.17 U7_GA(X1, X2, predcB_out_ga(X3, X4)) -> U8_GA(X1, X2, halfD_in_ga(X4, X2)) 209.69/54.17 U7_GA(X1, X2, predcB_out_ga(X3, X4)) -> HALFD_IN_GA(X4, X2) 209.69/54.17 U15_G(X1, predcB_out_ga(X2, X3)) -> U17_G(X1, halfcD_in_ga(X3, X4)) 209.69/54.17 U17_G(X1, halfcD_out_ga(X3, X4)) -> U18_G(X1, pG_in_gaa(X4, X5, X6)) 209.69/54.17 U17_G(X1, halfcD_out_ga(X3, X4)) -> PG_IN_GAA(X4, X5, X6) 209.69/54.17 PG_IN_GAA(X1, X2, X3) -> U9_GAA(X1, X2, X3, predB_in_ga(s(X1), X2)) 209.69/54.17 PG_IN_GAA(X1, X2, X3) -> PREDB_IN_GA(s(X1), X2) 209.69/54.17 PG_IN_GAA(X1, s(X2), s(s(X3))) -> U10_GAA(X1, X2, X3, predcB_in_ga(s(X1), s(X2))) 209.69/54.17 U10_GAA(X1, X2, X3, predcB_out_ga(s(X1), s(X2))) -> U11_GAA(X1, X2, X3, pG_in_gaa(X2, X4, X3)) 209.69/54.17 U10_GAA(X1, X2, X3, predcB_out_ga(s(X1), s(X2))) -> PG_IN_GAA(X2, X4, X3) 209.69/54.17 U17_G(X1, halfcD_out_ga(X3, X4)) -> U19_G(X1, doublecF_in_ga(X4, X5)) 209.69/54.17 U19_G(X1, doublecF_out_ga(X4, X5)) -> U20_G(X1, fE_in_g(X5)) 209.69/54.17 U19_G(X1, doublecF_out_ga(X4, X5)) -> FE_IN_G(X5) 209.69/54.17 209.69/54.17 The TRS R consists of the following rules: 209.69/54.17 209.69/54.17 predcC_in_ga(X1, s(X2)) -> U24_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.17 predcA_in_ga(0, 0) -> predcA_out_ga(0, 0) 209.69/54.17 predcA_in_ga(s(X1), s(X2)) -> U22_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.17 U22_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcA_out_ga(s(X1), s(X2)) 209.69/54.17 U24_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcC_out_ga(X1, s(X2)) 209.69/54.17 predcB_in_ga(0, 0) -> predcB_out_ga(0, 0) 209.69/54.17 predcB_in_ga(s(0), 0) -> predcB_out_ga(s(0), 0) 209.69/54.17 predcB_in_ga(s(s(X1)), s(X2)) -> U23_ga(X1, X2, predcB_in_ga(s(X1), X2)) 209.69/54.17 U23_ga(X1, X2, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.17 halfcD_in_ga(0, 0) -> halfcD_out_ga(0, 0) 209.69/54.17 halfcD_in_ga(s(s(X1)), s(X2)) -> U25_ga(X1, X2, predcC_in_ga(X1, X3)) 209.69/54.17 U25_ga(X1, X2, predcC_out_ga(X1, X3)) -> U26_ga(X1, X2, predcB_in_ga(X3, X4)) 209.69/54.17 U26_ga(X1, X2, predcB_out_ga(X3, X4)) -> U27_ga(X1, X2, halfcD_in_ga(X4, X2)) 209.69/54.17 U27_ga(X1, X2, halfcD_out_ga(X4, X2)) -> halfcD_out_ga(s(s(X1)), s(X2)) 209.69/54.17 doublecF_in_ga(X1, s(s(X2))) -> U36_ga(X1, X2, qcG_in_gaa(X1, X3, X2)) 209.69/54.17 qcG_in_gaa(X1, 0, 0) -> U33_gaa(X1, predcB_in_gg(s(X1), 0)) 209.69/54.17 predcB_in_gg(0, 0) -> predcB_out_gg(0, 0) 209.69/54.17 predcB_in_gg(s(0), 0) -> predcB_out_gg(s(0), 0) 209.69/54.17 predcB_in_gg(s(s(X1)), s(X2)) -> U23_gg(X1, X2, predcB_in_gg(s(X1), X2)) 209.69/54.17 U23_gg(X1, X2, predcB_out_gg(s(X1), X2)) -> predcB_out_gg(s(s(X1)), s(X2)) 209.69/54.17 U33_gaa(X1, predcB_out_gg(s(X1), 0)) -> qcG_out_gaa(X1, 0, 0) 209.69/54.17 qcG_in_gaa(X1, s(X2), s(s(X3))) -> U34_gaa(X1, X2, X3, predcB_in_ga(s(X1), s(X2))) 209.69/54.17 U34_gaa(X1, X2, X3, predcB_out_ga(s(X1), s(X2))) -> U35_gaa(X1, X2, X3, qcG_in_gaa(X2, X4, X3)) 209.69/54.17 U35_gaa(X1, X2, X3, qcG_out_gaa(X2, X4, X3)) -> qcG_out_gaa(X1, s(X2), s(s(X3))) 209.69/54.17 U36_ga(X1, X2, qcG_out_gaa(X1, X3, X2)) -> doublecF_out_ga(X1, s(s(X2))) 209.69/54.17 209.69/54.17 The argument filtering Pi contains the following mapping: 209.69/54.17 fE_in_g(x1) = fE_in_g(x1) 209.69/54.17 209.69/54.17 s(x1) = s(x1) 209.69/54.17 209.69/54.17 predC_in_ga(x1, x2) = predC_in_ga(x1) 209.69/54.17 209.69/54.17 predA_in_ga(x1, x2) = predA_in_ga(x1) 209.69/54.17 209.69/54.17 predcC_in_ga(x1, x2) = predcC_in_ga(x1) 209.69/54.17 209.69/54.17 U24_ga(x1, x2, x3) = U24_ga(x1, x3) 209.69/54.17 209.69/54.17 predcA_in_ga(x1, x2) = predcA_in_ga(x1) 209.69/54.17 209.69/54.17 0 = 0 209.69/54.17 209.69/54.17 predcA_out_ga(x1, x2) = predcA_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U22_ga(x1, x2, x3) = U22_ga(x1, x3) 209.69/54.17 209.69/54.17 predcC_out_ga(x1, x2) = predcC_out_ga(x1, x2) 209.69/54.17 209.69/54.17 predB_in_ga(x1, x2) = predB_in_ga(x1) 209.69/54.17 209.69/54.17 predcB_in_ga(x1, x2) = predcB_in_ga(x1) 209.69/54.17 209.69/54.17 predcB_out_ga(x1, x2) = predcB_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U23_ga(x1, x2, x3) = U23_ga(x1, x3) 209.69/54.17 209.69/54.17 halfD_in_ga(x1, x2) = halfD_in_ga(x1) 209.69/54.17 209.69/54.17 halfcD_in_ga(x1, x2) = halfcD_in_ga(x1) 209.69/54.17 209.69/54.17 halfcD_out_ga(x1, x2) = halfcD_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U25_ga(x1, x2, x3) = U25_ga(x1, x3) 209.69/54.17 209.69/54.17 U26_ga(x1, x2, x3) = U26_ga(x1, x3) 209.69/54.17 209.69/54.17 U27_ga(x1, x2, x3) = U27_ga(x1, x3) 209.69/54.17 209.69/54.17 pG_in_gaa(x1, x2, x3) = pG_in_gaa(x1) 209.69/54.17 209.69/54.17 doublecF_in_ga(x1, x2) = doublecF_in_ga(x1) 209.69/54.17 209.69/54.17 U36_ga(x1, x2, x3) = U36_ga(x1, x3) 209.69/54.17 209.69/54.17 qcG_in_gaa(x1, x2, x3) = qcG_in_gaa(x1) 209.69/54.17 209.69/54.17 U33_gaa(x1, x2) = U33_gaa(x1, x2) 209.69/54.17 209.69/54.17 predcB_in_gg(x1, x2) = predcB_in_gg(x1, x2) 209.69/54.17 209.69/54.17 predcB_out_gg(x1, x2) = predcB_out_gg(x1, x2) 209.69/54.17 209.69/54.17 U23_gg(x1, x2, x3) = U23_gg(x1, x2, x3) 209.69/54.17 209.69/54.17 qcG_out_gaa(x1, x2, x3) = qcG_out_gaa(x1, x2, x3) 209.69/54.17 209.69/54.17 U34_gaa(x1, x2, x3, x4) = U34_gaa(x1, x4) 209.69/54.17 209.69/54.17 U35_gaa(x1, x2, x3, x4) = U35_gaa(x1, x2, x4) 209.69/54.17 209.69/54.17 doublecF_out_ga(x1, x2) = doublecF_out_ga(x1, x2) 209.69/54.17 209.69/54.17 FE_IN_G(x1) = FE_IN_G(x1) 209.69/54.17 209.69/54.17 U12_G(x1, x2) = U12_G(x1, x2) 209.69/54.17 209.69/54.17 PREDC_IN_GA(x1, x2) = PREDC_IN_GA(x1) 209.69/54.17 209.69/54.17 U3_GA(x1, x2, x3) = U3_GA(x1, x3) 209.69/54.17 209.69/54.17 PREDA_IN_GA(x1, x2) = PREDA_IN_GA(x1) 209.69/54.17 209.69/54.17 U1_GA(x1, x2, x3) = U1_GA(x1, x3) 209.69/54.17 209.69/54.17 U13_G(x1, x2) = U13_G(x1, x2) 209.69/54.17 209.69/54.17 U14_G(x1, x2) = U14_G(x1, x2) 209.69/54.17 209.69/54.17 PREDB_IN_GA(x1, x2) = PREDB_IN_GA(x1) 209.69/54.17 209.69/54.17 U2_GA(x1, x2, x3) = U2_GA(x1, x3) 209.69/54.17 209.69/54.17 U15_G(x1, x2) = U15_G(x1, x2) 209.69/54.17 209.69/54.17 U16_G(x1, x2) = U16_G(x1, x2) 209.69/54.17 209.69/54.17 HALFD_IN_GA(x1, x2) = HALFD_IN_GA(x1) 209.69/54.17 209.69/54.17 U4_GA(x1, x2, x3) = U4_GA(x1, x3) 209.69/54.17 209.69/54.17 U5_GA(x1, x2, x3) = U5_GA(x1, x3) 209.69/54.17 209.69/54.17 U6_GA(x1, x2, x3) = U6_GA(x1, x3) 209.69/54.17 209.69/54.17 U7_GA(x1, x2, x3) = U7_GA(x1, x3) 209.69/54.17 209.69/54.17 U8_GA(x1, x2, x3) = U8_GA(x1, x3) 209.69/54.17 209.69/54.17 U17_G(x1, x2) = U17_G(x1, x2) 209.69/54.17 209.69/54.17 U18_G(x1, x2) = U18_G(x1, x2) 209.69/54.17 209.69/54.17 PG_IN_GAA(x1, x2, x3) = PG_IN_GAA(x1) 209.69/54.17 209.69/54.17 U9_GAA(x1, x2, x3, x4) = U9_GAA(x1, x4) 209.69/54.17 209.69/54.17 U10_GAA(x1, x2, x3, x4) = U10_GAA(x1, x4) 209.69/54.17 209.69/54.17 U11_GAA(x1, x2, x3, x4) = U11_GAA(x1, x2, x4) 209.69/54.17 209.69/54.17 U19_G(x1, x2) = U19_G(x1, x2) 209.69/54.17 209.69/54.17 U20_G(x1, x2) = U20_G(x1, x2) 209.69/54.17 209.69/54.17 209.69/54.17 We have to consider all (P,R,Pi)-chains 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (138) DependencyGraphProof (EQUIVALENT) 209.69/54.17 The approximation of the Dependency Graph [LOPSTR] contains 5 SCCs with 21 less nodes. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (139) 209.69/54.17 Complex Obligation (AND) 209.69/54.17 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (140) 209.69/54.17 Obligation: 209.69/54.17 Pi DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 PREDB_IN_GA(s(s(X1)), s(X2)) -> PREDB_IN_GA(s(X1), X2) 209.69/54.17 209.69/54.17 The TRS R consists of the following rules: 209.69/54.17 209.69/54.17 predcC_in_ga(X1, s(X2)) -> U24_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.17 predcA_in_ga(0, 0) -> predcA_out_ga(0, 0) 209.69/54.17 predcA_in_ga(s(X1), s(X2)) -> U22_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.17 U22_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcA_out_ga(s(X1), s(X2)) 209.69/54.17 U24_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcC_out_ga(X1, s(X2)) 209.69/54.17 predcB_in_ga(0, 0) -> predcB_out_ga(0, 0) 209.69/54.17 predcB_in_ga(s(0), 0) -> predcB_out_ga(s(0), 0) 209.69/54.17 predcB_in_ga(s(s(X1)), s(X2)) -> U23_ga(X1, X2, predcB_in_ga(s(X1), X2)) 209.69/54.17 U23_ga(X1, X2, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.17 halfcD_in_ga(0, 0) -> halfcD_out_ga(0, 0) 209.69/54.17 halfcD_in_ga(s(s(X1)), s(X2)) -> U25_ga(X1, X2, predcC_in_ga(X1, X3)) 209.69/54.17 U25_ga(X1, X2, predcC_out_ga(X1, X3)) -> U26_ga(X1, X2, predcB_in_ga(X3, X4)) 209.69/54.17 U26_ga(X1, X2, predcB_out_ga(X3, X4)) -> U27_ga(X1, X2, halfcD_in_ga(X4, X2)) 209.69/54.17 U27_ga(X1, X2, halfcD_out_ga(X4, X2)) -> halfcD_out_ga(s(s(X1)), s(X2)) 209.69/54.17 doublecF_in_ga(X1, s(s(X2))) -> U36_ga(X1, X2, qcG_in_gaa(X1, X3, X2)) 209.69/54.17 qcG_in_gaa(X1, 0, 0) -> U33_gaa(X1, predcB_in_gg(s(X1), 0)) 209.69/54.17 predcB_in_gg(0, 0) -> predcB_out_gg(0, 0) 209.69/54.17 predcB_in_gg(s(0), 0) -> predcB_out_gg(s(0), 0) 209.69/54.17 predcB_in_gg(s(s(X1)), s(X2)) -> U23_gg(X1, X2, predcB_in_gg(s(X1), X2)) 209.69/54.17 U23_gg(X1, X2, predcB_out_gg(s(X1), X2)) -> predcB_out_gg(s(s(X1)), s(X2)) 209.69/54.17 U33_gaa(X1, predcB_out_gg(s(X1), 0)) -> qcG_out_gaa(X1, 0, 0) 209.69/54.17 qcG_in_gaa(X1, s(X2), s(s(X3))) -> U34_gaa(X1, X2, X3, predcB_in_ga(s(X1), s(X2))) 209.69/54.17 U34_gaa(X1, X2, X3, predcB_out_ga(s(X1), s(X2))) -> U35_gaa(X1, X2, X3, qcG_in_gaa(X2, X4, X3)) 209.69/54.17 U35_gaa(X1, X2, X3, qcG_out_gaa(X2, X4, X3)) -> qcG_out_gaa(X1, s(X2), s(s(X3))) 209.69/54.17 U36_ga(X1, X2, qcG_out_gaa(X1, X3, X2)) -> doublecF_out_ga(X1, s(s(X2))) 209.69/54.17 209.69/54.17 The argument filtering Pi contains the following mapping: 209.69/54.17 s(x1) = s(x1) 209.69/54.17 209.69/54.17 predcC_in_ga(x1, x2) = predcC_in_ga(x1) 209.69/54.17 209.69/54.17 U24_ga(x1, x2, x3) = U24_ga(x1, x3) 209.69/54.17 209.69/54.17 predcA_in_ga(x1, x2) = predcA_in_ga(x1) 209.69/54.17 209.69/54.17 0 = 0 209.69/54.17 209.69/54.17 predcA_out_ga(x1, x2) = predcA_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U22_ga(x1, x2, x3) = U22_ga(x1, x3) 209.69/54.17 209.69/54.17 predcC_out_ga(x1, x2) = predcC_out_ga(x1, x2) 209.69/54.17 209.69/54.17 predcB_in_ga(x1, x2) = predcB_in_ga(x1) 209.69/54.17 209.69/54.17 predcB_out_ga(x1, x2) = predcB_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U23_ga(x1, x2, x3) = U23_ga(x1, x3) 209.69/54.17 209.69/54.17 halfcD_in_ga(x1, x2) = halfcD_in_ga(x1) 209.69/54.17 209.69/54.17 halfcD_out_ga(x1, x2) = halfcD_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U25_ga(x1, x2, x3) = U25_ga(x1, x3) 209.69/54.17 209.69/54.17 U26_ga(x1, x2, x3) = U26_ga(x1, x3) 209.69/54.17 209.69/54.17 U27_ga(x1, x2, x3) = U27_ga(x1, x3) 209.69/54.17 209.69/54.17 doublecF_in_ga(x1, x2) = doublecF_in_ga(x1) 209.69/54.17 209.69/54.17 U36_ga(x1, x2, x3) = U36_ga(x1, x3) 209.69/54.17 209.69/54.17 qcG_in_gaa(x1, x2, x3) = qcG_in_gaa(x1) 209.69/54.17 209.69/54.17 U33_gaa(x1, x2) = U33_gaa(x1, x2) 209.69/54.17 209.69/54.17 predcB_in_gg(x1, x2) = predcB_in_gg(x1, x2) 209.69/54.17 209.69/54.17 predcB_out_gg(x1, x2) = predcB_out_gg(x1, x2) 209.69/54.17 209.69/54.17 U23_gg(x1, x2, x3) = U23_gg(x1, x2, x3) 209.69/54.17 209.69/54.17 qcG_out_gaa(x1, x2, x3) = qcG_out_gaa(x1, x2, x3) 209.69/54.17 209.69/54.17 U34_gaa(x1, x2, x3, x4) = U34_gaa(x1, x4) 209.69/54.17 209.69/54.17 U35_gaa(x1, x2, x3, x4) = U35_gaa(x1, x2, x4) 209.69/54.17 209.69/54.17 doublecF_out_ga(x1, x2) = doublecF_out_ga(x1, x2) 209.69/54.17 209.69/54.17 PREDB_IN_GA(x1, x2) = PREDB_IN_GA(x1) 209.69/54.17 209.69/54.17 209.69/54.17 We have to consider all (P,R,Pi)-chains 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (141) UsableRulesProof (EQUIVALENT) 209.69/54.17 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (142) 209.69/54.17 Obligation: 209.69/54.17 Pi DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 PREDB_IN_GA(s(s(X1)), s(X2)) -> PREDB_IN_GA(s(X1), X2) 209.69/54.17 209.69/54.17 R is empty. 209.69/54.17 The argument filtering Pi contains the following mapping: 209.69/54.17 s(x1) = s(x1) 209.69/54.17 209.69/54.17 PREDB_IN_GA(x1, x2) = PREDB_IN_GA(x1) 209.69/54.17 209.69/54.17 209.69/54.17 We have to consider all (P,R,Pi)-chains 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (143) PiDPToQDPProof (SOUND) 209.69/54.17 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (144) 209.69/54.17 Obligation: 209.69/54.17 Q DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 PREDB_IN_GA(s(s(X1))) -> PREDB_IN_GA(s(X1)) 209.69/54.17 209.69/54.17 R is empty. 209.69/54.17 Q is empty. 209.69/54.17 We have to consider all (P,Q,R)-chains. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (145) QDPSizeChangeProof (EQUIVALENT) 209.69/54.17 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. 209.69/54.17 209.69/54.17 From the DPs we obtained the following set of size-change graphs: 209.69/54.17 *PREDB_IN_GA(s(s(X1))) -> PREDB_IN_GA(s(X1)) 209.69/54.17 The graph contains the following edges 1 > 1 209.69/54.17 209.69/54.17 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (146) 209.69/54.17 YES 209.69/54.17 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (147) 209.69/54.17 Obligation: 209.69/54.17 Pi DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 PG_IN_GAA(X1, s(X2), s(s(X3))) -> U10_GAA(X1, X2, X3, predcB_in_ga(s(X1), s(X2))) 209.69/54.17 U10_GAA(X1, X2, X3, predcB_out_ga(s(X1), s(X2))) -> PG_IN_GAA(X2, X4, X3) 209.69/54.17 209.69/54.17 The TRS R consists of the following rules: 209.69/54.17 209.69/54.17 predcC_in_ga(X1, s(X2)) -> U24_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.17 predcA_in_ga(0, 0) -> predcA_out_ga(0, 0) 209.69/54.17 predcA_in_ga(s(X1), s(X2)) -> U22_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.17 U22_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcA_out_ga(s(X1), s(X2)) 209.69/54.17 U24_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcC_out_ga(X1, s(X2)) 209.69/54.17 predcB_in_ga(0, 0) -> predcB_out_ga(0, 0) 209.69/54.17 predcB_in_ga(s(0), 0) -> predcB_out_ga(s(0), 0) 209.69/54.17 predcB_in_ga(s(s(X1)), s(X2)) -> U23_ga(X1, X2, predcB_in_ga(s(X1), X2)) 209.69/54.17 U23_ga(X1, X2, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.17 halfcD_in_ga(0, 0) -> halfcD_out_ga(0, 0) 209.69/54.17 halfcD_in_ga(s(s(X1)), s(X2)) -> U25_ga(X1, X2, predcC_in_ga(X1, X3)) 209.69/54.17 U25_ga(X1, X2, predcC_out_ga(X1, X3)) -> U26_ga(X1, X2, predcB_in_ga(X3, X4)) 209.69/54.17 U26_ga(X1, X2, predcB_out_ga(X3, X4)) -> U27_ga(X1, X2, halfcD_in_ga(X4, X2)) 209.69/54.17 U27_ga(X1, X2, halfcD_out_ga(X4, X2)) -> halfcD_out_ga(s(s(X1)), s(X2)) 209.69/54.17 doublecF_in_ga(X1, s(s(X2))) -> U36_ga(X1, X2, qcG_in_gaa(X1, X3, X2)) 209.69/54.17 qcG_in_gaa(X1, 0, 0) -> U33_gaa(X1, predcB_in_gg(s(X1), 0)) 209.69/54.17 predcB_in_gg(0, 0) -> predcB_out_gg(0, 0) 209.69/54.17 predcB_in_gg(s(0), 0) -> predcB_out_gg(s(0), 0) 209.69/54.17 predcB_in_gg(s(s(X1)), s(X2)) -> U23_gg(X1, X2, predcB_in_gg(s(X1), X2)) 209.69/54.17 U23_gg(X1, X2, predcB_out_gg(s(X1), X2)) -> predcB_out_gg(s(s(X1)), s(X2)) 209.69/54.17 U33_gaa(X1, predcB_out_gg(s(X1), 0)) -> qcG_out_gaa(X1, 0, 0) 209.69/54.17 qcG_in_gaa(X1, s(X2), s(s(X3))) -> U34_gaa(X1, X2, X3, predcB_in_ga(s(X1), s(X2))) 209.69/54.17 U34_gaa(X1, X2, X3, predcB_out_ga(s(X1), s(X2))) -> U35_gaa(X1, X2, X3, qcG_in_gaa(X2, X4, X3)) 209.69/54.17 U35_gaa(X1, X2, X3, qcG_out_gaa(X2, X4, X3)) -> qcG_out_gaa(X1, s(X2), s(s(X3))) 209.69/54.17 U36_ga(X1, X2, qcG_out_gaa(X1, X3, X2)) -> doublecF_out_ga(X1, s(s(X2))) 209.69/54.17 209.69/54.17 The argument filtering Pi contains the following mapping: 209.69/54.17 s(x1) = s(x1) 209.69/54.17 209.69/54.17 predcC_in_ga(x1, x2) = predcC_in_ga(x1) 209.69/54.17 209.69/54.17 U24_ga(x1, x2, x3) = U24_ga(x1, x3) 209.69/54.17 209.69/54.17 predcA_in_ga(x1, x2) = predcA_in_ga(x1) 209.69/54.17 209.69/54.17 0 = 0 209.69/54.17 209.69/54.17 predcA_out_ga(x1, x2) = predcA_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U22_ga(x1, x2, x3) = U22_ga(x1, x3) 209.69/54.17 209.69/54.17 predcC_out_ga(x1, x2) = predcC_out_ga(x1, x2) 209.69/54.17 209.69/54.17 predcB_in_ga(x1, x2) = predcB_in_ga(x1) 209.69/54.17 209.69/54.17 predcB_out_ga(x1, x2) = predcB_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U23_ga(x1, x2, x3) = U23_ga(x1, x3) 209.69/54.17 209.69/54.17 halfcD_in_ga(x1, x2) = halfcD_in_ga(x1) 209.69/54.17 209.69/54.17 halfcD_out_ga(x1, x2) = halfcD_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U25_ga(x1, x2, x3) = U25_ga(x1, x3) 209.69/54.17 209.69/54.17 U26_ga(x1, x2, x3) = U26_ga(x1, x3) 209.69/54.17 209.69/54.17 U27_ga(x1, x2, x3) = U27_ga(x1, x3) 209.69/54.17 209.69/54.17 doublecF_in_ga(x1, x2) = doublecF_in_ga(x1) 209.69/54.17 209.69/54.17 U36_ga(x1, x2, x3) = U36_ga(x1, x3) 209.69/54.17 209.69/54.17 qcG_in_gaa(x1, x2, x3) = qcG_in_gaa(x1) 209.69/54.17 209.69/54.17 U33_gaa(x1, x2) = U33_gaa(x1, x2) 209.69/54.17 209.69/54.17 predcB_in_gg(x1, x2) = predcB_in_gg(x1, x2) 209.69/54.17 209.69/54.17 predcB_out_gg(x1, x2) = predcB_out_gg(x1, x2) 209.69/54.17 209.69/54.17 U23_gg(x1, x2, x3) = U23_gg(x1, x2, x3) 209.69/54.17 209.69/54.17 qcG_out_gaa(x1, x2, x3) = qcG_out_gaa(x1, x2, x3) 209.69/54.17 209.69/54.17 U34_gaa(x1, x2, x3, x4) = U34_gaa(x1, x4) 209.69/54.17 209.69/54.17 U35_gaa(x1, x2, x3, x4) = U35_gaa(x1, x2, x4) 209.69/54.17 209.69/54.17 doublecF_out_ga(x1, x2) = doublecF_out_ga(x1, x2) 209.69/54.17 209.69/54.17 PG_IN_GAA(x1, x2, x3) = PG_IN_GAA(x1) 209.69/54.17 209.69/54.17 U10_GAA(x1, x2, x3, x4) = U10_GAA(x1, x4) 209.69/54.17 209.69/54.17 209.69/54.17 We have to consider all (P,R,Pi)-chains 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (148) UsableRulesProof (EQUIVALENT) 209.69/54.17 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (149) 209.69/54.17 Obligation: 209.69/54.17 Pi DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 PG_IN_GAA(X1, s(X2), s(s(X3))) -> U10_GAA(X1, X2, X3, predcB_in_ga(s(X1), s(X2))) 209.69/54.17 U10_GAA(X1, X2, X3, predcB_out_ga(s(X1), s(X2))) -> PG_IN_GAA(X2, X4, X3) 209.69/54.17 209.69/54.17 The TRS R consists of the following rules: 209.69/54.17 209.69/54.17 predcB_in_ga(s(s(X1)), s(X2)) -> U23_ga(X1, X2, predcB_in_ga(s(X1), X2)) 209.69/54.17 U23_ga(X1, X2, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.17 predcB_in_ga(s(0), 0) -> predcB_out_ga(s(0), 0) 209.69/54.17 209.69/54.17 The argument filtering Pi contains the following mapping: 209.69/54.17 s(x1) = s(x1) 209.69/54.17 209.69/54.17 0 = 0 209.69/54.17 209.69/54.17 predcB_in_ga(x1, x2) = predcB_in_ga(x1) 209.69/54.17 209.69/54.17 predcB_out_ga(x1, x2) = predcB_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U23_ga(x1, x2, x3) = U23_ga(x1, x3) 209.69/54.17 209.69/54.17 PG_IN_GAA(x1, x2, x3) = PG_IN_GAA(x1) 209.69/54.17 209.69/54.17 U10_GAA(x1, x2, x3, x4) = U10_GAA(x1, x4) 209.69/54.17 209.69/54.17 209.69/54.17 We have to consider all (P,R,Pi)-chains 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (150) PiDPToQDPProof (SOUND) 209.69/54.17 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (151) 209.69/54.17 Obligation: 209.69/54.17 Q DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 PG_IN_GAA(X1) -> U10_GAA(X1, predcB_in_ga(s(X1))) 209.69/54.17 U10_GAA(X1, predcB_out_ga(s(X1), s(X2))) -> PG_IN_GAA(X2) 209.69/54.17 209.69/54.17 The TRS R consists of the following rules: 209.69/54.17 209.69/54.17 predcB_in_ga(s(s(X1))) -> U23_ga(X1, predcB_in_ga(s(X1))) 209.69/54.17 U23_ga(X1, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.17 predcB_in_ga(s(0)) -> predcB_out_ga(s(0), 0) 209.69/54.17 209.69/54.17 The set Q consists of the following terms: 209.69/54.17 209.69/54.17 predcB_in_ga(x0) 209.69/54.17 U23_ga(x0, x1) 209.69/54.17 209.69/54.17 We have to consider all (P,Q,R)-chains. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (152) QDPQMonotonicMRRProof (EQUIVALENT) 209.69/54.17 By using the Q-monotonic rule removal processor with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented such that it always occurs at a strongly monotonic position in a (P,Q,R)-chain. 209.69/54.17 209.69/54.17 209.69/54.17 Strictly oriented rules of the TRS R: 209.69/54.17 209.69/54.17 predcB_in_ga(s(0)) -> predcB_out_ga(s(0), 0) 209.69/54.17 209.69/54.17 Used ordering: Polynomial interpretation [POLO]: 209.69/54.17 209.69/54.17 POL(0) = 0 209.69/54.17 POL(PG_IN_GAA(x_1)) = 2 + 2*x_1 209.69/54.17 POL(U10_GAA(x_1, x_2)) = x_2 209.69/54.17 POL(U23_ga(x_1, x_2)) = 2 + x_2 209.69/54.17 POL(predcB_in_ga(x_1)) = 2*x_1 209.69/54.17 POL(predcB_out_ga(x_1, x_2)) = 2*x_2 209.69/54.17 POL(s(x_1)) = 1 + x_1 209.69/54.17 209.69/54.17 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (153) 209.69/54.17 Obligation: 209.69/54.17 Q DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 PG_IN_GAA(X1) -> U10_GAA(X1, predcB_in_ga(s(X1))) 209.69/54.17 U10_GAA(X1, predcB_out_ga(s(X1), s(X2))) -> PG_IN_GAA(X2) 209.69/54.17 209.69/54.17 The TRS R consists of the following rules: 209.69/54.17 209.69/54.17 predcB_in_ga(s(s(X1))) -> U23_ga(X1, predcB_in_ga(s(X1))) 209.69/54.17 U23_ga(X1, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.17 209.69/54.17 The set Q consists of the following terms: 209.69/54.17 209.69/54.17 predcB_in_ga(x0) 209.69/54.17 U23_ga(x0, x1) 209.69/54.17 209.69/54.17 We have to consider all (P,Q,R)-chains. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (154) QDPQMonotonicMRRProof (EQUIVALENT) 209.69/54.17 By using the Q-monotonic rule removal processor with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented such that it always occurs at a strongly monotonic position in a (P,Q,R)-chain. 209.69/54.17 209.69/54.17 Strictly oriented dependency pairs: 209.69/54.17 209.69/54.17 PG_IN_GAA(X1) -> U10_GAA(X1, predcB_in_ga(s(X1))) 209.69/54.17 U10_GAA(X1, predcB_out_ga(s(X1), s(X2))) -> PG_IN_GAA(X2) 209.69/54.17 209.69/54.17 209.69/54.17 Used ordering: Polynomial interpretation [POLO]: 209.69/54.17 209.69/54.17 POL(PG_IN_GAA(x_1)) = 2 209.69/54.17 POL(U10_GAA(x_1, x_2)) = 2*x_2 209.69/54.17 POL(U23_ga(x_1, x_2)) = 2*x_2 209.69/54.17 POL(predcB_in_ga(x_1)) = 0 209.69/54.17 POL(predcB_out_ga(x_1, x_2)) = x_1 209.69/54.17 POL(s(x_1)) = 2 + x_1 209.69/54.17 209.69/54.17 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (155) 209.69/54.17 Obligation: 209.69/54.17 Q DP problem: 209.69/54.17 P is empty. 209.69/54.17 The TRS R consists of the following rules: 209.69/54.17 209.69/54.17 predcB_in_ga(s(s(X1))) -> U23_ga(X1, predcB_in_ga(s(X1))) 209.69/54.17 U23_ga(X1, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.17 209.69/54.17 The set Q consists of the following terms: 209.69/54.17 209.69/54.17 predcB_in_ga(x0) 209.69/54.17 U23_ga(x0, x1) 209.69/54.17 209.69/54.17 We have to consider all (P,Q,R)-chains. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (156) PisEmptyProof (EQUIVALENT) 209.69/54.17 The TRS P is empty. Hence, there is no (P,Q,R) chain. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (157) 209.69/54.17 YES 209.69/54.17 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (158) 209.69/54.17 Obligation: 209.69/54.17 Pi DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 PREDA_IN_GA(s(X1), s(X2)) -> PREDA_IN_GA(X1, X2) 209.69/54.17 209.69/54.17 The TRS R consists of the following rules: 209.69/54.17 209.69/54.17 predcC_in_ga(X1, s(X2)) -> U24_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.17 predcA_in_ga(0, 0) -> predcA_out_ga(0, 0) 209.69/54.17 predcA_in_ga(s(X1), s(X2)) -> U22_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.17 U22_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcA_out_ga(s(X1), s(X2)) 209.69/54.17 U24_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcC_out_ga(X1, s(X2)) 209.69/54.17 predcB_in_ga(0, 0) -> predcB_out_ga(0, 0) 209.69/54.17 predcB_in_ga(s(0), 0) -> predcB_out_ga(s(0), 0) 209.69/54.17 predcB_in_ga(s(s(X1)), s(X2)) -> U23_ga(X1, X2, predcB_in_ga(s(X1), X2)) 209.69/54.17 U23_ga(X1, X2, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.17 halfcD_in_ga(0, 0) -> halfcD_out_ga(0, 0) 209.69/54.17 halfcD_in_ga(s(s(X1)), s(X2)) -> U25_ga(X1, X2, predcC_in_ga(X1, X3)) 209.69/54.17 U25_ga(X1, X2, predcC_out_ga(X1, X3)) -> U26_ga(X1, X2, predcB_in_ga(X3, X4)) 209.69/54.17 U26_ga(X1, X2, predcB_out_ga(X3, X4)) -> U27_ga(X1, X2, halfcD_in_ga(X4, X2)) 209.69/54.17 U27_ga(X1, X2, halfcD_out_ga(X4, X2)) -> halfcD_out_ga(s(s(X1)), s(X2)) 209.69/54.17 doublecF_in_ga(X1, s(s(X2))) -> U36_ga(X1, X2, qcG_in_gaa(X1, X3, X2)) 209.69/54.17 qcG_in_gaa(X1, 0, 0) -> U33_gaa(X1, predcB_in_gg(s(X1), 0)) 209.69/54.17 predcB_in_gg(0, 0) -> predcB_out_gg(0, 0) 209.69/54.17 predcB_in_gg(s(0), 0) -> predcB_out_gg(s(0), 0) 209.69/54.17 predcB_in_gg(s(s(X1)), s(X2)) -> U23_gg(X1, X2, predcB_in_gg(s(X1), X2)) 209.69/54.17 U23_gg(X1, X2, predcB_out_gg(s(X1), X2)) -> predcB_out_gg(s(s(X1)), s(X2)) 209.69/54.17 U33_gaa(X1, predcB_out_gg(s(X1), 0)) -> qcG_out_gaa(X1, 0, 0) 209.69/54.17 qcG_in_gaa(X1, s(X2), s(s(X3))) -> U34_gaa(X1, X2, X3, predcB_in_ga(s(X1), s(X2))) 209.69/54.17 U34_gaa(X1, X2, X3, predcB_out_ga(s(X1), s(X2))) -> U35_gaa(X1, X2, X3, qcG_in_gaa(X2, X4, X3)) 209.69/54.17 U35_gaa(X1, X2, X3, qcG_out_gaa(X2, X4, X3)) -> qcG_out_gaa(X1, s(X2), s(s(X3))) 209.69/54.17 U36_ga(X1, X2, qcG_out_gaa(X1, X3, X2)) -> doublecF_out_ga(X1, s(s(X2))) 209.69/54.17 209.69/54.17 The argument filtering Pi contains the following mapping: 209.69/54.17 s(x1) = s(x1) 209.69/54.17 209.69/54.17 predcC_in_ga(x1, x2) = predcC_in_ga(x1) 209.69/54.17 209.69/54.17 U24_ga(x1, x2, x3) = U24_ga(x1, x3) 209.69/54.17 209.69/54.17 predcA_in_ga(x1, x2) = predcA_in_ga(x1) 209.69/54.17 209.69/54.17 0 = 0 209.69/54.17 209.69/54.17 predcA_out_ga(x1, x2) = predcA_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U22_ga(x1, x2, x3) = U22_ga(x1, x3) 209.69/54.17 209.69/54.17 predcC_out_ga(x1, x2) = predcC_out_ga(x1, x2) 209.69/54.17 209.69/54.17 predcB_in_ga(x1, x2) = predcB_in_ga(x1) 209.69/54.17 209.69/54.17 predcB_out_ga(x1, x2) = predcB_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U23_ga(x1, x2, x3) = U23_ga(x1, x3) 209.69/54.17 209.69/54.17 halfcD_in_ga(x1, x2) = halfcD_in_ga(x1) 209.69/54.17 209.69/54.17 halfcD_out_ga(x1, x2) = halfcD_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U25_ga(x1, x2, x3) = U25_ga(x1, x3) 209.69/54.17 209.69/54.17 U26_ga(x1, x2, x3) = U26_ga(x1, x3) 209.69/54.17 209.69/54.17 U27_ga(x1, x2, x3) = U27_ga(x1, x3) 209.69/54.17 209.69/54.17 doublecF_in_ga(x1, x2) = doublecF_in_ga(x1) 209.69/54.17 209.69/54.17 U36_ga(x1, x2, x3) = U36_ga(x1, x3) 209.69/54.17 209.69/54.17 qcG_in_gaa(x1, x2, x3) = qcG_in_gaa(x1) 209.69/54.17 209.69/54.17 U33_gaa(x1, x2) = U33_gaa(x1, x2) 209.69/54.17 209.69/54.17 predcB_in_gg(x1, x2) = predcB_in_gg(x1, x2) 209.69/54.17 209.69/54.17 predcB_out_gg(x1, x2) = predcB_out_gg(x1, x2) 209.69/54.17 209.69/54.17 U23_gg(x1, x2, x3) = U23_gg(x1, x2, x3) 209.69/54.17 209.69/54.17 qcG_out_gaa(x1, x2, x3) = qcG_out_gaa(x1, x2, x3) 209.69/54.17 209.69/54.17 U34_gaa(x1, x2, x3, x4) = U34_gaa(x1, x4) 209.69/54.17 209.69/54.17 U35_gaa(x1, x2, x3, x4) = U35_gaa(x1, x2, x4) 209.69/54.17 209.69/54.17 doublecF_out_ga(x1, x2) = doublecF_out_ga(x1, x2) 209.69/54.17 209.69/54.17 PREDA_IN_GA(x1, x2) = PREDA_IN_GA(x1) 209.69/54.17 209.69/54.17 209.69/54.17 We have to consider all (P,R,Pi)-chains 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (159) UsableRulesProof (EQUIVALENT) 209.69/54.17 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (160) 209.69/54.17 Obligation: 209.69/54.17 Pi DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 PREDA_IN_GA(s(X1), s(X2)) -> PREDA_IN_GA(X1, X2) 209.69/54.17 209.69/54.17 R is empty. 209.69/54.17 The argument filtering Pi contains the following mapping: 209.69/54.17 s(x1) = s(x1) 209.69/54.17 209.69/54.17 PREDA_IN_GA(x1, x2) = PREDA_IN_GA(x1) 209.69/54.17 209.69/54.17 209.69/54.17 We have to consider all (P,R,Pi)-chains 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (161) PiDPToQDPProof (SOUND) 209.69/54.17 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (162) 209.69/54.17 Obligation: 209.69/54.17 Q DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 PREDA_IN_GA(s(X1)) -> PREDA_IN_GA(X1) 209.69/54.17 209.69/54.17 R is empty. 209.69/54.17 Q is empty. 209.69/54.17 We have to consider all (P,Q,R)-chains. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (163) QDPSizeChangeProof (EQUIVALENT) 209.69/54.17 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. 209.69/54.17 209.69/54.17 From the DPs we obtained the following set of size-change graphs: 209.69/54.17 *PREDA_IN_GA(s(X1)) -> PREDA_IN_GA(X1) 209.69/54.17 The graph contains the following edges 1 > 1 209.69/54.17 209.69/54.17 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (164) 209.69/54.17 YES 209.69/54.17 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (165) 209.69/54.17 Obligation: 209.69/54.17 Pi DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 HALFD_IN_GA(s(s(X1)), s(X2)) -> U5_GA(X1, X2, predcC_in_ga(X1, X3)) 209.69/54.17 U5_GA(X1, X2, predcC_out_ga(X1, X3)) -> U7_GA(X1, X2, predcB_in_ga(X3, X4)) 209.69/54.17 U7_GA(X1, X2, predcB_out_ga(X3, X4)) -> HALFD_IN_GA(X4, X2) 209.69/54.17 209.69/54.17 The TRS R consists of the following rules: 209.69/54.17 209.69/54.17 predcC_in_ga(X1, s(X2)) -> U24_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.17 predcA_in_ga(0, 0) -> predcA_out_ga(0, 0) 209.69/54.17 predcA_in_ga(s(X1), s(X2)) -> U22_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.17 U22_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcA_out_ga(s(X1), s(X2)) 209.69/54.17 U24_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcC_out_ga(X1, s(X2)) 209.69/54.17 predcB_in_ga(0, 0) -> predcB_out_ga(0, 0) 209.69/54.17 predcB_in_ga(s(0), 0) -> predcB_out_ga(s(0), 0) 209.69/54.17 predcB_in_ga(s(s(X1)), s(X2)) -> U23_ga(X1, X2, predcB_in_ga(s(X1), X2)) 209.69/54.17 U23_ga(X1, X2, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.17 halfcD_in_ga(0, 0) -> halfcD_out_ga(0, 0) 209.69/54.17 halfcD_in_ga(s(s(X1)), s(X2)) -> U25_ga(X1, X2, predcC_in_ga(X1, X3)) 209.69/54.17 U25_ga(X1, X2, predcC_out_ga(X1, X3)) -> U26_ga(X1, X2, predcB_in_ga(X3, X4)) 209.69/54.17 U26_ga(X1, X2, predcB_out_ga(X3, X4)) -> U27_ga(X1, X2, halfcD_in_ga(X4, X2)) 209.69/54.17 U27_ga(X1, X2, halfcD_out_ga(X4, X2)) -> halfcD_out_ga(s(s(X1)), s(X2)) 209.69/54.17 doublecF_in_ga(X1, s(s(X2))) -> U36_ga(X1, X2, qcG_in_gaa(X1, X3, X2)) 209.69/54.17 qcG_in_gaa(X1, 0, 0) -> U33_gaa(X1, predcB_in_gg(s(X1), 0)) 209.69/54.17 predcB_in_gg(0, 0) -> predcB_out_gg(0, 0) 209.69/54.17 predcB_in_gg(s(0), 0) -> predcB_out_gg(s(0), 0) 209.69/54.17 predcB_in_gg(s(s(X1)), s(X2)) -> U23_gg(X1, X2, predcB_in_gg(s(X1), X2)) 209.69/54.17 U23_gg(X1, X2, predcB_out_gg(s(X1), X2)) -> predcB_out_gg(s(s(X1)), s(X2)) 209.69/54.17 U33_gaa(X1, predcB_out_gg(s(X1), 0)) -> qcG_out_gaa(X1, 0, 0) 209.69/54.17 qcG_in_gaa(X1, s(X2), s(s(X3))) -> U34_gaa(X1, X2, X3, predcB_in_ga(s(X1), s(X2))) 209.69/54.17 U34_gaa(X1, X2, X3, predcB_out_ga(s(X1), s(X2))) -> U35_gaa(X1, X2, X3, qcG_in_gaa(X2, X4, X3)) 209.69/54.17 U35_gaa(X1, X2, X3, qcG_out_gaa(X2, X4, X3)) -> qcG_out_gaa(X1, s(X2), s(s(X3))) 209.69/54.17 U36_ga(X1, X2, qcG_out_gaa(X1, X3, X2)) -> doublecF_out_ga(X1, s(s(X2))) 209.69/54.17 209.69/54.17 The argument filtering Pi contains the following mapping: 209.69/54.17 s(x1) = s(x1) 209.69/54.17 209.69/54.17 predcC_in_ga(x1, x2) = predcC_in_ga(x1) 209.69/54.17 209.69/54.17 U24_ga(x1, x2, x3) = U24_ga(x1, x3) 209.69/54.17 209.69/54.17 predcA_in_ga(x1, x2) = predcA_in_ga(x1) 209.69/54.17 209.69/54.17 0 = 0 209.69/54.17 209.69/54.17 predcA_out_ga(x1, x2) = predcA_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U22_ga(x1, x2, x3) = U22_ga(x1, x3) 209.69/54.17 209.69/54.17 predcC_out_ga(x1, x2) = predcC_out_ga(x1, x2) 209.69/54.17 209.69/54.17 predcB_in_ga(x1, x2) = predcB_in_ga(x1) 209.69/54.17 209.69/54.17 predcB_out_ga(x1, x2) = predcB_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U23_ga(x1, x2, x3) = U23_ga(x1, x3) 209.69/54.17 209.69/54.17 halfcD_in_ga(x1, x2) = halfcD_in_ga(x1) 209.69/54.17 209.69/54.17 halfcD_out_ga(x1, x2) = halfcD_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U25_ga(x1, x2, x3) = U25_ga(x1, x3) 209.69/54.17 209.69/54.17 U26_ga(x1, x2, x3) = U26_ga(x1, x3) 209.69/54.17 209.69/54.17 U27_ga(x1, x2, x3) = U27_ga(x1, x3) 209.69/54.17 209.69/54.17 doublecF_in_ga(x1, x2) = doublecF_in_ga(x1) 209.69/54.17 209.69/54.17 U36_ga(x1, x2, x3) = U36_ga(x1, x3) 209.69/54.17 209.69/54.17 qcG_in_gaa(x1, x2, x3) = qcG_in_gaa(x1) 209.69/54.17 209.69/54.17 U33_gaa(x1, x2) = U33_gaa(x1, x2) 209.69/54.17 209.69/54.17 predcB_in_gg(x1, x2) = predcB_in_gg(x1, x2) 209.69/54.17 209.69/54.17 predcB_out_gg(x1, x2) = predcB_out_gg(x1, x2) 209.69/54.17 209.69/54.17 U23_gg(x1, x2, x3) = U23_gg(x1, x2, x3) 209.69/54.17 209.69/54.17 qcG_out_gaa(x1, x2, x3) = qcG_out_gaa(x1, x2, x3) 209.69/54.17 209.69/54.17 U34_gaa(x1, x2, x3, x4) = U34_gaa(x1, x4) 209.69/54.17 209.69/54.17 U35_gaa(x1, x2, x3, x4) = U35_gaa(x1, x2, x4) 209.69/54.17 209.69/54.17 doublecF_out_ga(x1, x2) = doublecF_out_ga(x1, x2) 209.69/54.17 209.69/54.17 HALFD_IN_GA(x1, x2) = HALFD_IN_GA(x1) 209.69/54.17 209.69/54.17 U5_GA(x1, x2, x3) = U5_GA(x1, x3) 209.69/54.17 209.69/54.17 U7_GA(x1, x2, x3) = U7_GA(x1, x3) 209.69/54.17 209.69/54.17 209.69/54.17 We have to consider all (P,R,Pi)-chains 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (166) UsableRulesProof (EQUIVALENT) 209.69/54.17 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (167) 209.69/54.17 Obligation: 209.69/54.17 Pi DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 HALFD_IN_GA(s(s(X1)), s(X2)) -> U5_GA(X1, X2, predcC_in_ga(X1, X3)) 209.69/54.17 U5_GA(X1, X2, predcC_out_ga(X1, X3)) -> U7_GA(X1, X2, predcB_in_ga(X3, X4)) 209.69/54.17 U7_GA(X1, X2, predcB_out_ga(X3, X4)) -> HALFD_IN_GA(X4, X2) 209.69/54.17 209.69/54.17 The TRS R consists of the following rules: 209.69/54.17 209.69/54.17 predcC_in_ga(X1, s(X2)) -> U24_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.17 predcB_in_ga(0, 0) -> predcB_out_ga(0, 0) 209.69/54.17 predcB_in_ga(s(0), 0) -> predcB_out_ga(s(0), 0) 209.69/54.17 predcB_in_ga(s(s(X1)), s(X2)) -> U23_ga(X1, X2, predcB_in_ga(s(X1), X2)) 209.69/54.17 U24_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcC_out_ga(X1, s(X2)) 209.69/54.17 U23_ga(X1, X2, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.17 predcA_in_ga(0, 0) -> predcA_out_ga(0, 0) 209.69/54.17 predcA_in_ga(s(X1), s(X2)) -> U22_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.17 U22_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcA_out_ga(s(X1), s(X2)) 209.69/54.17 209.69/54.17 The argument filtering Pi contains the following mapping: 209.69/54.17 s(x1) = s(x1) 209.69/54.17 209.69/54.17 predcC_in_ga(x1, x2) = predcC_in_ga(x1) 209.69/54.17 209.69/54.17 U24_ga(x1, x2, x3) = U24_ga(x1, x3) 209.69/54.17 209.69/54.17 predcA_in_ga(x1, x2) = predcA_in_ga(x1) 209.69/54.17 209.69/54.17 0 = 0 209.69/54.17 209.69/54.17 predcA_out_ga(x1, x2) = predcA_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U22_ga(x1, x2, x3) = U22_ga(x1, x3) 209.69/54.17 209.69/54.17 predcC_out_ga(x1, x2) = predcC_out_ga(x1, x2) 209.69/54.17 209.69/54.17 predcB_in_ga(x1, x2) = predcB_in_ga(x1) 209.69/54.17 209.69/54.17 predcB_out_ga(x1, x2) = predcB_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U23_ga(x1, x2, x3) = U23_ga(x1, x3) 209.69/54.17 209.69/54.17 HALFD_IN_GA(x1, x2) = HALFD_IN_GA(x1) 209.69/54.17 209.69/54.17 U5_GA(x1, x2, x3) = U5_GA(x1, x3) 209.69/54.17 209.69/54.17 U7_GA(x1, x2, x3) = U7_GA(x1, x3) 209.69/54.17 209.69/54.17 209.69/54.17 We have to consider all (P,R,Pi)-chains 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (168) PiDPToQDPProof (SOUND) 209.69/54.17 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (169) 209.69/54.17 Obligation: 209.69/54.17 Q DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 HALFD_IN_GA(s(s(X1))) -> U5_GA(X1, predcC_in_ga(X1)) 209.69/54.17 U5_GA(X1, predcC_out_ga(X1, X3)) -> U7_GA(X1, predcB_in_ga(X3)) 209.69/54.17 U7_GA(X1, predcB_out_ga(X3, X4)) -> HALFD_IN_GA(X4) 209.69/54.17 209.69/54.17 The TRS R consists of the following rules: 209.69/54.17 209.69/54.17 predcC_in_ga(X1) -> U24_ga(X1, predcA_in_ga(X1)) 209.69/54.17 predcB_in_ga(0) -> predcB_out_ga(0, 0) 209.69/54.17 predcB_in_ga(s(0)) -> predcB_out_ga(s(0), 0) 209.69/54.17 predcB_in_ga(s(s(X1))) -> U23_ga(X1, predcB_in_ga(s(X1))) 209.69/54.17 U24_ga(X1, predcA_out_ga(X1, X2)) -> predcC_out_ga(X1, s(X2)) 209.69/54.17 U23_ga(X1, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.17 predcA_in_ga(0) -> predcA_out_ga(0, 0) 209.69/54.17 predcA_in_ga(s(X1)) -> U22_ga(X1, predcA_in_ga(X1)) 209.69/54.17 U22_ga(X1, predcA_out_ga(X1, X2)) -> predcA_out_ga(s(X1), s(X2)) 209.69/54.17 209.69/54.17 The set Q consists of the following terms: 209.69/54.17 209.69/54.17 predcC_in_ga(x0) 209.69/54.17 predcB_in_ga(x0) 209.69/54.17 U24_ga(x0, x1) 209.69/54.17 U23_ga(x0, x1) 209.69/54.17 predcA_in_ga(x0) 209.69/54.17 U22_ga(x0, x1) 209.69/54.17 209.69/54.17 We have to consider all (P,Q,R)-chains. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (170) TransformationProof (EQUIVALENT) 209.69/54.17 By rewriting [LPAR04] the rule HALFD_IN_GA(s(s(X1))) -> U5_GA(X1, predcC_in_ga(X1)) at position [1] we obtained the following new rules [LPAR04]: 209.69/54.17 209.69/54.17 (HALFD_IN_GA(s(s(X1))) -> U5_GA(X1, U24_ga(X1, predcA_in_ga(X1))),HALFD_IN_GA(s(s(X1))) -> U5_GA(X1, U24_ga(X1, predcA_in_ga(X1)))) 209.69/54.17 209.69/54.17 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (171) 209.69/54.17 Obligation: 209.69/54.17 Q DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 U5_GA(X1, predcC_out_ga(X1, X3)) -> U7_GA(X1, predcB_in_ga(X3)) 209.69/54.17 U7_GA(X1, predcB_out_ga(X3, X4)) -> HALFD_IN_GA(X4) 209.69/54.17 HALFD_IN_GA(s(s(X1))) -> U5_GA(X1, U24_ga(X1, predcA_in_ga(X1))) 209.69/54.17 209.69/54.17 The TRS R consists of the following rules: 209.69/54.17 209.69/54.17 predcC_in_ga(X1) -> U24_ga(X1, predcA_in_ga(X1)) 209.69/54.17 predcB_in_ga(0) -> predcB_out_ga(0, 0) 209.69/54.17 predcB_in_ga(s(0)) -> predcB_out_ga(s(0), 0) 209.69/54.17 predcB_in_ga(s(s(X1))) -> U23_ga(X1, predcB_in_ga(s(X1))) 209.69/54.17 U24_ga(X1, predcA_out_ga(X1, X2)) -> predcC_out_ga(X1, s(X2)) 209.69/54.17 U23_ga(X1, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.17 predcA_in_ga(0) -> predcA_out_ga(0, 0) 209.69/54.17 predcA_in_ga(s(X1)) -> U22_ga(X1, predcA_in_ga(X1)) 209.69/54.17 U22_ga(X1, predcA_out_ga(X1, X2)) -> predcA_out_ga(s(X1), s(X2)) 209.69/54.17 209.69/54.17 The set Q consists of the following terms: 209.69/54.17 209.69/54.17 predcC_in_ga(x0) 209.69/54.17 predcB_in_ga(x0) 209.69/54.17 U24_ga(x0, x1) 209.69/54.17 U23_ga(x0, x1) 209.69/54.17 predcA_in_ga(x0) 209.69/54.17 U22_ga(x0, x1) 209.69/54.17 209.69/54.17 We have to consider all (P,Q,R)-chains. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (172) UsableRulesProof (EQUIVALENT) 209.69/54.17 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. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (173) 209.69/54.17 Obligation: 209.69/54.17 Q DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 U5_GA(X1, predcC_out_ga(X1, X3)) -> U7_GA(X1, predcB_in_ga(X3)) 209.69/54.17 U7_GA(X1, predcB_out_ga(X3, X4)) -> HALFD_IN_GA(X4) 209.69/54.17 HALFD_IN_GA(s(s(X1))) -> U5_GA(X1, U24_ga(X1, predcA_in_ga(X1))) 209.69/54.17 209.69/54.17 The TRS R consists of the following rules: 209.69/54.17 209.69/54.17 predcA_in_ga(0) -> predcA_out_ga(0, 0) 209.69/54.17 predcA_in_ga(s(X1)) -> U22_ga(X1, predcA_in_ga(X1)) 209.69/54.17 U24_ga(X1, predcA_out_ga(X1, X2)) -> predcC_out_ga(X1, s(X2)) 209.69/54.17 U22_ga(X1, predcA_out_ga(X1, X2)) -> predcA_out_ga(s(X1), s(X2)) 209.69/54.17 predcB_in_ga(0) -> predcB_out_ga(0, 0) 209.69/54.17 predcB_in_ga(s(0)) -> predcB_out_ga(s(0), 0) 209.69/54.17 predcB_in_ga(s(s(X1))) -> U23_ga(X1, predcB_in_ga(s(X1))) 209.69/54.17 U23_ga(X1, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.17 209.69/54.17 The set Q consists of the following terms: 209.69/54.17 209.69/54.17 predcC_in_ga(x0) 209.69/54.17 predcB_in_ga(x0) 209.69/54.17 U24_ga(x0, x1) 209.69/54.17 U23_ga(x0, x1) 209.69/54.17 predcA_in_ga(x0) 209.69/54.17 U22_ga(x0, x1) 209.69/54.17 209.69/54.17 We have to consider all (P,Q,R)-chains. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (174) QReductionProof (EQUIVALENT) 209.69/54.17 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 209.69/54.17 209.69/54.17 predcC_in_ga(x0) 209.69/54.17 209.69/54.17 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (175) 209.69/54.17 Obligation: 209.69/54.17 Q DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 U5_GA(X1, predcC_out_ga(X1, X3)) -> U7_GA(X1, predcB_in_ga(X3)) 209.69/54.17 U7_GA(X1, predcB_out_ga(X3, X4)) -> HALFD_IN_GA(X4) 209.69/54.17 HALFD_IN_GA(s(s(X1))) -> U5_GA(X1, U24_ga(X1, predcA_in_ga(X1))) 209.69/54.17 209.69/54.17 The TRS R consists of the following rules: 209.69/54.17 209.69/54.17 predcA_in_ga(0) -> predcA_out_ga(0, 0) 209.69/54.17 predcA_in_ga(s(X1)) -> U22_ga(X1, predcA_in_ga(X1)) 209.69/54.17 U24_ga(X1, predcA_out_ga(X1, X2)) -> predcC_out_ga(X1, s(X2)) 209.69/54.17 U22_ga(X1, predcA_out_ga(X1, X2)) -> predcA_out_ga(s(X1), s(X2)) 209.69/54.17 predcB_in_ga(0) -> predcB_out_ga(0, 0) 209.69/54.17 predcB_in_ga(s(0)) -> predcB_out_ga(s(0), 0) 209.69/54.17 predcB_in_ga(s(s(X1))) -> U23_ga(X1, predcB_in_ga(s(X1))) 209.69/54.17 U23_ga(X1, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.17 209.69/54.17 The set Q consists of the following terms: 209.69/54.17 209.69/54.17 predcB_in_ga(x0) 209.69/54.17 U24_ga(x0, x1) 209.69/54.17 U23_ga(x0, x1) 209.69/54.17 predcA_in_ga(x0) 209.69/54.17 U22_ga(x0, x1) 209.69/54.17 209.69/54.17 We have to consider all (P,Q,R)-chains. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (176) QDPQMonotonicMRRProof (EQUIVALENT) 209.69/54.17 By using the Q-monotonic rule removal processor with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented such that it always occurs at a strongly monotonic position in a (P,Q,R)-chain. 209.69/54.17 209.69/54.17 Strictly oriented dependency pairs: 209.69/54.17 209.69/54.17 U5_GA(X1, predcC_out_ga(X1, X3)) -> U7_GA(X1, predcB_in_ga(X3)) 209.69/54.17 HALFD_IN_GA(s(s(X1))) -> U5_GA(X1, U24_ga(X1, predcA_in_ga(X1))) 209.69/54.17 209.69/54.17 Strictly oriented rules of the TRS R: 209.69/54.17 209.69/54.17 predcB_in_ga(s(0)) -> predcB_out_ga(s(0), 0) 209.69/54.17 209.69/54.17 Used ordering: Polynomial interpretation [POLO]: 209.69/54.17 209.69/54.17 POL(0) = 0 209.69/54.17 POL(HALFD_IN_GA(x_1)) = 2*x_1 209.69/54.17 POL(U22_ga(x_1, x_2)) = 2 + x_2 209.69/54.17 POL(U23_ga(x_1, x_2)) = 2 + x_2 209.69/54.17 POL(U24_ga(x_1, x_2)) = 2 + 2*x_2 209.69/54.17 POL(U5_GA(x_1, x_2)) = 2 + x_2 209.69/54.17 POL(U7_GA(x_1, x_2)) = 2*x_2 209.69/54.17 POL(predcA_in_ga(x_1)) = 1 + x_1 209.69/54.17 POL(predcA_out_ga(x_1, x_2)) = 1 + x_2 209.69/54.17 POL(predcB_in_ga(x_1)) = x_1 209.69/54.17 POL(predcB_out_ga(x_1, x_2)) = x_2 209.69/54.17 POL(predcC_out_ga(x_1, x_2)) = 2*x_2 209.69/54.17 POL(s(x_1)) = 2 + x_1 209.69/54.17 209.69/54.17 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (177) 209.69/54.17 Obligation: 209.69/54.17 Q DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 U7_GA(X1, predcB_out_ga(X3, X4)) -> HALFD_IN_GA(X4) 209.69/54.17 209.69/54.17 The TRS R consists of the following rules: 209.69/54.17 209.69/54.17 predcA_in_ga(0) -> predcA_out_ga(0, 0) 209.69/54.17 predcA_in_ga(s(X1)) -> U22_ga(X1, predcA_in_ga(X1)) 209.69/54.17 U24_ga(X1, predcA_out_ga(X1, X2)) -> predcC_out_ga(X1, s(X2)) 209.69/54.17 U22_ga(X1, predcA_out_ga(X1, X2)) -> predcA_out_ga(s(X1), s(X2)) 209.69/54.17 predcB_in_ga(0) -> predcB_out_ga(0, 0) 209.69/54.17 predcB_in_ga(s(s(X1))) -> U23_ga(X1, predcB_in_ga(s(X1))) 209.69/54.17 U23_ga(X1, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.17 209.69/54.17 The set Q consists of the following terms: 209.69/54.17 209.69/54.17 predcB_in_ga(x0) 209.69/54.17 U24_ga(x0, x1) 209.69/54.17 U23_ga(x0, x1) 209.69/54.17 predcA_in_ga(x0) 209.69/54.17 U22_ga(x0, x1) 209.69/54.17 209.69/54.17 We have to consider all (P,Q,R)-chains. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (178) DependencyGraphProof (EQUIVALENT) 209.69/54.17 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (179) 209.69/54.17 TRUE 209.69/54.17 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (180) 209.69/54.17 Obligation: 209.69/54.17 Pi DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 FE_IN_G(s(s(X1))) -> U13_G(X1, predcC_in_ga(X1, X2)) 209.69/54.17 U13_G(X1, predcC_out_ga(X1, X2)) -> U15_G(X1, predcB_in_ga(X2, X3)) 209.69/54.17 U15_G(X1, predcB_out_ga(X2, X3)) -> U17_G(X1, halfcD_in_ga(X3, X4)) 209.69/54.17 U17_G(X1, halfcD_out_ga(X3, X4)) -> U19_G(X1, doublecF_in_ga(X4, X5)) 209.69/54.17 U19_G(X1, doublecF_out_ga(X4, X5)) -> FE_IN_G(X5) 209.69/54.17 209.69/54.17 The TRS R consists of the following rules: 209.69/54.17 209.69/54.17 predcC_in_ga(X1, s(X2)) -> U24_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.17 predcA_in_ga(0, 0) -> predcA_out_ga(0, 0) 209.69/54.17 predcA_in_ga(s(X1), s(X2)) -> U22_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.17 U22_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcA_out_ga(s(X1), s(X2)) 209.69/54.17 U24_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcC_out_ga(X1, s(X2)) 209.69/54.17 predcB_in_ga(0, 0) -> predcB_out_ga(0, 0) 209.69/54.17 predcB_in_ga(s(0), 0) -> predcB_out_ga(s(0), 0) 209.69/54.17 predcB_in_ga(s(s(X1)), s(X2)) -> U23_ga(X1, X2, predcB_in_ga(s(X1), X2)) 209.69/54.17 U23_ga(X1, X2, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.17 halfcD_in_ga(0, 0) -> halfcD_out_ga(0, 0) 209.69/54.17 halfcD_in_ga(s(s(X1)), s(X2)) -> U25_ga(X1, X2, predcC_in_ga(X1, X3)) 209.69/54.17 U25_ga(X1, X2, predcC_out_ga(X1, X3)) -> U26_ga(X1, X2, predcB_in_ga(X3, X4)) 209.69/54.17 U26_ga(X1, X2, predcB_out_ga(X3, X4)) -> U27_ga(X1, X2, halfcD_in_ga(X4, X2)) 209.69/54.17 U27_ga(X1, X2, halfcD_out_ga(X4, X2)) -> halfcD_out_ga(s(s(X1)), s(X2)) 209.69/54.17 doublecF_in_ga(X1, s(s(X2))) -> U36_ga(X1, X2, qcG_in_gaa(X1, X3, X2)) 209.69/54.17 qcG_in_gaa(X1, 0, 0) -> U33_gaa(X1, predcB_in_gg(s(X1), 0)) 209.69/54.17 predcB_in_gg(0, 0) -> predcB_out_gg(0, 0) 209.69/54.17 predcB_in_gg(s(0), 0) -> predcB_out_gg(s(0), 0) 209.69/54.17 predcB_in_gg(s(s(X1)), s(X2)) -> U23_gg(X1, X2, predcB_in_gg(s(X1), X2)) 209.69/54.17 U23_gg(X1, X2, predcB_out_gg(s(X1), X2)) -> predcB_out_gg(s(s(X1)), s(X2)) 209.69/54.17 U33_gaa(X1, predcB_out_gg(s(X1), 0)) -> qcG_out_gaa(X1, 0, 0) 209.69/54.17 qcG_in_gaa(X1, s(X2), s(s(X3))) -> U34_gaa(X1, X2, X3, predcB_in_ga(s(X1), s(X2))) 209.69/54.17 U34_gaa(X1, X2, X3, predcB_out_ga(s(X1), s(X2))) -> U35_gaa(X1, X2, X3, qcG_in_gaa(X2, X4, X3)) 209.69/54.17 U35_gaa(X1, X2, X3, qcG_out_gaa(X2, X4, X3)) -> qcG_out_gaa(X1, s(X2), s(s(X3))) 209.69/54.17 U36_ga(X1, X2, qcG_out_gaa(X1, X3, X2)) -> doublecF_out_ga(X1, s(s(X2))) 209.69/54.17 209.69/54.17 The argument filtering Pi contains the following mapping: 209.69/54.17 s(x1) = s(x1) 209.69/54.17 209.69/54.17 predcC_in_ga(x1, x2) = predcC_in_ga(x1) 209.69/54.17 209.69/54.17 U24_ga(x1, x2, x3) = U24_ga(x1, x3) 209.69/54.17 209.69/54.17 predcA_in_ga(x1, x2) = predcA_in_ga(x1) 209.69/54.17 209.69/54.17 0 = 0 209.69/54.17 209.69/54.17 predcA_out_ga(x1, x2) = predcA_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U22_ga(x1, x2, x3) = U22_ga(x1, x3) 209.69/54.17 209.69/54.17 predcC_out_ga(x1, x2) = predcC_out_ga(x1, x2) 209.69/54.17 209.69/54.17 predcB_in_ga(x1, x2) = predcB_in_ga(x1) 209.69/54.17 209.69/54.17 predcB_out_ga(x1, x2) = predcB_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U23_ga(x1, x2, x3) = U23_ga(x1, x3) 209.69/54.17 209.69/54.17 halfcD_in_ga(x1, x2) = halfcD_in_ga(x1) 209.69/54.17 209.69/54.17 halfcD_out_ga(x1, x2) = halfcD_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U25_ga(x1, x2, x3) = U25_ga(x1, x3) 209.69/54.17 209.69/54.17 U26_ga(x1, x2, x3) = U26_ga(x1, x3) 209.69/54.17 209.69/54.17 U27_ga(x1, x2, x3) = U27_ga(x1, x3) 209.69/54.17 209.69/54.17 doublecF_in_ga(x1, x2) = doublecF_in_ga(x1) 209.69/54.17 209.69/54.17 U36_ga(x1, x2, x3) = U36_ga(x1, x3) 209.69/54.17 209.69/54.17 qcG_in_gaa(x1, x2, x3) = qcG_in_gaa(x1) 209.69/54.17 209.69/54.17 U33_gaa(x1, x2) = U33_gaa(x1, x2) 209.69/54.17 209.69/54.17 predcB_in_gg(x1, x2) = predcB_in_gg(x1, x2) 209.69/54.17 209.69/54.17 predcB_out_gg(x1, x2) = predcB_out_gg(x1, x2) 209.69/54.17 209.69/54.17 U23_gg(x1, x2, x3) = U23_gg(x1, x2, x3) 209.69/54.17 209.69/54.17 qcG_out_gaa(x1, x2, x3) = qcG_out_gaa(x1, x2, x3) 209.69/54.17 209.69/54.17 U34_gaa(x1, x2, x3, x4) = U34_gaa(x1, x4) 209.69/54.17 209.69/54.17 U35_gaa(x1, x2, x3, x4) = U35_gaa(x1, x2, x4) 209.69/54.17 209.69/54.17 doublecF_out_ga(x1, x2) = doublecF_out_ga(x1, x2) 209.69/54.17 209.69/54.17 FE_IN_G(x1) = FE_IN_G(x1) 209.69/54.17 209.69/54.17 U13_G(x1, x2) = U13_G(x1, x2) 209.69/54.17 209.69/54.17 U15_G(x1, x2) = U15_G(x1, x2) 209.69/54.17 209.69/54.17 U17_G(x1, x2) = U17_G(x1, x2) 209.69/54.17 209.69/54.17 U19_G(x1, x2) = U19_G(x1, x2) 209.69/54.17 209.69/54.17 209.69/54.17 We have to consider all (P,R,Pi)-chains 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (181) UsableRulesProof (EQUIVALENT) 209.69/54.17 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 209.69/54.17 ---------------------------------------- 209.69/54.17 209.69/54.17 (182) 209.69/54.17 Obligation: 209.69/54.17 Pi DP problem: 209.69/54.17 The TRS P consists of the following rules: 209.69/54.17 209.69/54.17 FE_IN_G(s(s(X1))) -> U13_G(X1, predcC_in_ga(X1, X2)) 209.69/54.17 U13_G(X1, predcC_out_ga(X1, X2)) -> U15_G(X1, predcB_in_ga(X2, X3)) 209.69/54.17 U15_G(X1, predcB_out_ga(X2, X3)) -> U17_G(X1, halfcD_in_ga(X3, X4)) 209.69/54.17 U17_G(X1, halfcD_out_ga(X3, X4)) -> U19_G(X1, doublecF_in_ga(X4, X5)) 209.69/54.17 U19_G(X1, doublecF_out_ga(X4, X5)) -> FE_IN_G(X5) 209.69/54.17 209.69/54.17 The TRS R consists of the following rules: 209.69/54.17 209.69/54.17 predcC_in_ga(X1, s(X2)) -> U24_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.17 predcB_in_ga(0, 0) -> predcB_out_ga(0, 0) 209.69/54.17 predcB_in_ga(s(0), 0) -> predcB_out_ga(s(0), 0) 209.69/54.17 predcB_in_ga(s(s(X1)), s(X2)) -> U23_ga(X1, X2, predcB_in_ga(s(X1), X2)) 209.69/54.17 halfcD_in_ga(0, 0) -> halfcD_out_ga(0, 0) 209.69/54.17 halfcD_in_ga(s(s(X1)), s(X2)) -> U25_ga(X1, X2, predcC_in_ga(X1, X3)) 209.69/54.17 doublecF_in_ga(X1, s(s(X2))) -> U36_ga(X1, X2, qcG_in_gaa(X1, X3, X2)) 209.69/54.17 U24_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcC_out_ga(X1, s(X2)) 209.69/54.17 U23_ga(X1, X2, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.17 U25_ga(X1, X2, predcC_out_ga(X1, X3)) -> U26_ga(X1, X2, predcB_in_ga(X3, X4)) 209.69/54.17 U36_ga(X1, X2, qcG_out_gaa(X1, X3, X2)) -> doublecF_out_ga(X1, s(s(X2))) 209.69/54.17 predcA_in_ga(0, 0) -> predcA_out_ga(0, 0) 209.69/54.17 predcA_in_ga(s(X1), s(X2)) -> U22_ga(X1, X2, predcA_in_ga(X1, X2)) 209.69/54.17 U26_ga(X1, X2, predcB_out_ga(X3, X4)) -> U27_ga(X1, X2, halfcD_in_ga(X4, X2)) 209.69/54.17 qcG_in_gaa(X1, 0, 0) -> U33_gaa(X1, predcB_in_gg(s(X1), 0)) 209.69/54.17 qcG_in_gaa(X1, s(X2), s(s(X3))) -> U34_gaa(X1, X2, X3, predcB_in_ga(s(X1), s(X2))) 209.69/54.17 U22_ga(X1, X2, predcA_out_ga(X1, X2)) -> predcA_out_ga(s(X1), s(X2)) 209.69/54.17 U27_ga(X1, X2, halfcD_out_ga(X4, X2)) -> halfcD_out_ga(s(s(X1)), s(X2)) 209.69/54.17 U33_gaa(X1, predcB_out_gg(s(X1), 0)) -> qcG_out_gaa(X1, 0, 0) 209.69/54.17 U34_gaa(X1, X2, X3, predcB_out_ga(s(X1), s(X2))) -> U35_gaa(X1, X2, X3, qcG_in_gaa(X2, X4, X3)) 209.69/54.17 predcB_in_gg(s(0), 0) -> predcB_out_gg(s(0), 0) 209.69/54.17 U35_gaa(X1, X2, X3, qcG_out_gaa(X2, X4, X3)) -> qcG_out_gaa(X1, s(X2), s(s(X3))) 209.69/54.17 209.69/54.17 The argument filtering Pi contains the following mapping: 209.69/54.17 s(x1) = s(x1) 209.69/54.17 209.69/54.17 predcC_in_ga(x1, x2) = predcC_in_ga(x1) 209.69/54.17 209.69/54.17 U24_ga(x1, x2, x3) = U24_ga(x1, x3) 209.69/54.17 209.69/54.17 predcA_in_ga(x1, x2) = predcA_in_ga(x1) 209.69/54.17 209.69/54.17 0 = 0 209.69/54.17 209.69/54.17 predcA_out_ga(x1, x2) = predcA_out_ga(x1, x2) 209.69/54.17 209.69/54.17 U22_ga(x1, x2, x3) = U22_ga(x1, x3) 209.69/54.17 209.69/54.17 predcC_out_ga(x1, x2) = predcC_out_ga(x1, x2) 209.69/54.17 209.69/54.17 predcB_in_ga(x1, x2) = predcB_in_ga(x1) 209.69/54.18 209.69/54.18 predcB_out_ga(x1, x2) = predcB_out_ga(x1, x2) 209.69/54.18 209.69/54.18 U23_ga(x1, x2, x3) = U23_ga(x1, x3) 209.69/54.18 209.69/54.18 halfcD_in_ga(x1, x2) = halfcD_in_ga(x1) 209.69/54.18 209.69/54.18 halfcD_out_ga(x1, x2) = halfcD_out_ga(x1, x2) 209.69/54.18 209.69/54.18 U25_ga(x1, x2, x3) = U25_ga(x1, x3) 209.69/54.18 209.69/54.18 U26_ga(x1, x2, x3) = U26_ga(x1, x3) 209.69/54.18 209.69/54.18 U27_ga(x1, x2, x3) = U27_ga(x1, x3) 209.69/54.18 209.69/54.18 doublecF_in_ga(x1, x2) = doublecF_in_ga(x1) 209.69/54.18 209.69/54.18 U36_ga(x1, x2, x3) = U36_ga(x1, x3) 209.69/54.18 209.69/54.18 qcG_in_gaa(x1, x2, x3) = qcG_in_gaa(x1) 209.69/54.18 209.69/54.18 U33_gaa(x1, x2) = U33_gaa(x1, x2) 209.69/54.18 209.69/54.18 predcB_in_gg(x1, x2) = predcB_in_gg(x1, x2) 209.69/54.18 209.69/54.18 predcB_out_gg(x1, x2) = predcB_out_gg(x1, x2) 209.69/54.18 209.69/54.18 qcG_out_gaa(x1, x2, x3) = qcG_out_gaa(x1, x2, x3) 209.69/54.18 209.69/54.18 U34_gaa(x1, x2, x3, x4) = U34_gaa(x1, x4) 209.69/54.18 209.69/54.18 U35_gaa(x1, x2, x3, x4) = U35_gaa(x1, x2, x4) 209.69/54.18 209.69/54.18 doublecF_out_ga(x1, x2) = doublecF_out_ga(x1, x2) 209.69/54.18 209.69/54.18 FE_IN_G(x1) = FE_IN_G(x1) 209.69/54.18 209.69/54.18 U13_G(x1, x2) = U13_G(x1, x2) 209.69/54.18 209.69/54.18 U15_G(x1, x2) = U15_G(x1, x2) 209.69/54.18 209.69/54.18 U17_G(x1, x2) = U17_G(x1, x2) 209.69/54.18 209.69/54.18 U19_G(x1, x2) = U19_G(x1, x2) 209.69/54.18 209.69/54.18 209.69/54.18 We have to consider all (P,R,Pi)-chains 209.69/54.18 ---------------------------------------- 209.69/54.18 209.69/54.18 (183) PiDPToQDPProof (SOUND) 209.69/54.18 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 209.69/54.18 ---------------------------------------- 209.69/54.18 209.69/54.18 (184) 209.69/54.18 Obligation: 209.69/54.18 Q DP problem: 209.69/54.18 The TRS P consists of the following rules: 209.69/54.18 209.69/54.18 FE_IN_G(s(s(X1))) -> U13_G(X1, predcC_in_ga(X1)) 209.69/54.18 U13_G(X1, predcC_out_ga(X1, X2)) -> U15_G(X1, predcB_in_ga(X2)) 209.69/54.18 U15_G(X1, predcB_out_ga(X2, X3)) -> U17_G(X1, halfcD_in_ga(X3)) 209.69/54.18 U17_G(X1, halfcD_out_ga(X3, X4)) -> U19_G(X1, doublecF_in_ga(X4)) 209.69/54.18 U19_G(X1, doublecF_out_ga(X4, X5)) -> FE_IN_G(X5) 209.69/54.18 209.69/54.18 The TRS R consists of the following rules: 209.69/54.18 209.69/54.18 predcC_in_ga(X1) -> U24_ga(X1, predcA_in_ga(X1)) 209.69/54.18 predcB_in_ga(0) -> predcB_out_ga(0, 0) 209.69/54.18 predcB_in_ga(s(0)) -> predcB_out_ga(s(0), 0) 209.69/54.18 predcB_in_ga(s(s(X1))) -> U23_ga(X1, predcB_in_ga(s(X1))) 209.69/54.18 halfcD_in_ga(0) -> halfcD_out_ga(0, 0) 209.69/54.18 halfcD_in_ga(s(s(X1))) -> U25_ga(X1, predcC_in_ga(X1)) 209.69/54.18 doublecF_in_ga(X1) -> U36_ga(X1, qcG_in_gaa(X1)) 209.69/54.18 U24_ga(X1, predcA_out_ga(X1, X2)) -> predcC_out_ga(X1, s(X2)) 209.69/54.18 U23_ga(X1, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.18 U25_ga(X1, predcC_out_ga(X1, X3)) -> U26_ga(X1, predcB_in_ga(X3)) 209.69/54.18 U36_ga(X1, qcG_out_gaa(X1, X3, X2)) -> doublecF_out_ga(X1, s(s(X2))) 209.69/54.18 predcA_in_ga(0) -> predcA_out_ga(0, 0) 209.69/54.18 predcA_in_ga(s(X1)) -> U22_ga(X1, predcA_in_ga(X1)) 209.69/54.18 U26_ga(X1, predcB_out_ga(X3, X4)) -> U27_ga(X1, halfcD_in_ga(X4)) 209.69/54.18 qcG_in_gaa(X1) -> U33_gaa(X1, predcB_in_gg(s(X1), 0)) 209.69/54.18 qcG_in_gaa(X1) -> U34_gaa(X1, predcB_in_ga(s(X1))) 209.69/54.18 U22_ga(X1, predcA_out_ga(X1, X2)) -> predcA_out_ga(s(X1), s(X2)) 209.69/54.18 U27_ga(X1, halfcD_out_ga(X4, X2)) -> halfcD_out_ga(s(s(X1)), s(X2)) 209.69/54.18 U33_gaa(X1, predcB_out_gg(s(X1), 0)) -> qcG_out_gaa(X1, 0, 0) 209.69/54.18 U34_gaa(X1, predcB_out_ga(s(X1), s(X2))) -> U35_gaa(X1, X2, qcG_in_gaa(X2)) 209.69/54.18 predcB_in_gg(s(0), 0) -> predcB_out_gg(s(0), 0) 209.69/54.18 U35_gaa(X1, X2, qcG_out_gaa(X2, X4, X3)) -> qcG_out_gaa(X1, s(X2), s(s(X3))) 209.69/54.18 209.69/54.18 The set Q consists of the following terms: 209.69/54.18 209.69/54.18 predcC_in_ga(x0) 209.69/54.18 predcB_in_ga(x0) 209.69/54.18 halfcD_in_ga(x0) 209.69/54.18 doublecF_in_ga(x0) 209.69/54.18 U24_ga(x0, x1) 209.69/54.18 U23_ga(x0, x1) 209.69/54.18 U25_ga(x0, x1) 209.69/54.18 U36_ga(x0, x1) 209.69/54.18 predcA_in_ga(x0) 209.69/54.18 U26_ga(x0, x1) 209.69/54.18 qcG_in_gaa(x0) 209.69/54.18 U22_ga(x0, x1) 209.69/54.18 U27_ga(x0, x1) 209.69/54.18 U33_gaa(x0, x1) 209.69/54.18 U34_gaa(x0, x1) 209.69/54.18 predcB_in_gg(x0, x1) 209.69/54.18 U35_gaa(x0, x1, x2) 209.69/54.18 209.69/54.18 We have to consider all (P,Q,R)-chains. 209.69/54.18 ---------------------------------------- 209.69/54.18 209.69/54.18 (185) TransformationProof (EQUIVALENT) 209.69/54.18 By rewriting [LPAR04] the rule FE_IN_G(s(s(X1))) -> U13_G(X1, predcC_in_ga(X1)) at position [1] we obtained the following new rules [LPAR04]: 209.69/54.18 209.69/54.18 (FE_IN_G(s(s(X1))) -> U13_G(X1, U24_ga(X1, predcA_in_ga(X1))),FE_IN_G(s(s(X1))) -> U13_G(X1, U24_ga(X1, predcA_in_ga(X1)))) 209.69/54.18 209.69/54.18 209.69/54.18 ---------------------------------------- 209.69/54.18 209.69/54.18 (186) 209.69/54.18 Obligation: 209.69/54.18 Q DP problem: 209.69/54.18 The TRS P consists of the following rules: 209.69/54.18 209.69/54.18 U13_G(X1, predcC_out_ga(X1, X2)) -> U15_G(X1, predcB_in_ga(X2)) 209.69/54.18 U15_G(X1, predcB_out_ga(X2, X3)) -> U17_G(X1, halfcD_in_ga(X3)) 209.69/54.18 U17_G(X1, halfcD_out_ga(X3, X4)) -> U19_G(X1, doublecF_in_ga(X4)) 209.69/54.18 U19_G(X1, doublecF_out_ga(X4, X5)) -> FE_IN_G(X5) 209.69/54.18 FE_IN_G(s(s(X1))) -> U13_G(X1, U24_ga(X1, predcA_in_ga(X1))) 209.69/54.18 209.69/54.18 The TRS R consists of the following rules: 209.69/54.18 209.69/54.18 predcC_in_ga(X1) -> U24_ga(X1, predcA_in_ga(X1)) 209.69/54.18 predcB_in_ga(0) -> predcB_out_ga(0, 0) 209.69/54.18 predcB_in_ga(s(0)) -> predcB_out_ga(s(0), 0) 209.69/54.18 predcB_in_ga(s(s(X1))) -> U23_ga(X1, predcB_in_ga(s(X1))) 209.69/54.18 halfcD_in_ga(0) -> halfcD_out_ga(0, 0) 209.69/54.18 halfcD_in_ga(s(s(X1))) -> U25_ga(X1, predcC_in_ga(X1)) 209.69/54.18 doublecF_in_ga(X1) -> U36_ga(X1, qcG_in_gaa(X1)) 209.69/54.18 U24_ga(X1, predcA_out_ga(X1, X2)) -> predcC_out_ga(X1, s(X2)) 209.69/54.18 U23_ga(X1, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.18 U25_ga(X1, predcC_out_ga(X1, X3)) -> U26_ga(X1, predcB_in_ga(X3)) 209.69/54.18 U36_ga(X1, qcG_out_gaa(X1, X3, X2)) -> doublecF_out_ga(X1, s(s(X2))) 209.69/54.18 predcA_in_ga(0) -> predcA_out_ga(0, 0) 209.69/54.18 predcA_in_ga(s(X1)) -> U22_ga(X1, predcA_in_ga(X1)) 209.69/54.18 U26_ga(X1, predcB_out_ga(X3, X4)) -> U27_ga(X1, halfcD_in_ga(X4)) 209.69/54.18 qcG_in_gaa(X1) -> U33_gaa(X1, predcB_in_gg(s(X1), 0)) 209.69/54.18 qcG_in_gaa(X1) -> U34_gaa(X1, predcB_in_ga(s(X1))) 209.69/54.18 U22_ga(X1, predcA_out_ga(X1, X2)) -> predcA_out_ga(s(X1), s(X2)) 209.69/54.18 U27_ga(X1, halfcD_out_ga(X4, X2)) -> halfcD_out_ga(s(s(X1)), s(X2)) 209.69/54.18 U33_gaa(X1, predcB_out_gg(s(X1), 0)) -> qcG_out_gaa(X1, 0, 0) 209.69/54.18 U34_gaa(X1, predcB_out_ga(s(X1), s(X2))) -> U35_gaa(X1, X2, qcG_in_gaa(X2)) 209.69/54.18 predcB_in_gg(s(0), 0) -> predcB_out_gg(s(0), 0) 209.69/54.18 U35_gaa(X1, X2, qcG_out_gaa(X2, X4, X3)) -> qcG_out_gaa(X1, s(X2), s(s(X3))) 209.69/54.18 209.69/54.18 The set Q consists of the following terms: 209.69/54.18 209.69/54.18 predcC_in_ga(x0) 209.69/54.18 predcB_in_ga(x0) 209.69/54.18 halfcD_in_ga(x0) 209.69/54.18 doublecF_in_ga(x0) 209.69/54.18 U24_ga(x0, x1) 209.69/54.18 U23_ga(x0, x1) 209.69/54.18 U25_ga(x0, x1) 209.69/54.18 U36_ga(x0, x1) 209.69/54.18 predcA_in_ga(x0) 209.69/54.18 U26_ga(x0, x1) 209.69/54.18 qcG_in_gaa(x0) 209.69/54.18 U22_ga(x0, x1) 209.69/54.18 U27_ga(x0, x1) 209.69/54.18 U33_gaa(x0, x1) 209.69/54.18 U34_gaa(x0, x1) 209.69/54.18 predcB_in_gg(x0, x1) 209.69/54.18 U35_gaa(x0, x1, x2) 209.69/54.18 209.69/54.18 We have to consider all (P,Q,R)-chains. 209.69/54.18 ---------------------------------------- 209.69/54.18 209.69/54.18 (187) QDPQMonotonicMRRProof (EQUIVALENT) 209.69/54.18 By using the Q-monotonic rule removal processor with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented such that it always occurs at a strongly monotonic position in a (P,Q,R)-chain. 209.69/54.18 209.69/54.18 209.69/54.18 Strictly oriented rules of the TRS R: 209.69/54.18 209.69/54.18 predcB_in_ga(0) -> predcB_out_ga(0, 0) 209.69/54.18 209.69/54.18 Used ordering: Polynomial interpretation [POLO]: 209.69/54.18 209.69/54.18 POL(0) = 2 209.69/54.18 POL(FE_IN_G(x_1)) = 0 209.69/54.18 POL(U13_G(x_1, x_2)) = 2*x_2 209.69/54.18 POL(U15_G(x_1, x_2)) = 2*x_2 209.69/54.18 POL(U17_G(x_1, x_2)) = 2*x_2 209.69/54.18 POL(U19_G(x_1, x_2)) = x_2 209.69/54.18 POL(U22_ga(x_1, x_2)) = 0 209.69/54.18 POL(U23_ga(x_1, x_2)) = 2*x_2 209.69/54.18 POL(U24_ga(x_1, x_2)) = 0 209.69/54.18 POL(U25_ga(x_1, x_2)) = x_2 209.69/54.18 POL(U26_ga(x_1, x_2)) = x_2 209.69/54.18 POL(U27_ga(x_1, x_2)) = x_2 209.69/54.18 POL(U33_gaa(x_1, x_2)) = 0 209.69/54.18 POL(U34_gaa(x_1, x_2)) = 2*x_2 209.69/54.18 POL(U35_gaa(x_1, x_2, x_3)) = x_3 209.69/54.18 POL(U36_ga(x_1, x_2)) = x_2 209.69/54.18 POL(doublecF_in_ga(x_1)) = 0 209.69/54.18 POL(doublecF_out_ga(x_1, x_2)) = 0 209.69/54.18 POL(halfcD_in_ga(x_1)) = 0 209.69/54.18 POL(halfcD_out_ga(x_1, x_2)) = 0 209.69/54.18 POL(predcA_in_ga(x_1)) = 0 209.69/54.18 POL(predcA_out_ga(x_1, x_2)) = 0 209.69/54.18 POL(predcB_in_ga(x_1)) = x_1 209.69/54.18 POL(predcB_in_gg(x_1, x_2)) = 0 209.69/54.18 POL(predcB_out_ga(x_1, x_2)) = 0 209.69/54.18 POL(predcB_out_gg(x_1, x_2)) = 0 209.69/54.18 POL(predcC_in_ga(x_1)) = 0 209.69/54.18 POL(predcC_out_ga(x_1, x_2)) = x_2 209.69/54.18 POL(qcG_in_gaa(x_1)) = 0 209.69/54.18 POL(qcG_out_gaa(x_1, x_2, x_3)) = 0 209.69/54.18 POL(s(x_1)) = 0 209.69/54.18 209.69/54.18 209.69/54.18 ---------------------------------------- 209.69/54.18 209.69/54.18 (188) 209.69/54.18 Obligation: 209.69/54.18 Q DP problem: 209.69/54.18 The TRS P consists of the following rules: 209.69/54.18 209.69/54.18 U13_G(X1, predcC_out_ga(X1, X2)) -> U15_G(X1, predcB_in_ga(X2)) 209.69/54.18 U15_G(X1, predcB_out_ga(X2, X3)) -> U17_G(X1, halfcD_in_ga(X3)) 209.69/54.18 U17_G(X1, halfcD_out_ga(X3, X4)) -> U19_G(X1, doublecF_in_ga(X4)) 209.69/54.18 U19_G(X1, doublecF_out_ga(X4, X5)) -> FE_IN_G(X5) 209.69/54.18 FE_IN_G(s(s(X1))) -> U13_G(X1, U24_ga(X1, predcA_in_ga(X1))) 209.69/54.18 209.69/54.18 The TRS R consists of the following rules: 209.69/54.18 209.69/54.18 predcC_in_ga(X1) -> U24_ga(X1, predcA_in_ga(X1)) 209.69/54.18 predcB_in_ga(s(0)) -> predcB_out_ga(s(0), 0) 209.69/54.18 predcB_in_ga(s(s(X1))) -> U23_ga(X1, predcB_in_ga(s(X1))) 209.69/54.18 halfcD_in_ga(0) -> halfcD_out_ga(0, 0) 209.69/54.18 halfcD_in_ga(s(s(X1))) -> U25_ga(X1, predcC_in_ga(X1)) 209.69/54.18 doublecF_in_ga(X1) -> U36_ga(X1, qcG_in_gaa(X1)) 209.69/54.18 U24_ga(X1, predcA_out_ga(X1, X2)) -> predcC_out_ga(X1, s(X2)) 209.69/54.18 U23_ga(X1, predcB_out_ga(s(X1), X2)) -> predcB_out_ga(s(s(X1)), s(X2)) 209.69/54.18 U25_ga(X1, predcC_out_ga(X1, X3)) -> U26_ga(X1, predcB_in_ga(X3)) 209.69/54.18 U36_ga(X1, qcG_out_gaa(X1, X3, X2)) -> doublecF_out_ga(X1, s(s(X2))) 209.69/54.18 predcA_in_ga(0) -> predcA_out_ga(0, 0) 209.69/54.18 predcA_in_ga(s(X1)) -> U22_ga(X1, predcA_in_ga(X1)) 209.69/54.18 U26_ga(X1, predcB_out_ga(X3, X4)) -> U27_ga(X1, halfcD_in_ga(X4)) 209.69/54.18 qcG_in_gaa(X1) -> U33_gaa(X1, predcB_in_gg(s(X1), 0)) 209.69/54.18 qcG_in_gaa(X1) -> U34_gaa(X1, predcB_in_ga(s(X1))) 209.69/54.18 U22_ga(X1, predcA_out_ga(X1, X2)) -> predcA_out_ga(s(X1), s(X2)) 209.69/54.18 U27_ga(X1, halfcD_out_ga(X4, X2)) -> halfcD_out_ga(s(s(X1)), s(X2)) 209.69/54.18 U33_gaa(X1, predcB_out_gg(s(X1), 0)) -> qcG_out_gaa(X1, 0, 0) 209.69/54.18 U34_gaa(X1, predcB_out_ga(s(X1), s(X2))) -> U35_gaa(X1, X2, qcG_in_gaa(X2)) 209.69/54.18 predcB_in_gg(s(0), 0) -> predcB_out_gg(s(0), 0) 209.69/54.18 U35_gaa(X1, X2, qcG_out_gaa(X2, X4, X3)) -> qcG_out_gaa(X1, s(X2), s(s(X3))) 209.69/54.18 209.69/54.18 The set Q consists of the following terms: 209.69/54.18 209.69/54.18 predcC_in_ga(x0) 209.69/54.18 predcB_in_ga(x0) 209.69/54.18 halfcD_in_ga(x0) 209.69/54.18 doublecF_in_ga(x0) 209.69/54.18 U24_ga(x0, x1) 209.69/54.18 U23_ga(x0, x1) 209.69/54.18 U25_ga(x0, x1) 209.69/54.18 U36_ga(x0, x1) 209.69/54.18 predcA_in_ga(x0) 209.69/54.18 U26_ga(x0, x1) 209.69/54.18 qcG_in_gaa(x0) 209.69/54.18 U22_ga(x0, x1) 209.69/54.18 U27_ga(x0, x1) 209.69/54.18 U33_gaa(x0, x1) 209.69/54.18 U34_gaa(x0, x1) 209.69/54.18 predcB_in_gg(x0, x1) 209.69/54.18 U35_gaa(x0, x1, x2) 209.69/54.18 209.69/54.18 We have to consider all (P,Q,R)-chains. 209.69/54.18 ---------------------------------------- 209.69/54.18 209.69/54.18 (189) PrologToIRSwTTransformerProof (SOUND) 209.69/54.18 Transformed Prolog program to IRSwT according to method in Master Thesis of A. Weinert 209.69/54.18 209.69/54.18 { 209.69/54.18 "root": 1, 209.69/54.18 "program": { 209.69/54.18 "directives": [], 209.69/54.18 "clauses": [ 209.69/54.18 [ 209.69/54.18 "(pred (0) (0))", 209.69/54.18 null 209.69/54.18 ], 209.69/54.18 [ 209.69/54.18 "(pred (s (0)) (0))", 209.69/54.18 null 209.69/54.18 ], 209.69/54.18 [ 209.69/54.18 "(pred (s (s X)) (s Y))", 209.69/54.18 "(pred (s X) Y)" 209.69/54.18 ], 209.69/54.18 [ 209.69/54.18 "(double (0) (0))", 209.69/54.18 null 209.69/54.18 ], 209.69/54.18 [ 209.69/54.18 "(double (s X) (s (s Y)))", 209.69/54.18 "(',' (pred (s X) Z) (double Z Y))" 209.69/54.18 ], 209.69/54.18 [ 209.69/54.18 "(half (0) (0))", 209.69/54.18 null 209.69/54.18 ], 209.69/54.18 [ 209.69/54.18 "(half (s (s X)) (s U))", 209.69/54.18 "(',' (pred (s (s X)) Y) (',' (pred Y Z) (half Z U)))" 209.69/54.18 ], 209.69/54.18 [ 209.69/54.18 "(f (s X))", 209.69/54.18 "(',' (half (s X) Y) (',' (double Y Z) (f Z)))" 209.69/54.18 ] 209.69/54.18 ] 209.69/54.18 }, 209.69/54.18 "graph": { 209.69/54.18 "nodes": { 209.69/54.18 "89": { 209.69/54.18 "goal": [], 209.69/54.18 "kb": { 209.69/54.18 "nonunifying": [], 209.69/54.18 "intvars": {}, 209.69/54.18 "arithmetic": { 209.69/54.18 "type": "PlainIntegerRelationState", 209.69/54.18 "relations": [] 209.69/54.18 }, 209.69/54.18 "ground": [], 209.69/54.18 "free": [], 209.69/54.18 "exprvars": [] 209.69/54.18 } 209.69/54.18 }, 209.69/54.18 "type": "Nodes", 209.69/54.18 "271": { 209.69/54.18 "goal": [{ 209.69/54.18 "clause": -1, 209.69/54.18 "scope": -1, 209.69/54.18 "term": "(true)" 209.69/54.18 }], 209.69/54.18 "kb": { 209.69/54.18 "nonunifying": [], 209.69/54.18 "intvars": {}, 209.69/54.18 "arithmetic": { 209.69/54.18 "type": "PlainIntegerRelationState", 209.69/54.18 "relations": [] 209.69/54.18 }, 209.69/54.18 "ground": [], 209.69/54.18 "free": [], 209.69/54.18 "exprvars": [] 209.69/54.18 } 209.69/54.18 }, 209.69/54.18 "230": { 209.69/54.18 "goal": [], 209.69/54.18 "kb": { 209.69/54.18 "nonunifying": [], 209.69/54.18 "intvars": {}, 209.69/54.18 "arithmetic": { 209.69/54.18 "type": "PlainIntegerRelationState", 209.69/54.18 "relations": [] 209.69/54.18 }, 209.69/54.18 "ground": [], 209.69/54.18 "free": [], 209.69/54.18 "exprvars": [] 209.69/54.18 } 209.69/54.18 }, 209.69/54.18 "277": { 209.69/54.18 "goal": [], 209.69/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "91": { 210.09/54.18 "goal": [], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "239": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(pred (s T19) X47)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T19"], 210.09/54.18 "free": ["X47"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "57": { 210.09/54.18 "goal": [ 210.09/54.18 { 210.09/54.18 "clause": 5, 210.09/54.18 "scope": 2, 210.09/54.18 "term": "(half (s T4) X6)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "clause": 6, 210.09/54.18 "scope": 2, 210.09/54.18 "term": "(half (s T4) X6)" 210.09/54.18 } 210.09/54.18 ], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T4"], 210.09/54.18 "free": ["X6"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "58": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": 6, 210.09/54.18 "scope": 2, 210.09/54.18 "term": "(half (s T4) X6)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T4"], 210.09/54.18 "free": ["X6"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "280": { 210.09/54.18 "goal": [], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "240": { 210.09/54.18 "goal": [], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "121": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(pred (s T15) X38)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T15"], 210.09/54.18 "free": ["X38"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "1": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(f T1)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T1"], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "243": { 210.09/54.18 "goal": [ 210.09/54.18 { 210.09/54.18 "clause": 5, 210.09/54.18 "scope": 6, 210.09/54.18 "term": "(half T16 X20)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "clause": 6, 210.09/54.18 "scope": 6, 210.09/54.18 "term": "(half T16 X20)" 210.09/54.18 } 210.09/54.18 ], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T16"], 210.09/54.18 "free": ["X20"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "244": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": 5, 210.09/54.18 "scope": 6, 210.09/54.18 "term": "(half T16 X20)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T16"], 210.09/54.18 "free": ["X20"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "245": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": 6, 210.09/54.18 "scope": 6, 210.09/54.18 "term": "(half T16 X20)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T16"], 210.09/54.18 "free": ["X20"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "4": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": 7, 210.09/54.18 "scope": 1, 210.09/54.18 "term": "(f T1)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T1"], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "202": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(pred T9 X19)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T9"], 210.09/54.18 "free": ["X19"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "246": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(true)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "203": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(half T16 X20)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T16"], 210.09/54.18 "free": ["X20"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "247": { 210.09/54.18 "goal": [], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "248": { 210.09/54.18 "goal": [], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "7": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(',' (half (s T4) X6) (',' (double X6 X7) (f X7)))" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T4"], 210.09/54.18 "free": [ 210.09/54.18 "X6", 210.09/54.18 "X7" 210.09/54.18 ], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "8": { 210.09/54.18 "goal": [], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "62": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(',' (pred (s (s T8)) X18) (',' (pred X18 X19) (half X19 X20)))" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T8"], 210.09/54.18 "free": [ 210.09/54.18 "X20", 210.09/54.18 "X18", 210.09/54.18 "X19" 210.09/54.18 ], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "63": { 210.09/54.18 "goal": [], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "65": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(pred (s (s T8)) X18)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T8"], 210.09/54.18 "free": ["X18"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "66": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(',' (pred T9 X19) (half X19 X20))" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T9"], 210.09/54.18 "free": [ 210.09/54.18 "X20", 210.09/54.18 "X19" 210.09/54.18 ], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "23": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(half (s T4) X6)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T4"], 210.09/54.18 "free": ["X6"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "24": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(',' (double T5 X7) (f X7))" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T5"], 210.09/54.18 "free": ["X7"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "68": { 210.09/54.18 "goal": [ 210.09/54.18 { 210.09/54.18 "clause": 0, 210.09/54.18 "scope": 3, 210.09/54.18 "term": "(pred (s (s T8)) X18)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "clause": 1, 210.09/54.18 "scope": 3, 210.09/54.18 "term": "(pred (s (s T8)) X18)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "clause": 2, 210.09/54.18 "scope": 3, 210.09/54.18 "term": "(pred (s (s T8)) X18)" 210.09/54.18 } 210.09/54.18 ], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T8"], 210.09/54.18 "free": ["X18"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "252": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(',' (pred (s (s T22)) X58) (',' (pred X58 X59) (half X59 X60)))" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T22"], 210.09/54.18 "free": [ 210.09/54.18 "X60", 210.09/54.18 "X58", 210.09/54.18 "X59" 210.09/54.18 ], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "133": { 210.09/54.18 "goal": [], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "210": { 210.09/54.18 "goal": [ 210.09/54.18 { 210.09/54.18 "clause": 0, 210.09/54.18 "scope": 5, 210.09/54.18 "term": "(pred T9 X19)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "clause": 1, 210.09/54.18 "scope": 5, 210.09/54.18 "term": "(pred T9 X19)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "clause": 2, 210.09/54.18 "scope": 5, 210.09/54.18 "term": "(pred T9 X19)" 210.09/54.18 } 210.09/54.18 ], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T9"], 210.09/54.18 "free": ["X19"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "254": { 210.09/54.18 "goal": [], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "213": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": 0, 210.09/54.18 "scope": 5, 210.09/54.18 "term": "(pred T9 X19)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T9"], 210.09/54.18 "free": ["X19"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "214": { 210.09/54.18 "goal": [ 210.09/54.18 { 210.09/54.18 "clause": 1, 210.09/54.18 "scope": 5, 210.09/54.18 "term": "(pred T9 X19)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "clause": 2, 210.09/54.18 "scope": 5, 210.09/54.18 "term": "(pred T9 X19)" 210.09/54.18 } 210.09/54.18 ], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T9"], 210.09/54.18 "free": ["X19"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "70": { 210.09/54.18 "goal": [ 210.09/54.18 { 210.09/54.18 "clause": 1, 210.09/54.18 "scope": 3, 210.09/54.18 "term": "(pred (s (s T8)) X18)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "clause": 2, 210.09/54.18 "scope": 3, 210.09/54.18 "term": "(pred (s (s T8)) X18)" 210.09/54.18 } 210.09/54.18 ], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T8"], 210.09/54.18 "free": ["X18"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "71": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": 2, 210.09/54.18 "scope": 3, 210.09/54.18 "term": "(pred (s (s T8)) X18)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T8"], 210.09/54.18 "free": ["X18"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "74": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(pred (s T12) X29)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T12"], 210.09/54.18 "free": ["X29"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "75": { 210.09/54.18 "goal": [ 210.09/54.18 { 210.09/54.18 "clause": 0, 210.09/54.18 "scope": 4, 210.09/54.18 "term": "(pred (s T12) X29)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "clause": 1, 210.09/54.18 "scope": 4, 210.09/54.18 "term": "(pred (s T12) X29)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "clause": 2, 210.09/54.18 "scope": 4, 210.09/54.18 "term": "(pred (s T12) X29)" 210.09/54.18 } 210.09/54.18 ], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T12"], 210.09/54.18 "free": ["X29"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "76": { 210.09/54.18 "goal": [ 210.09/54.18 { 210.09/54.18 "clause": 1, 210.09/54.18 "scope": 4, 210.09/54.18 "term": "(pred (s T12) X29)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "clause": 2, 210.09/54.18 "scope": 4, 210.09/54.18 "term": "(pred (s T12) X29)" 210.09/54.18 } 210.09/54.18 ], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T12"], 210.09/54.18 "free": ["X29"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "77": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": 1, 210.09/54.18 "scope": 4, 210.09/54.18 "term": "(pred (s T12) X29)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T12"], 210.09/54.18 "free": ["X29"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "78": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": 2, 210.09/54.18 "scope": 4, 210.09/54.18 "term": "(pred (s T12) X29)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T12"], 210.09/54.18 "free": ["X29"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "262": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(double T5 X7)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T5"], 210.09/54.18 "free": ["X7"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "263": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(f T23)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T23"], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "220": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(true)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "264": { 210.09/54.18 "goal": [ 210.09/54.18 { 210.09/54.18 "clause": 3, 210.09/54.18 "scope": 7, 210.09/54.18 "term": "(double T5 X7)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "clause": 4, 210.09/54.18 "scope": 7, 210.09/54.18 "term": "(double T5 X7)" 210.09/54.18 } 210.09/54.18 ], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T5"], 210.09/54.18 "free": ["X7"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "221": { 210.09/54.18 "goal": [], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "265": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": 3, 210.09/54.18 "scope": 7, 210.09/54.18 "term": "(double T5 X7)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T5"], 210.09/54.18 "free": ["X7"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "222": { 210.09/54.18 "goal": [], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "223": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": 1, 210.09/54.18 "scope": 5, 210.09/54.18 "term": "(pred T9 X19)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T9"], 210.09/54.18 "free": ["X19"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "267": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": 4, 210.09/54.18 "scope": 7, 210.09/54.18 "term": "(double T5 X7)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T5"], 210.09/54.18 "free": ["X7"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "421": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(',' (pred (s T26) X70) (double X70 X71))" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T26"], 210.09/54.18 "free": [ 210.09/54.18 "X71", 210.09/54.18 "X70" 210.09/54.18 ], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "422": { 210.09/54.18 "goal": [], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "225": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": 2, 210.09/54.18 "scope": 5, 210.09/54.18 "term": "(pred T9 X19)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T9"], 210.09/54.18 "free": ["X19"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "423": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(pred (s T26) X70)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T26"], 210.09/54.18 "free": ["X70"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "424": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(double T27 X71)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": ["T27"], 210.09/54.18 "free": ["X71"], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "228": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(true)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "229": { 210.09/54.18 "goal": [], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "84": { 210.09/54.18 "goal": [{ 210.09/54.18 "clause": -1, 210.09/54.18 "scope": -1, 210.09/54.18 "term": "(true)" 210.09/54.18 }], 210.09/54.18 "kb": { 210.09/54.18 "nonunifying": [], 210.09/54.18 "intvars": {}, 210.09/54.18 "arithmetic": { 210.09/54.18 "type": "PlainIntegerRelationState", 210.09/54.18 "relations": [] 210.09/54.18 }, 210.09/54.18 "ground": [], 210.09/54.18 "free": [], 210.09/54.18 "exprvars": [] 210.09/54.18 } 210.09/54.18 } 210.09/54.18 }, 210.09/54.18 "edges": [ 210.09/54.18 { 210.09/54.18 "from": 1, 210.09/54.18 "to": 4, 210.09/54.18 "label": "CASE" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 4, 210.09/54.18 "to": 7, 210.09/54.18 "label": "EVAL with clause\nf(s(X5)) :- ','(half(s(X5), X6), ','(double(X6, X7), f(X7))).\nand substitutionX5 -> T4,\nT1 -> s(T4)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 4, 210.09/54.18 "to": 8, 210.09/54.18 "label": "EVAL-BACKTRACK" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 7, 210.09/54.18 "to": 23, 210.09/54.18 "label": "SPLIT 1" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 7, 210.09/54.18 "to": 24, 210.09/54.18 "label": "SPLIT 2\nnew knowledge:\nT4 is ground\nT5 is ground\nreplacements:X6 -> T5" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 23, 210.09/54.18 "to": 57, 210.09/54.18 "label": "CASE" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 24, 210.09/54.18 "to": 262, 210.09/54.18 "label": "SPLIT 1" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 24, 210.09/54.18 "to": 263, 210.09/54.18 "label": "SPLIT 2\nnew knowledge:\nT5 is ground\nT23 is ground\nreplacements:X7 -> T23" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 57, 210.09/54.18 "to": 58, 210.09/54.18 "label": "BACKTRACK\nfor clause: half(0, 0)because of non-unification" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 58, 210.09/54.18 "to": 62, 210.09/54.18 "label": "EVAL with clause\nhalf(s(s(X16)), s(X17)) :- ','(pred(s(s(X16)), X18), ','(pred(X18, X19), half(X19, X17))).\nand substitutionX16 -> T8,\nT4 -> s(T8),\nX17 -> X20,\nX6 -> s(X20)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 58, 210.09/54.18 "to": 63, 210.09/54.18 "label": "EVAL-BACKTRACK" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 62, 210.09/54.18 "to": 65, 210.09/54.18 "label": "SPLIT 1" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 62, 210.09/54.18 "to": 66, 210.09/54.18 "label": "SPLIT 2\nnew knowledge:\nT8 is ground\nT9 is ground\nreplacements:X18 -> T9" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 65, 210.09/54.18 "to": 68, 210.09/54.18 "label": "CASE" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 66, 210.09/54.18 "to": 202, 210.09/54.18 "label": "SPLIT 1" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 66, 210.09/54.18 "to": 203, 210.09/54.18 "label": "SPLIT 2\nnew knowledge:\nT9 is ground\nT16 is ground\nreplacements:X19 -> T16" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 68, 210.09/54.18 "to": 70, 210.09/54.18 "label": "BACKTRACK\nfor clause: pred(0, 0)because of non-unification" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 70, 210.09/54.18 "to": 71, 210.09/54.18 "label": "BACKTRACK\nfor clause: pred(s(0), 0)because of non-unification" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 71, 210.09/54.18 "to": 74, 210.09/54.18 "label": "ONLY EVAL with clause\npred(s(s(X27)), s(X28)) :- pred(s(X27), X28).\nand substitutionT8 -> T12,\nX27 -> T12,\nX28 -> X29,\nX18 -> s(X29)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 74, 210.09/54.18 "to": 75, 210.09/54.18 "label": "CASE" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 75, 210.09/54.18 "to": 76, 210.09/54.18 "label": "BACKTRACK\nfor clause: pred(0, 0)because of non-unification" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 76, 210.09/54.18 "to": 77, 210.09/54.18 "label": "PARALLEL" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 76, 210.09/54.18 "to": 78, 210.09/54.18 "label": "PARALLEL" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 77, 210.09/54.18 "to": 84, 210.09/54.18 "label": "EVAL with clause\npred(s(0), 0).\nand substitutionT12 -> 0,\nX29 -> 0" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 77, 210.09/54.18 "to": 89, 210.09/54.18 "label": "EVAL-BACKTRACK" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 78, 210.09/54.18 "to": 121, 210.09/54.18 "label": "EVAL with clause\npred(s(s(X36)), s(X37)) :- pred(s(X36), X37).\nand substitutionX36 -> T15,\nT12 -> s(T15),\nX37 -> X38,\nX29 -> s(X38)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 78, 210.09/54.18 "to": 133, 210.09/54.18 "label": "EVAL-BACKTRACK" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 84, 210.09/54.18 "to": 91, 210.09/54.18 "label": "SUCCESS" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 121, 210.09/54.18 "to": 74, 210.09/54.18 "label": "INSTANCE with matching:\nT12 -> T15\nX29 -> X38" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 202, 210.09/54.18 "to": 210, 210.09/54.18 "label": "CASE" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 203, 210.09/54.18 "to": 243, 210.09/54.18 "label": "CASE" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 210, 210.09/54.18 "to": 213, 210.09/54.18 "label": "PARALLEL" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 210, 210.09/54.18 "to": 214, 210.09/54.18 "label": "PARALLEL" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 213, 210.09/54.18 "to": 220, 210.09/54.18 "label": "EVAL with clause\npred(0, 0).\nand substitutionT9 -> 0,\nX19 -> 0" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 213, 210.09/54.18 "to": 221, 210.09/54.18 "label": "EVAL-BACKTRACK" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 214, 210.09/54.18 "to": 223, 210.09/54.18 "label": "PARALLEL" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 214, 210.09/54.18 "to": 225, 210.09/54.18 "label": "PARALLEL" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 220, 210.09/54.18 "to": 222, 210.09/54.18 "label": "SUCCESS" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 223, 210.09/54.18 "to": 228, 210.09/54.18 "label": "EVAL with clause\npred(s(0), 0).\nand substitutionT9 -> s(0),\nX19 -> 0" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 223, 210.09/54.18 "to": 229, 210.09/54.18 "label": "EVAL-BACKTRACK" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 225, 210.09/54.18 "to": 239, 210.09/54.18 "label": "EVAL with clause\npred(s(s(X45)), s(X46)) :- pred(s(X45), X46).\nand substitutionX45 -> T19,\nT9 -> s(s(T19)),\nX46 -> X47,\nX19 -> s(X47)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 225, 210.09/54.18 "to": 240, 210.09/54.18 "label": "EVAL-BACKTRACK" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 228, 210.09/54.18 "to": 230, 210.09/54.18 "label": "SUCCESS" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 239, 210.09/54.18 "to": 202, 210.09/54.18 "label": "INSTANCE with matching:\nT9 -> s(T19)\nX19 -> X47" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 243, 210.09/54.18 "to": 244, 210.09/54.18 "label": "PARALLEL" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 243, 210.09/54.18 "to": 245, 210.09/54.18 "label": "PARALLEL" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 244, 210.09/54.18 "to": 246, 210.09/54.18 "label": "EVAL with clause\nhalf(0, 0).\nand substitutionT16 -> 0,\nX20 -> 0" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 244, 210.09/54.18 "to": 247, 210.09/54.18 "label": "EVAL-BACKTRACK" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 245, 210.09/54.18 "to": 252, 210.09/54.18 "label": "EVAL with clause\nhalf(s(s(X56)), s(X57)) :- ','(pred(s(s(X56)), X58), ','(pred(X58, X59), half(X59, X57))).\nand substitutionX56 -> T22,\nT16 -> s(s(T22)),\nX57 -> X60,\nX20 -> s(X60)" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 245, 210.09/54.18 "to": 254, 210.09/54.18 "label": "EVAL-BACKTRACK" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 246, 210.09/54.18 "to": 248, 210.09/54.18 "label": "SUCCESS" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 252, 210.09/54.18 "to": 62, 210.09/54.18 "label": "INSTANCE with matching:\nT8 -> T22\nX18 -> X58\nX19 -> X59\nX20 -> X60" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 262, 210.09/54.18 "to": 264, 210.09/54.18 "label": "CASE" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 263, 210.09/54.18 "to": 1, 210.09/54.18 "label": "INSTANCE with matching:\nT1 -> T23" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 264, 210.09/54.18 "to": 265, 210.09/54.18 "label": "PARALLEL" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 264, 210.09/54.18 "to": 267, 210.09/54.18 "label": "PARALLEL" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 265, 210.09/54.18 "to": 271, 210.09/54.18 "label": "EVAL with clause\ndouble(0, 0).\nand substitutionT5 -> 0,\nX7 -> 0" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 265, 210.09/54.18 "to": 277, 210.09/54.18 "label": "EVAL-BACKTRACK" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 267, 210.09/54.18 "to": 421, 210.09/54.18 "label": "EVAL with clause\ndouble(s(X68), s(s(X69))) :- ','(pred(s(X68), X70), double(X70, X69)).\nand substitutionX68 -> T26,\nT5 -> s(T26),\nX69 -> X71,\nX7 -> s(s(X71))" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 267, 210.09/54.18 "to": 422, 210.09/54.18 "label": "EVAL-BACKTRACK" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 271, 210.09/54.18 "to": 280, 210.09/54.18 "label": "SUCCESS" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 421, 210.09/54.18 "to": 423, 210.09/54.18 "label": "SPLIT 1" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 421, 210.09/54.18 "to": 424, 210.09/54.18 "label": "SPLIT 2\nnew knowledge:\nT26 is ground\nT27 is ground\nreplacements:X70 -> T27" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 423, 210.09/54.18 "to": 202, 210.09/54.18 "label": "INSTANCE with matching:\nT9 -> s(T26)\nX19 -> X70" 210.09/54.18 }, 210.09/54.18 { 210.09/54.18 "from": 424, 210.09/54.18 "to": 262, 210.09/54.18 "label": "INSTANCE with matching:\nT5 -> T27\nX7 -> X71" 210.09/54.18 } 210.09/54.18 ], 210.09/54.18 "type": "Graph" 210.09/54.18 } 210.09/54.18 } 210.09/54.18 210.09/54.18 ---------------------------------------- 210.09/54.18 210.09/54.18 (190) 210.09/54.18 Complex Obligation (AND) 210.09/54.18 210.09/54.18 ---------------------------------------- 210.09/54.18 210.09/54.18 (191) 210.09/54.18 Obligation: 210.09/54.18 Rules: 210.09/54.18 f210_in(T9) -> f213_in(T9) :|: TRUE 210.09/54.18 f214_out(x) -> f210_out(x) :|: TRUE 210.09/54.18 f210_in(x1) -> f214_in(x1) :|: TRUE 210.09/54.18 f213_out(x2) -> f210_out(x2) :|: TRUE 210.09/54.18 f225_in(x3) -> f240_in :|: TRUE 210.09/54.18 f225_in(s(s(T19))) -> f239_in(T19) :|: TRUE 210.09/54.18 f239_out(x4) -> f225_out(s(s(x4))) :|: TRUE 210.09/54.18 f240_out -> f225_out(x5) :|: TRUE 210.09/54.18 f214_in(x6) -> f223_in(x6) :|: TRUE 210.09/54.18 f223_out(x7) -> f214_out(x7) :|: TRUE 210.09/54.18 f225_out(x8) -> f214_out(x8) :|: TRUE 210.09/54.18 f214_in(x9) -> f225_in(x9) :|: TRUE 210.09/54.18 f210_out(x10) -> f202_out(x10) :|: TRUE 210.09/54.18 f202_in(x11) -> f210_in(x11) :|: TRUE 210.09/54.18 f202_out(s(x12)) -> f239_out(x12) :|: TRUE 210.09/54.18 f239_in(x13) -> f202_in(s(x13)) :|: TRUE 210.09/54.18 f4_out(T1) -> f1_out(T1) :|: TRUE 210.09/54.18 f1_in(x14) -> f4_in(x14) :|: TRUE 210.09/54.18 f8_out -> f4_out(x15) :|: TRUE 210.09/54.18 f7_out(T4) -> f4_out(s(T4)) :|: TRUE 210.09/54.18 f4_in(x16) -> f8_in :|: TRUE 210.09/54.18 f4_in(s(x17)) -> f7_in(x17) :|: TRUE 210.09/54.19 f23_out(x18) -> f24_in(x19) :|: TRUE 210.09/54.19 f24_out(x20) -> f7_out(x21) :|: TRUE 210.09/54.19 f7_in(x22) -> f23_in(x22) :|: TRUE 210.09/54.19 f23_in(x23) -> f57_in(x23) :|: TRUE 210.09/54.19 f57_out(x24) -> f23_out(x24) :|: TRUE 210.09/54.19 f58_out(x25) -> f57_out(x25) :|: TRUE 210.09/54.19 f57_in(x26) -> f58_in(x26) :|: TRUE 210.09/54.19 f62_out(T8) -> f58_out(s(T8)) :|: TRUE 210.09/54.19 f58_in(x27) -> f63_in :|: TRUE 210.09/54.19 f58_in(s(x28)) -> f62_in(x28) :|: TRUE 210.09/54.19 f63_out -> f58_out(x29) :|: TRUE 210.09/54.19 f62_in(x30) -> f65_in(x30) :|: TRUE 210.09/54.19 f65_out(x31) -> f66_in(x32) :|: TRUE 210.09/54.19 f66_out(x33) -> f62_out(x34) :|: TRUE 210.09/54.19 f66_in(x35) -> f202_in(x35) :|: TRUE 210.09/54.19 f203_out(x36) -> f66_out(x37) :|: TRUE 210.09/54.19 f202_out(x38) -> f203_in(x39) :|: TRUE 210.09/54.19 f24_in(T5) -> f262_in(T5) :|: TRUE 210.09/54.19 f262_out(x40) -> f263_in(x41) :|: TRUE 210.09/54.19 f263_out(x42) -> f24_out(x43) :|: TRUE 210.09/54.19 f262_in(x44) -> f264_in(x44) :|: TRUE 210.09/54.19 f264_out(x45) -> f262_out(x45) :|: TRUE 210.09/54.19 f264_in(x46) -> f267_in(x46) :|: TRUE 210.09/54.19 f265_out(x47) -> f264_out(x47) :|: TRUE 210.09/54.19 f267_out(x48) -> f264_out(x48) :|: TRUE 210.09/54.19 f264_in(x49) -> f265_in(x49) :|: TRUE 210.09/54.19 f421_out(T26) -> f267_out(s(T26)) :|: TRUE 210.09/54.19 f422_out -> f267_out(x50) :|: TRUE 210.09/54.19 f267_in(s(x51)) -> f421_in(x51) :|: TRUE 210.09/54.19 f267_in(x52) -> f422_in :|: TRUE 210.09/54.19 f423_out(x53) -> f424_in(x54) :|: TRUE 210.09/54.19 f421_in(x55) -> f423_in(x55) :|: TRUE 210.09/54.19 f424_out(x56) -> f421_out(x57) :|: TRUE 210.09/54.19 f423_in(x58) -> f202_in(s(x58)) :|: TRUE 210.09/54.19 f202_out(s(x59)) -> f423_out(x59) :|: TRUE 210.09/54.19 Start term: f1_in(T1) 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (192) IRSwTSimpleDependencyGraphProof (EQUIVALENT) 210.09/54.19 Constructed simple dependency graph. 210.09/54.19 210.09/54.19 Simplified to the following IRSwTs: 210.09/54.19 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (193) 210.09/54.19 TRUE 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (194) 210.09/54.19 Obligation: 210.09/54.19 Rules: 210.09/54.19 f421_out(T26) -> f267_out(s(T26)) :|: TRUE 210.09/54.19 f422_out -> f267_out(T5) :|: TRUE 210.09/54.19 f267_in(s(x)) -> f421_in(x) :|: TRUE 210.09/54.19 f267_in(x1) -> f422_in :|: TRUE 210.09/54.19 f264_in(x2) -> f267_in(x2) :|: TRUE 210.09/54.19 f265_out(x3) -> f264_out(x3) :|: TRUE 210.09/54.19 f267_out(x4) -> f264_out(x4) :|: TRUE 210.09/54.19 f264_in(x5) -> f265_in(x5) :|: TRUE 210.09/54.19 f214_in(T9) -> f223_in(T9) :|: TRUE 210.09/54.19 f223_out(x6) -> f214_out(x6) :|: TRUE 210.09/54.19 f225_out(x7) -> f214_out(x7) :|: TRUE 210.09/54.19 f214_in(x8) -> f225_in(x8) :|: TRUE 210.09/54.19 f423_in(x9) -> f202_in(s(x9)) :|: TRUE 210.09/54.19 f202_out(s(x10)) -> f423_out(x10) :|: TRUE 210.09/54.19 f228_in -> f228_out :|: TRUE 210.09/54.19 f262_in(x11) -> f264_in(x11) :|: TRUE 210.09/54.19 f264_out(x12) -> f262_out(x12) :|: TRUE 210.09/54.19 f220_in -> f220_out :|: TRUE 210.09/54.19 f210_in(x13) -> f213_in(x13) :|: TRUE 210.09/54.19 f214_out(x14) -> f210_out(x14) :|: TRUE 210.09/54.19 f210_in(x15) -> f214_in(x15) :|: TRUE 210.09/54.19 f213_out(x16) -> f210_out(x16) :|: TRUE 210.09/54.19 f223_in(x17) -> f229_in :|: TRUE 210.09/54.19 f228_out -> f223_out(s(0)) :|: TRUE 210.09/54.19 f223_in(s(0)) -> f228_in :|: TRUE 210.09/54.19 f229_out -> f223_out(x18) :|: TRUE 210.09/54.19 f225_in(x19) -> f240_in :|: TRUE 210.09/54.19 f225_in(s(s(T19))) -> f239_in(T19) :|: TRUE 210.09/54.19 f239_out(x20) -> f225_out(s(s(x20))) :|: TRUE 210.09/54.19 f240_out -> f225_out(x21) :|: TRUE 210.09/54.19 f210_out(x22) -> f202_out(x22) :|: TRUE 210.09/54.19 f202_in(x23) -> f210_in(x23) :|: TRUE 210.09/54.19 f202_out(s(x24)) -> f239_out(x24) :|: TRUE 210.09/54.19 f239_in(x25) -> f202_in(s(x25)) :|: TRUE 210.09/54.19 f424_in(T27) -> f262_in(T27) :|: TRUE 210.09/54.19 f262_out(x26) -> f424_out(x26) :|: TRUE 210.09/54.19 f423_out(x27) -> f424_in(x28) :|: TRUE 210.09/54.19 f421_in(x29) -> f423_in(x29) :|: TRUE 210.09/54.19 f424_out(x30) -> f421_out(x31) :|: TRUE 210.09/54.19 f213_in(0) -> f220_in :|: TRUE 210.09/54.19 f221_out -> f213_out(x32) :|: TRUE 210.09/54.19 f213_in(x33) -> f221_in :|: TRUE 210.09/54.19 f220_out -> f213_out(0) :|: TRUE 210.09/54.19 f4_out(T1) -> f1_out(T1) :|: TRUE 210.09/54.19 f1_in(x34) -> f4_in(x34) :|: TRUE 210.09/54.19 f8_out -> f4_out(x35) :|: TRUE 210.09/54.19 f7_out(T4) -> f4_out(s(T4)) :|: TRUE 210.09/54.19 f4_in(x36) -> f8_in :|: TRUE 210.09/54.19 f4_in(s(x37)) -> f7_in(x37) :|: TRUE 210.09/54.19 f23_out(x38) -> f24_in(x39) :|: TRUE 210.09/54.19 f24_out(x40) -> f7_out(x41) :|: TRUE 210.09/54.19 f7_in(x42) -> f23_in(x42) :|: TRUE 210.09/54.19 f24_in(x43) -> f262_in(x43) :|: TRUE 210.09/54.19 f262_out(x44) -> f263_in(x45) :|: TRUE 210.09/54.19 f263_out(x46) -> f24_out(x47) :|: TRUE 210.09/54.19 Start term: f1_in(T1) 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (195) IRSwTSimpleDependencyGraphProof (EQUIVALENT) 210.09/54.19 Constructed simple dependency graph. 210.09/54.19 210.09/54.19 Simplified to the following IRSwTs: 210.09/54.19 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (196) 210.09/54.19 TRUE 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (197) 210.09/54.19 Obligation: 210.09/54.19 Rules: 210.09/54.19 f75_in(T12) -> f76_in(T12) :|: TRUE 210.09/54.19 f76_out(x) -> f75_out(x) :|: TRUE 210.09/54.19 f74_in(x1) -> f75_in(x1) :|: TRUE 210.09/54.19 f75_out(x2) -> f74_out(x2) :|: TRUE 210.09/54.19 f121_in(T15) -> f74_in(T15) :|: TRUE 210.09/54.19 f74_out(x3) -> f121_out(x3) :|: TRUE 210.09/54.19 f76_in(x4) -> f77_in(x4) :|: TRUE 210.09/54.19 f77_out(x5) -> f76_out(x5) :|: TRUE 210.09/54.19 f76_in(x6) -> f78_in(x6) :|: TRUE 210.09/54.19 f78_out(x7) -> f76_out(x7) :|: TRUE 210.09/54.19 f78_in(x8) -> f133_in :|: TRUE 210.09/54.19 f78_in(s(x9)) -> f121_in(x9) :|: TRUE 210.09/54.19 f133_out -> f78_out(x10) :|: TRUE 210.09/54.19 f121_out(x11) -> f78_out(s(x11)) :|: TRUE 210.09/54.19 f4_out(T1) -> f1_out(T1) :|: TRUE 210.09/54.19 f1_in(x12) -> f4_in(x12) :|: TRUE 210.09/54.19 f8_out -> f4_out(x13) :|: TRUE 210.09/54.19 f7_out(T4) -> f4_out(s(T4)) :|: TRUE 210.09/54.19 f4_in(x14) -> f8_in :|: TRUE 210.09/54.19 f4_in(s(x15)) -> f7_in(x15) :|: TRUE 210.09/54.19 f23_out(x16) -> f24_in(x17) :|: TRUE 210.09/54.19 f24_out(x18) -> f7_out(x19) :|: TRUE 210.09/54.19 f7_in(x20) -> f23_in(x20) :|: TRUE 210.09/54.19 f23_in(x21) -> f57_in(x21) :|: TRUE 210.09/54.19 f57_out(x22) -> f23_out(x22) :|: TRUE 210.09/54.19 f58_out(x23) -> f57_out(x23) :|: TRUE 210.09/54.19 f57_in(x24) -> f58_in(x24) :|: TRUE 210.09/54.19 f62_out(T8) -> f58_out(s(T8)) :|: TRUE 210.09/54.19 f58_in(x25) -> f63_in :|: TRUE 210.09/54.19 f58_in(s(x26)) -> f62_in(x26) :|: TRUE 210.09/54.19 f63_out -> f58_out(x27) :|: TRUE 210.09/54.19 f62_in(x28) -> f65_in(x28) :|: TRUE 210.09/54.19 f65_out(x29) -> f66_in(x30) :|: TRUE 210.09/54.19 f66_out(x31) -> f62_out(x32) :|: TRUE 210.09/54.19 f65_in(x33) -> f68_in(x33) :|: TRUE 210.09/54.19 f68_out(x34) -> f65_out(x34) :|: TRUE 210.09/54.19 f68_in(x35) -> f70_in(x35) :|: TRUE 210.09/54.19 f70_out(x36) -> f68_out(x36) :|: TRUE 210.09/54.19 f70_in(x37) -> f71_in(x37) :|: TRUE 210.09/54.19 f71_out(x38) -> f70_out(x38) :|: TRUE 210.09/54.19 f71_in(x39) -> f74_in(x39) :|: TRUE 210.09/54.19 f74_out(x40) -> f71_out(x40) :|: TRUE 210.09/54.19 Start term: f1_in(T1) 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (198) IRSwTSimpleDependencyGraphProof (EQUIVALENT) 210.09/54.19 Constructed simple dependency graph. 210.09/54.19 210.09/54.19 Simplified to the following IRSwTs: 210.09/54.19 210.09/54.19 intTRSProblem: 210.09/54.19 f75_in(T12) -> f76_in(T12) :|: TRUE 210.09/54.19 f74_in(x1) -> f75_in(x1) :|: TRUE 210.09/54.19 f121_in(T15) -> f74_in(T15) :|: TRUE 210.09/54.19 f76_in(x6) -> f78_in(x6) :|: TRUE 210.09/54.19 f78_in(s(x9)) -> f121_in(x9) :|: TRUE 210.09/54.19 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (199) 210.09/54.19 Obligation: 210.09/54.19 Rules: 210.09/54.19 f75_in(T12) -> f76_in(T12) :|: TRUE 210.09/54.19 f74_in(x1) -> f75_in(x1) :|: TRUE 210.09/54.19 f121_in(T15) -> f74_in(T15) :|: TRUE 210.09/54.19 f76_in(x6) -> f78_in(x6) :|: TRUE 210.09/54.19 f78_in(s(x9)) -> f121_in(x9) :|: TRUE 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (200) IntTRSCompressionProof (EQUIVALENT) 210.09/54.19 Compressed rules. 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (201) 210.09/54.19 Obligation: 210.09/54.19 Rules: 210.09/54.19 f121_in(s(x9:0)) -> f121_in(x9:0) :|: TRUE 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (202) IRSFormatTransformerProof (EQUIVALENT) 210.09/54.19 Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (203) 210.09/54.19 Obligation: 210.09/54.19 Rules: 210.09/54.19 f121_in(s(x9:0)) -> f121_in(x9:0) :|: TRUE 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (204) IRSwTTerminationDigraphProof (EQUIVALENT) 210.09/54.19 Constructed termination digraph! 210.09/54.19 Nodes: 210.09/54.19 (1) f121_in(s(x9:0)) -> f121_in(x9:0) :|: TRUE 210.09/54.19 210.09/54.19 Arcs: 210.09/54.19 (1) -> (1) 210.09/54.19 210.09/54.19 This digraph is fully evaluated! 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (205) 210.09/54.19 Obligation: 210.09/54.19 210.09/54.19 Termination digraph: 210.09/54.19 Nodes: 210.09/54.19 (1) f121_in(s(x9:0)) -> f121_in(x9:0) :|: TRUE 210.09/54.19 210.09/54.19 Arcs: 210.09/54.19 (1) -> (1) 210.09/54.19 210.09/54.19 This digraph is fully evaluated! 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (206) TempFilterProof (SOUND) 210.09/54.19 Used the following sort dictionary for filtering: 210.09/54.19 f121_in(VARIABLE) 210.09/54.19 s(VARIABLE) 210.09/54.19 Removed predefined arithmetic. 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (207) 210.09/54.19 Obligation: 210.09/54.19 Rules: 210.09/54.19 f121_in(s(x9:0)) -> f121_in(x9:0) 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (208) IRSwTToQDPProof (SOUND) 210.09/54.19 Removed the integers and created a QDP-Problem. 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (209) 210.09/54.19 Obligation: 210.09/54.19 Q DP problem: 210.09/54.19 The TRS P consists of the following rules: 210.09/54.19 210.09/54.19 f121_in(s(x9:0)) -> f121_in(x9:0) 210.09/54.19 210.09/54.19 R is empty. 210.09/54.19 Q is empty. 210.09/54.19 We have to consider all (P,Q,R)-chains. 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (210) QDPSizeChangeProof (EQUIVALENT) 210.09/54.19 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. 210.09/54.19 210.09/54.19 From the DPs we obtained the following set of size-change graphs: 210.09/54.19 *f121_in(s(x9:0)) -> f121_in(x9:0) 210.09/54.19 The graph contains the following edges 1 > 1 210.09/54.19 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (211) 210.09/54.19 YES 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (212) 210.09/54.19 Obligation: 210.09/54.19 Rules: 210.09/54.19 f121_in(T15) -> f74_in(T15) :|: TRUE 210.09/54.19 f74_out(x) -> f121_out(x) :|: TRUE 210.09/54.19 f214_in(T9) -> f223_in(T9) :|: TRUE 210.09/54.19 f223_out(x1) -> f214_out(x1) :|: TRUE 210.09/54.19 f225_out(x2) -> f214_out(x2) :|: TRUE 210.09/54.19 f214_in(x3) -> f225_in(x3) :|: TRUE 210.09/54.19 f243_in(T16) -> f244_in(T16) :|: TRUE 210.09/54.19 f245_out(x4) -> f243_out(x4) :|: TRUE 210.09/54.19 f244_out(x5) -> f243_out(x5) :|: TRUE 210.09/54.19 f243_in(x6) -> f245_in(x6) :|: TRUE 210.09/54.19 f228_in -> f228_out :|: TRUE 210.09/54.19 f70_in(T8) -> f71_in(T8) :|: TRUE 210.09/54.19 f71_out(x7) -> f70_out(x7) :|: TRUE 210.09/54.19 f210_in(x8) -> f213_in(x8) :|: TRUE 210.09/54.19 f214_out(x9) -> f210_out(x9) :|: TRUE 210.09/54.19 f210_in(x10) -> f214_in(x10) :|: TRUE 210.09/54.19 f213_out(x11) -> f210_out(x11) :|: TRUE 210.09/54.19 f84_in -> f84_out :|: TRUE 210.09/54.19 f223_in(x12) -> f229_in :|: TRUE 210.09/54.19 f228_out -> f223_out(s(0)) :|: TRUE 210.09/54.19 f223_in(s(0)) -> f228_in :|: TRUE 210.09/54.19 f229_out -> f223_out(x13) :|: TRUE 210.09/54.19 f225_in(x14) -> f240_in :|: TRUE 210.09/54.19 f225_in(s(s(T19))) -> f239_in(T19) :|: TRUE 210.09/54.19 f239_out(x15) -> f225_out(s(s(x15))) :|: TRUE 210.09/54.19 f240_out -> f225_out(x16) :|: TRUE 210.09/54.19 f89_out -> f77_out(T12) :|: TRUE 210.09/54.19 f77_in(x17) -> f89_in :|: TRUE 210.09/54.19 f77_in(0) -> f84_in :|: TRUE 210.09/54.19 f84_out -> f77_out(0) :|: TRUE 210.09/54.19 f202_out(s(x18)) -> f239_out(x18) :|: TRUE 210.09/54.19 f239_in(x19) -> f202_in(s(x19)) :|: TRUE 210.09/54.19 f213_in(0) -> f220_in :|: TRUE 210.09/54.19 f221_out -> f213_out(x20) :|: TRUE 210.09/54.19 f213_in(x21) -> f221_in :|: TRUE 210.09/54.19 f220_out -> f213_out(0) :|: TRUE 210.09/54.19 f68_in(x22) -> f70_in(x22) :|: TRUE 210.09/54.19 f70_out(x23) -> f68_out(x23) :|: TRUE 210.09/54.19 f254_out -> f245_out(x24) :|: TRUE 210.09/54.19 f252_out(T22) -> f245_out(s(s(T22))) :|: TRUE 210.09/54.19 f245_in(x25) -> f254_in :|: TRUE 210.09/54.19 f245_in(s(s(x26))) -> f252_in(x26) :|: TRUE 210.09/54.19 f75_in(x27) -> f76_in(x27) :|: TRUE 210.09/54.19 f76_out(x28) -> f75_out(x28) :|: TRUE 210.09/54.19 f243_out(x29) -> f203_out(x29) :|: TRUE 210.09/54.19 f203_in(x30) -> f243_in(x30) :|: TRUE 210.09/54.19 f252_in(x31) -> f62_in(x31) :|: TRUE 210.09/54.19 f62_out(x32) -> f252_out(x32) :|: TRUE 210.09/54.19 f66_in(x33) -> f202_in(x33) :|: TRUE 210.09/54.19 f203_out(x34) -> f66_out(x35) :|: TRUE 210.09/54.19 f202_out(x36) -> f203_in(x37) :|: TRUE 210.09/54.19 f76_in(x38) -> f77_in(x38) :|: TRUE 210.09/54.19 f77_out(x39) -> f76_out(x39) :|: TRUE 210.09/54.19 f76_in(x40) -> f78_in(x40) :|: TRUE 210.09/54.19 f78_out(x41) -> f76_out(x41) :|: TRUE 210.09/54.19 f62_in(x42) -> f65_in(x42) :|: TRUE 210.09/54.19 f65_out(x43) -> f66_in(x44) :|: TRUE 210.09/54.19 f66_out(x45) -> f62_out(x46) :|: TRUE 210.09/54.19 f220_in -> f220_out :|: TRUE 210.09/54.19 f74_in(x47) -> f75_in(x47) :|: TRUE 210.09/54.19 f75_out(x48) -> f74_out(x48) :|: TRUE 210.09/54.19 f71_in(x49) -> f74_in(x49) :|: TRUE 210.09/54.19 f74_out(x50) -> f71_out(x50) :|: TRUE 210.09/54.19 f210_out(x51) -> f202_out(x51) :|: TRUE 210.09/54.19 f202_in(x52) -> f210_in(x52) :|: TRUE 210.09/54.19 f65_in(x53) -> f68_in(x53) :|: TRUE 210.09/54.19 f68_out(x54) -> f65_out(x54) :|: TRUE 210.09/54.19 f78_in(x55) -> f133_in :|: TRUE 210.09/54.19 f78_in(s(x56)) -> f121_in(x56) :|: TRUE 210.09/54.19 f133_out -> f78_out(x57) :|: TRUE 210.09/54.19 f121_out(x58) -> f78_out(s(x58)) :|: TRUE 210.09/54.19 f4_out(T1) -> f1_out(T1) :|: TRUE 210.09/54.19 f1_in(x59) -> f4_in(x59) :|: TRUE 210.09/54.19 f8_out -> f4_out(x60) :|: TRUE 210.09/54.19 f7_out(T4) -> f4_out(s(T4)) :|: TRUE 210.09/54.19 f4_in(x61) -> f8_in :|: TRUE 210.09/54.19 f4_in(s(x62)) -> f7_in(x62) :|: TRUE 210.09/54.19 f23_out(x63) -> f24_in(x64) :|: TRUE 210.09/54.19 f24_out(x65) -> f7_out(x66) :|: TRUE 210.09/54.19 f7_in(x67) -> f23_in(x67) :|: TRUE 210.09/54.19 f23_in(x68) -> f57_in(x68) :|: TRUE 210.09/54.19 f57_out(x69) -> f23_out(x69) :|: TRUE 210.09/54.19 f58_out(x70) -> f57_out(x70) :|: TRUE 210.09/54.19 f57_in(x71) -> f58_in(x71) :|: TRUE 210.09/54.19 f62_out(x72) -> f58_out(s(x72)) :|: TRUE 210.09/54.19 f58_in(x73) -> f63_in :|: TRUE 210.09/54.19 f58_in(s(x74)) -> f62_in(x74) :|: TRUE 210.09/54.19 f63_out -> f58_out(x75) :|: TRUE 210.09/54.19 Start term: f1_in(T1) 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (213) IRSwTSimpleDependencyGraphProof (EQUIVALENT) 210.09/54.19 Constructed simple dependency graph. 210.09/54.19 210.09/54.19 Simplified to the following IRSwTs: 210.09/54.19 210.09/54.19 intTRSProblem: 210.09/54.19 f121_in(T15) -> f74_in(T15) :|: TRUE 210.09/54.19 f74_out(x) -> f121_out(x) :|: TRUE 210.09/54.19 f214_in(T9) -> f223_in(T9) :|: TRUE 210.09/54.19 f223_out(x1) -> f214_out(x1) :|: TRUE 210.09/54.19 f225_out(x2) -> f214_out(x2) :|: TRUE 210.09/54.19 f214_in(x3) -> f225_in(x3) :|: TRUE 210.09/54.19 f243_in(x6) -> f245_in(x6) :|: TRUE 210.09/54.19 f228_in -> f228_out :|: TRUE 210.09/54.19 f70_in(T8) -> f71_in(T8) :|: TRUE 210.09/54.19 f71_out(x7) -> f70_out(x7) :|: TRUE 210.09/54.19 f210_in(x8) -> f213_in(x8) :|: TRUE 210.09/54.19 f214_out(x9) -> f210_out(x9) :|: TRUE 210.09/54.19 f210_in(x10) -> f214_in(x10) :|: TRUE 210.09/54.19 f213_out(x11) -> f210_out(x11) :|: TRUE 210.09/54.19 f84_in -> f84_out :|: TRUE 210.09/54.19 f228_out -> f223_out(s(0)) :|: TRUE 210.09/54.19 f223_in(s(0)) -> f228_in :|: TRUE 210.09/54.19 f225_in(s(s(T19))) -> f239_in(T19) :|: TRUE 210.09/54.19 f239_out(x15) -> f225_out(s(s(x15))) :|: TRUE 210.09/54.19 f77_in(0) -> f84_in :|: TRUE 210.09/54.19 f84_out -> f77_out(0) :|: TRUE 210.09/54.19 f202_out(s(x18)) -> f239_out(x18) :|: TRUE 210.09/54.19 f239_in(x19) -> f202_in(s(x19)) :|: TRUE 210.09/54.19 f213_in(0) -> f220_in :|: TRUE 210.09/54.19 f220_out -> f213_out(0) :|: TRUE 210.09/54.19 f68_in(x22) -> f70_in(x22) :|: TRUE 210.09/54.19 f70_out(x23) -> f68_out(x23) :|: TRUE 210.09/54.19 f245_in(s(s(x26))) -> f252_in(x26) :|: TRUE 210.09/54.19 f75_in(x27) -> f76_in(x27) :|: TRUE 210.09/54.19 f76_out(x28) -> f75_out(x28) :|: TRUE 210.09/54.19 f203_in(x30) -> f243_in(x30) :|: TRUE 210.09/54.19 f252_in(x31) -> f62_in(x31) :|: TRUE 210.09/54.19 f66_in(x33) -> f202_in(x33) :|: TRUE 210.09/54.19 f202_out(x36) -> f203_in(x37) :|: TRUE 210.09/54.19 f76_in(x38) -> f77_in(x38) :|: TRUE 210.09/54.19 f77_out(x39) -> f76_out(x39) :|: TRUE 210.09/54.19 f76_in(x40) -> f78_in(x40) :|: TRUE 210.09/54.19 f78_out(x41) -> f76_out(x41) :|: TRUE 210.09/54.19 f62_in(x42) -> f65_in(x42) :|: TRUE 210.09/54.19 f65_out(x43) -> f66_in(x44) :|: TRUE 210.09/54.19 f220_in -> f220_out :|: TRUE 210.09/54.19 f74_in(x47) -> f75_in(x47) :|: TRUE 210.09/54.19 f75_out(x48) -> f74_out(x48) :|: TRUE 210.09/54.19 f71_in(x49) -> f74_in(x49) :|: TRUE 210.09/54.19 f74_out(x50) -> f71_out(x50) :|: TRUE 210.09/54.19 f210_out(x51) -> f202_out(x51) :|: TRUE 210.09/54.19 f202_in(x52) -> f210_in(x52) :|: TRUE 210.09/54.19 f65_in(x53) -> f68_in(x53) :|: TRUE 210.09/54.19 f68_out(x54) -> f65_out(x54) :|: TRUE 210.09/54.19 f78_in(s(x56)) -> f121_in(x56) :|: TRUE 210.09/54.19 f121_out(x58) -> f78_out(s(x58)) :|: TRUE 210.09/54.19 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (214) 210.09/54.19 Obligation: 210.09/54.19 Rules: 210.09/54.19 f121_in(T15) -> f74_in(T15) :|: TRUE 210.09/54.19 f74_out(x) -> f121_out(x) :|: TRUE 210.09/54.19 f214_in(T9) -> f223_in(T9) :|: TRUE 210.09/54.19 f223_out(x1) -> f214_out(x1) :|: TRUE 210.09/54.19 f225_out(x2) -> f214_out(x2) :|: TRUE 210.09/54.19 f214_in(x3) -> f225_in(x3) :|: TRUE 210.09/54.19 f243_in(x6) -> f245_in(x6) :|: TRUE 210.09/54.19 f228_in -> f228_out :|: TRUE 210.09/54.19 f70_in(T8) -> f71_in(T8) :|: TRUE 210.09/54.19 f71_out(x7) -> f70_out(x7) :|: TRUE 210.09/54.19 f210_in(x8) -> f213_in(x8) :|: TRUE 210.09/54.19 f214_out(x9) -> f210_out(x9) :|: TRUE 210.09/54.19 f210_in(x10) -> f214_in(x10) :|: TRUE 210.09/54.19 f213_out(x11) -> f210_out(x11) :|: TRUE 210.09/54.19 f84_in -> f84_out :|: TRUE 210.09/54.19 f228_out -> f223_out(s(0)) :|: TRUE 210.09/54.19 f223_in(s(0)) -> f228_in :|: TRUE 210.09/54.19 f225_in(s(s(T19))) -> f239_in(T19) :|: TRUE 210.09/54.19 f239_out(x15) -> f225_out(s(s(x15))) :|: TRUE 210.09/54.19 f77_in(0) -> f84_in :|: TRUE 210.09/54.19 f84_out -> f77_out(0) :|: TRUE 210.09/54.19 f202_out(s(x18)) -> f239_out(x18) :|: TRUE 210.09/54.19 f239_in(x19) -> f202_in(s(x19)) :|: TRUE 210.09/54.19 f213_in(0) -> f220_in :|: TRUE 210.09/54.19 f220_out -> f213_out(0) :|: TRUE 210.09/54.19 f68_in(x22) -> f70_in(x22) :|: TRUE 210.09/54.19 f70_out(x23) -> f68_out(x23) :|: TRUE 210.09/54.19 f245_in(s(s(x26))) -> f252_in(x26) :|: TRUE 210.09/54.19 f75_in(x27) -> f76_in(x27) :|: TRUE 210.09/54.19 f76_out(x28) -> f75_out(x28) :|: TRUE 210.09/54.19 f203_in(x30) -> f243_in(x30) :|: TRUE 210.09/54.19 f252_in(x31) -> f62_in(x31) :|: TRUE 210.09/54.19 f66_in(x33) -> f202_in(x33) :|: TRUE 210.09/54.19 f202_out(x36) -> f203_in(x37) :|: TRUE 210.09/54.19 f76_in(x38) -> f77_in(x38) :|: TRUE 210.09/54.19 f77_out(x39) -> f76_out(x39) :|: TRUE 210.09/54.19 f76_in(x40) -> f78_in(x40) :|: TRUE 210.09/54.19 f78_out(x41) -> f76_out(x41) :|: TRUE 210.09/54.19 f62_in(x42) -> f65_in(x42) :|: TRUE 210.09/54.19 f65_out(x43) -> f66_in(x44) :|: TRUE 210.09/54.19 f220_in -> f220_out :|: TRUE 210.09/54.19 f74_in(x47) -> f75_in(x47) :|: TRUE 210.09/54.19 f75_out(x48) -> f74_out(x48) :|: TRUE 210.09/54.19 f71_in(x49) -> f74_in(x49) :|: TRUE 210.09/54.19 f74_out(x50) -> f71_out(x50) :|: TRUE 210.09/54.19 f210_out(x51) -> f202_out(x51) :|: TRUE 210.09/54.19 f202_in(x52) -> f210_in(x52) :|: TRUE 210.09/54.19 f65_in(x53) -> f68_in(x53) :|: TRUE 210.09/54.19 f68_out(x54) -> f65_out(x54) :|: TRUE 210.09/54.19 f78_in(s(x56)) -> f121_in(x56) :|: TRUE 210.09/54.19 f121_out(x58) -> f78_out(s(x58)) :|: TRUE 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (215) IntTRSCompressionProof (EQUIVALENT) 210.09/54.19 Compressed rules. 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (216) 210.09/54.19 Obligation: 210.09/54.19 Rules: 210.09/54.19 f75_in(cons_0) -> f74_out(0) :|: TRUE && cons_0 = 0 210.09/54.19 f210_in(x) -> f202_out(0) :|: TRUE && x = 0 210.09/54.19 f202_out(x36:0) -> f75_in(x26:0) :|: TRUE 210.09/54.19 f75_in(s(x56:0)) -> f75_in(x56:0) :|: TRUE 210.09/54.19 f74_out(x:0) -> f74_out(s(x:0)) :|: TRUE 210.09/54.19 f210_in(s(x1)) -> f202_out(s(0)) :|: TRUE && x1 = 0 210.09/54.19 f202_out(s(x18:0)) -> f202_out(s(s(x18:0))) :|: TRUE 210.09/54.19 f210_in(s(s(T19:0))) -> f210_in(s(T19:0)) :|: TRUE 210.09/54.19 f74_out(x50:0) -> f210_in(x44:0) :|: TRUE 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (217) IRSFormatTransformerProof (EQUIVALENT) 210.09/54.19 Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (218) 210.09/54.19 Obligation: 210.09/54.19 Rules: 210.09/54.19 f75_in(cons_0) -> f74_out(0) :|: TRUE && cons_0 = 0 210.09/54.19 f210_in(x) -> f202_out(0) :|: TRUE && x = 0 210.09/54.19 f202_out(x36:0) -> f75_in(x26:0) :|: TRUE 210.09/54.19 f75_in(s(x56:0)) -> f75_in(x56:0) :|: TRUE 210.09/54.19 f74_out(x:0) -> f74_out(s(x:0)) :|: TRUE 210.09/54.19 f210_in(s(x1)) -> f202_out(s(0)) :|: TRUE && x1 = 0 210.09/54.19 f202_out(s(x18:0)) -> f202_out(s(s(x18:0))) :|: TRUE 210.09/54.19 f210_in(s(s(T19:0))) -> f210_in(s(T19:0)) :|: TRUE 210.09/54.19 f74_out(x50:0) -> f210_in(x44:0) :|: TRUE 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (219) IRSwTTerminationDigraphProof (EQUIVALENT) 210.09/54.19 Constructed termination digraph! 210.09/54.19 Nodes: 210.09/54.19 (1) f75_in(cons_0) -> f74_out(0) :|: TRUE && cons_0 = 0 210.09/54.19 (2) f210_in(x) -> f202_out(0) :|: TRUE && x = 0 210.09/54.19 (3) f202_out(x36:0) -> f75_in(x26:0) :|: TRUE 210.09/54.19 (4) f75_in(s(x56:0)) -> f75_in(x56:0) :|: TRUE 210.09/54.19 (5) f74_out(x:0) -> f74_out(s(x:0)) :|: TRUE 210.09/54.19 (6) f210_in(s(x1)) -> f202_out(s(0)) :|: TRUE && x1 = 0 210.09/54.19 (7) f202_out(s(x18:0)) -> f202_out(s(s(x18:0))) :|: TRUE 210.09/54.19 (8) f210_in(s(s(T19:0))) -> f210_in(s(T19:0)) :|: TRUE 210.09/54.19 (9) f74_out(x50:0) -> f210_in(x44:0) :|: TRUE 210.09/54.19 210.09/54.19 Arcs: 210.09/54.19 (1) -> (5), (9) 210.09/54.19 (2) -> (3) 210.09/54.19 (3) -> (1), (4) 210.09/54.19 (4) -> (1), (4) 210.09/54.19 (5) -> (5), (9) 210.09/54.19 (6) -> (3), (7) 210.09/54.19 (7) -> (3), (7) 210.09/54.19 (8) -> (6), (8) 210.09/54.19 (9) -> (2), (6), (8) 210.09/54.19 210.09/54.19 This digraph is fully evaluated! 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (220) 210.09/54.19 Obligation: 210.09/54.19 210.09/54.19 Termination digraph: 210.09/54.19 Nodes: 210.09/54.19 (1) f75_in(cons_0) -> f74_out(0) :|: TRUE && cons_0 = 0 210.09/54.19 (2) f75_in(s(x56:0)) -> f75_in(x56:0) :|: TRUE 210.09/54.19 (3) f202_out(x36:0) -> f75_in(x26:0) :|: TRUE 210.09/54.19 (4) f202_out(s(x18:0)) -> f202_out(s(s(x18:0))) :|: TRUE 210.09/54.19 (5) f210_in(s(x1)) -> f202_out(s(0)) :|: TRUE && x1 = 0 210.09/54.19 (6) f210_in(s(s(T19:0))) -> f210_in(s(T19:0)) :|: TRUE 210.09/54.19 (7) f210_in(x) -> f202_out(0) :|: TRUE && x = 0 210.09/54.19 (8) f74_out(x50:0) -> f210_in(x44:0) :|: TRUE 210.09/54.19 (9) f74_out(x:0) -> f74_out(s(x:0)) :|: TRUE 210.09/54.19 210.09/54.19 Arcs: 210.09/54.19 (1) -> (8), (9) 210.09/54.19 (2) -> (1), (2) 210.09/54.19 (3) -> (1), (2) 210.09/54.19 (4) -> (3), (4) 210.09/54.19 (5) -> (3), (4) 210.09/54.19 (6) -> (5), (6) 210.09/54.19 (7) -> (3) 210.09/54.19 (8) -> (5), (6), (7) 210.09/54.19 (9) -> (8), (9) 210.09/54.19 210.09/54.19 This digraph is fully evaluated! 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (221) IntTRSCompressionProof (EQUIVALENT) 210.09/54.19 Compressed rules. 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (222) 210.09/54.19 Obligation: 210.09/54.19 Rules: 210.09/54.19 f202_out(s(x18:0:0)) -> f202_out(s(s(x18:0:0))) :|: TRUE 210.09/54.19 f210_in(s(s(T19:0:0))) -> f210_in(s(T19:0:0)) :|: TRUE 210.09/54.19 f210_in(cons_0) -> f202_out(0) :|: TRUE && cons_0 = 0 210.09/54.19 f75_in(x) -> f74_out(0) :|: TRUE && x = 0 210.09/54.19 f210_in(s(x1)) -> f202_out(s(0)) :|: TRUE && x1 = 0 210.09/54.19 f75_in(s(x56:0:0)) -> f75_in(x56:0:0) :|: TRUE 210.09/54.19 f74_out(x:0:0) -> f74_out(s(x:0:0)) :|: TRUE 210.09/54.19 f202_out(x36:0:0) -> f75_in(x26:0:0) :|: TRUE 210.09/54.19 f74_out(x50:0:0) -> f210_in(x44:0:0) :|: TRUE 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (223) IRSwTToIntTRSProof (SOUND) 210.09/54.19 Applied path-length measure to transform intTRS with terms to intTRS. 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (224) 210.09/54.19 Obligation: 210.09/54.19 Rules: 210.09/54.19 f202_out(s(x)) -> f202_out(s(s(x))) :|: TRUE 210.09/54.19 f210_in(s(s(x1))) -> f210_in(s(x1)) :|: TRUE 210.09/54.19 f210_in(cons_0) -> f202_out(0) :|: TRUE && cons_0 = 0 210.09/54.19 f75_in(x2) -> f74_out(0) :|: TRUE && x2 = 0 210.09/54.19 f210_in(s(x3)) -> f202_out(s(0)) :|: TRUE && x3 = 0 210.09/54.19 f75_in(s(x5)) -> f75_in(x5) :|: TRUE 210.09/54.19 f74_out(x6) -> f74_out(s(x6)) :|: TRUE 210.09/54.19 f202_out(x7) -> f75_in(x8) :|: TRUE 210.09/54.19 f74_out(x9) -> f210_in(x10) :|: TRUE 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (225) IntTRSCompressionProof (EQUIVALENT) 210.09/54.19 Compressed rules. 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (226) 210.09/54.19 Obligation: 210.09/54.19 Rules: 210.09/54.19 f202_out(s(x:0)) -> f202_out(s(s(x:0))) :|: TRUE 210.09/54.19 f210_in(s(s(x1:0))) -> f210_in(s(x1:0)) :|: TRUE 210.09/54.19 f210_in(cons_0) -> f202_out(0) :|: TRUE && cons_0 = 0 210.09/54.19 f75_in(x) -> f74_out(0) :|: TRUE && x = 0 210.09/54.19 f210_in(s(x1)) -> f202_out(s(0)) :|: TRUE && x1 = 0 210.09/54.19 f75_in(s(x5:0)) -> f75_in(x5:0) :|: TRUE 210.09/54.19 f74_out(x6:0) -> f74_out(s(x6:0)) :|: TRUE 210.09/54.19 f202_out(x7:0) -> f75_in(x8:0) :|: TRUE 210.09/54.19 f74_out(x9:0) -> f210_in(x10:0) :|: TRUE 210.09/54.19 210.09/54.19 ---------------------------------------- 210.09/54.19 210.09/54.19 (227) 210.09/54.19 Obligation: 210.09/54.19 Rules: 210.09/54.19 f246_out -> f244_out(0) :|: TRUE 210.09/54.19 f247_out -> f244_out(T16) :|: TRUE 210.09/54.19 f244_in(0) -> f246_in :|: TRUE 210.09/54.19 f244_in(x) -> f247_in :|: TRUE 210.09/54.19 f121_in(T15) -> f74_in(T15) :|: TRUE 210.09/54.19 f74_out(x1) -> f121_out(x1) :|: TRUE 210.09/54.19 f214_in(T9) -> f223_in(T9) :|: TRUE 210.09/54.19 f223_out(x2) -> f214_out(x2) :|: TRUE 210.09/54.19 f225_out(x3) -> f214_out(x3) :|: TRUE 210.09/54.19 f214_in(x4) -> f225_in(x4) :|: TRUE 210.09/54.19 f228_in -> f228_out :|: TRUE 210.09/54.19 f262_in(T5) -> f264_in(T5) :|: TRUE 210.09/54.19 f264_out(x5) -> f262_out(x5) :|: TRUE 210.09/54.19 f225_in(x6) -> f240_in :|: TRUE 210.09/54.19 f225_in(s(s(T19))) -> f239_in(T19) :|: TRUE 210.09/54.19 f239_out(x7) -> f225_out(s(s(x7))) :|: TRUE 210.09/54.19 f240_out -> f225_out(x8) :|: TRUE 210.09/54.19 f89_out -> f77_out(T12) :|: TRUE 210.09/54.19 f77_in(x9) -> f89_in :|: TRUE 210.09/54.19 f77_in(0) -> f84_in :|: TRUE 210.09/54.19 f84_out -> f77_out(0) :|: TRUE 210.09/54.19 f202_out(s(x10)) -> f239_out(x10) :|: TRUE 210.09/54.19 f239_in(x11) -> f202_in(s(x11)) :|: TRUE 210.09/54.19 f24_in(x12) -> f262_in(x12) :|: TRUE 210.09/54.19 f262_out(x13) -> f263_in(x14) :|: TRUE 210.09/54.19 f263_out(x15) -> f24_out(x16) :|: TRUE 210.09/54.19 f271_in -> f271_out :|: TRUE 210.09/54.19 f254_out -> f245_out(x17) :|: TRUE 210.09/54.19 f252_out(T22) -> f245_out(s(s(T22))) :|: TRUE 210.09/54.19 f245_in(x18) -> f254_in :|: TRUE 210.09/54.19 f245_in(s(s(x19))) -> f252_in(x19) :|: TRUE 210.09/54.19 f58_out(T4) -> f57_out(T4) :|: TRUE 210.09/54.19 f57_in(x20) -> f58_in(x20) :|: TRUE 210.09/54.19 f75_in(x21) -> f76_in(x21) :|: TRUE 210.09/54.19 f76_out(x22) -> f75_out(x22) :|: TRUE 210.09/54.19 f243_out(x23) -> f203_out(x23) :|: TRUE 210.09/54.19 f203_in(x24) -> f243_in(x24) :|: TRUE 210.09/54.19 f66_in(x25) -> f202_in(x25) :|: TRUE 210.09/54.19 f203_out(x26) -> f66_out(x27) :|: TRUE 210.09/54.19 f202_out(x28) -> f203_in(x29) :|: TRUE 210.09/54.19 f23_out(x30) -> f24_in(x31) :|: TRUE 210.09/54.19 f24_out(x32) -> f7_out(x33) :|: TRUE 210.09/54.19 f7_in(x34) -> f23_in(x34) :|: TRUE 210.09/54.19 f423_in(T26) -> f202_in(s(T26)) :|: TRUE 210.09/54.19 f202_out(s(x35)) -> f423_out(x35) :|: TRUE 210.09/54.19 f65_in(T8) -> f68_in(T8) :|: TRUE 210.09/54.19 f68_out(x36) -> f65_out(x36) :|: TRUE 210.09/54.19 f78_in(x37) -> f133_in :|: TRUE 210.09/54.19 f78_in(s(x38)) -> f121_in(x38) :|: TRUE 210.09/54.19 f133_out -> f78_out(x39) :|: TRUE 210.09/54.19 f121_out(x40) -> f78_out(s(x40)) :|: TRUE 210.09/54.19 f246_in -> f246_out :|: TRUE 210.09/54.19 f4_out(T1) -> f1_out(T1) :|: TRUE 210.09/54.19 f1_in(x41) -> f4_in(x41) :|: TRUE 210.09/54.19 f243_in(x42) -> f244_in(x42) :|: TRUE 210.09/54.19 f245_out(x43) -> f243_out(x43) :|: TRUE 210.09/54.19 f244_out(x44) -> f243_out(x44) :|: TRUE 210.09/54.19 f243_in(x45) -> f245_in(x45) :|: TRUE 210.09/54.19 f62_out(x46) -> f58_out(s(x46)) :|: TRUE 210.09/54.19 f58_in(x47) -> f63_in :|: TRUE 210.09/54.19 f58_in(s(x48)) -> f62_in(x48) :|: TRUE 210.09/54.19 f63_out -> f58_out(x49) :|: TRUE 210.09/54.19 f23_in(x50) -> f57_in(x50) :|: TRUE 210.09/54.19 f57_out(x51) -> f23_out(x51) :|: TRUE 210.09/54.19 f70_in(x52) -> f71_in(x52) :|: TRUE 210.09/54.19 f71_out(x53) -> f70_out(x53) :|: TRUE 210.09/54.19 f210_in(x54) -> f213_in(x54) :|: TRUE 210.09/54.19 f214_out(x55) -> f210_out(x55) :|: TRUE 210.09/54.19 f210_in(x56) -> f214_in(x56) :|: TRUE 210.09/54.19 f213_out(x57) -> f210_out(x57) :|: TRUE 210.09/54.19 f84_in -> f84_out :|: TRUE 210.09/54.19 f223_in(x58) -> f229_in :|: TRUE 210.09/54.19 f228_out -> f223_out(s(0)) :|: TRUE 210.09/54.19 f223_in(s(0)) -> f228_in :|: TRUE 210.09/54.19 f229_out -> f223_out(x59) :|: TRUE 210.09/54.19 f213_in(0) -> f220_in :|: TRUE 210.09/54.19 f221_out -> f213_out(x60) :|: TRUE 210.09/54.19 f213_in(x61) -> f221_in :|: TRUE 210.09/54.19 f220_out -> f213_out(0) :|: TRUE 210.09/54.19 f423_out(x62) -> f424_in(x63) :|: TRUE 210.09/54.19 f421_in(x64) -> f423_in(x64) :|: TRUE 210.09/54.19 f424_out(x65) -> f421_out(x66) :|: TRUE 210.09/54.19 f68_in(x67) -> f70_in(x67) :|: TRUE 210.09/54.19 f70_out(x68) -> f68_out(x68) :|: TRUE 210.09/54.19 f1_out(T23) -> f263_out(T23) :|: TRUE 210.09/54.19 f263_in(x69) -> f1_in(x69) :|: TRUE 210.09/54.19 f421_out(x70) -> f267_out(s(x70)) :|: TRUE 210.09/54.19 f422_out -> f267_out(x71) :|: TRUE 210.09/54.19 f267_in(s(x72)) -> f421_in(x72) :|: TRUE 210.09/54.19 f267_in(x73) -> f422_in :|: TRUE 210.09/54.19 f264_in(x74) -> f267_in(x74) :|: TRUE 210.09/54.19 f265_out(x75) -> f264_out(x75) :|: TRUE 210.09/54.19 f267_out(x76) -> f264_out(x76) :|: TRUE 210.09/54.19 f264_in(x77) -> f265_in(x77) :|: TRUE 210.09/54.19 f252_in(x78) -> f62_in(x78) :|: TRUE 210.09/54.19 f62_out(x79) -> f252_out(x79) :|: TRUE 210.09/54.19 f76_in(x80) -> f77_in(x80) :|: TRUE 210.09/54.19 f77_out(x81) -> f76_out(x81) :|: TRUE 210.09/54.19 f76_in(x82) -> f78_in(x82) :|: TRUE 210.09/54.19 f78_out(x83) -> f76_out(x83) :|: TRUE 210.09/54.19 f265_in(0) -> f271_in :|: TRUE 210.09/54.19 f271_out -> f265_out(0) :|: TRUE 210.09/54.19 f277_out -> f265_out(x84) :|: TRUE 210.09/54.19 f265_in(x85) -> f277_in :|: TRUE 210.09/54.19 f62_in(x86) -> f65_in(x86) :|: TRUE 210.09/54.19 f65_out(x87) -> f66_in(x88) :|: TRUE 210.09/54.19 f66_out(x89) -> f62_out(x90) :|: TRUE 210.09/54.19 f220_in -> f220_out :|: TRUE 210.09/54.19 f74_in(x91) -> f75_in(x91) :|: TRUE 210.09/54.19 f75_out(x92) -> f74_out(x92) :|: TRUE 210.09/54.19 f8_out -> f4_out(x93) :|: TRUE 210.09/54.19 f7_out(x94) -> f4_out(s(x94)) :|: TRUE 210.09/54.19 f4_in(x95) -> f8_in :|: TRUE 210.09/54.19 f4_in(s(x96)) -> f7_in(x96) :|: TRUE 210.09/54.19 f71_in(x97) -> f74_in(x97) :|: TRUE 210.09/54.19 f74_out(x98) -> f71_out(x98) :|: TRUE 210.09/54.19 f210_out(x99) -> f202_out(x99) :|: TRUE 210.09/54.19 f202_in(x100) -> f210_in(x100) :|: TRUE 210.09/54.19 f424_in(T27) -> f262_in(T27) :|: TRUE 210.09/54.19 f262_out(x101) -> f424_out(x101) :|: TRUE 210.09/54.19 Start term: f1_in(T1) 210.14/54.22 EOF