9.32/3.33 MAYBE 9.42/3.33 proof of /export/starexec/sandbox/benchmark/theBenchmark.pl 9.42/3.33 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 9.42/3.33 9.42/3.33 9.42/3.33 Left Termination of the query pattern 9.42/3.33 9.42/3.33 slowsort(a,g) 9.42/3.33 9.42/3.33 w.r.t. the given Prolog program could not be shown: 9.42/3.33 9.42/3.33 (0) Prolog 9.42/3.33 (1) PrologToPiTRSProof [SOUND, 10 ms] 9.42/3.33 (2) PiTRS 9.42/3.33 (3) DependencyPairsProof [EQUIVALENT, 0 ms] 9.42/3.33 (4) PiDP 9.42/3.33 (5) DependencyGraphProof [EQUIVALENT, 0 ms] 9.42/3.33 (6) AND 9.42/3.33 (7) PiDP 9.42/3.33 (8) UsableRulesProof [EQUIVALENT, 1 ms] 9.42/3.33 (9) PiDP 9.42/3.33 (10) PiDPToQDPProof [EQUIVALENT, 0 ms] 9.42/3.33 (11) QDP 9.42/3.33 (12) QDPSizeChangeProof [EQUIVALENT, 0 ms] 9.42/3.33 (13) YES 9.42/3.33 (14) PiDP 9.42/3.33 (15) UsableRulesProof [EQUIVALENT, 0 ms] 9.42/3.33 (16) PiDP 9.42/3.33 (17) PiDPToQDPProof [EQUIVALENT, 0 ms] 9.42/3.33 (18) QDP 9.42/3.33 (19) MRRProof [EQUIVALENT, 17 ms] 9.42/3.33 (20) QDP 9.42/3.33 (21) DependencyGraphProof [EQUIVALENT, 0 ms] 9.42/3.33 (22) TRUE 9.42/3.33 (23) PiDP 9.42/3.33 (24) UsableRulesProof [EQUIVALENT, 0 ms] 9.42/3.33 (25) PiDP 9.42/3.33 (26) PiDPToQDPProof [SOUND, 0 ms] 9.42/3.33 (27) QDP 9.42/3.33 (28) NonTerminationLoopProof [COMPLETE, 0 ms] 9.42/3.33 (29) NO 9.42/3.33 (30) PiDP 9.42/3.33 (31) UsableRulesProof [EQUIVALENT, 0 ms] 9.42/3.33 (32) PiDP 9.42/3.33 (33) PiDPToQDPProof [SOUND, 0 ms] 9.42/3.33 (34) QDP 9.42/3.33 (35) QDPSizeChangeProof [EQUIVALENT, 0 ms] 9.42/3.33 (36) YES 9.42/3.33 (37) PrologToPiTRSProof [SOUND, 15 ms] 9.42/3.33 (38) PiTRS 9.42/3.33 (39) DependencyPairsProof [EQUIVALENT, 0 ms] 9.42/3.33 (40) PiDP 9.42/3.33 (41) DependencyGraphProof [EQUIVALENT, 0 ms] 9.42/3.33 (42) AND 9.42/3.33 (43) PiDP 9.42/3.33 (44) UsableRulesProof [EQUIVALENT, 0 ms] 9.42/3.33 (45) PiDP 9.42/3.33 (46) PiDPToQDPProof [EQUIVALENT, 8 ms] 9.42/3.33 (47) QDP 9.42/3.33 (48) QDPSizeChangeProof [EQUIVALENT, 0 ms] 9.42/3.33 (49) YES 9.42/3.33 (50) PiDP 9.42/3.33 (51) UsableRulesProof [EQUIVALENT, 0 ms] 9.42/3.33 (52) PiDP 9.42/3.33 (53) PiDPToQDPProof [SOUND, 0 ms] 9.42/3.33 (54) QDP 9.42/3.33 (55) UsableRulesReductionPairsProof [EQUIVALENT, 17 ms] 9.42/3.33 (56) QDP 9.42/3.33 (57) DependencyGraphProof [EQUIVALENT, 0 ms] 9.42/3.33 (58) TRUE 9.42/3.33 (59) PiDP 9.42/3.33 (60) UsableRulesProof [EQUIVALENT, 0 ms] 9.42/3.33 (61) PiDP 9.42/3.33 (62) PiDPToQDPProof [SOUND, 0 ms] 9.42/3.33 (63) QDP 9.42/3.33 (64) NonTerminationLoopProof [COMPLETE, 0 ms] 9.42/3.33 (65) NO 9.42/3.33 (66) PiDP 9.42/3.33 (67) UsableRulesProof [EQUIVALENT, 0 ms] 9.42/3.33 (68) PiDP 9.42/3.33 (69) PiDPToQDPProof [SOUND, 0 ms] 9.42/3.33 (70) QDP 9.42/3.33 (71) QDPSizeChangeProof [EQUIVALENT, 0 ms] 9.42/3.33 (72) YES 9.42/3.33 (73) PrologToIRSwTTransformerProof [SOUND, 63 ms] 9.42/3.33 (74) AND 9.42/3.33 (75) IRSwT 9.42/3.33 (76) IRSwTSimpleDependencyGraphProof [EQUIVALENT, 0 ms] 9.42/3.33 (77) TRUE 9.42/3.33 (78) IRSwT 9.42/3.33 (79) IRSwTSimpleDependencyGraphProof [EQUIVALENT, 0 ms] 9.42/3.33 (80) IRSwT 9.42/3.33 (81) IntTRSCompressionProof [EQUIVALENT, 43 ms] 9.42/3.33 (82) IRSwT 9.42/3.33 (83) IRSFormatTransformerProof [EQUIVALENT, 0 ms] 9.42/3.33 (84) IRSwT 9.42/3.33 (85) IRSwTTerminationDigraphProof [EQUIVALENT, 6 ms] 9.42/3.33 (86) IRSwT 9.42/3.33 (87) FilterProof [EQUIVALENT, 0 ms] 9.42/3.33 (88) IntTRS 9.42/3.33 (89) IntTRSPeriodicNontermProof [COMPLETE, 1 ms] 9.42/3.33 (90) NO 9.42/3.33 (91) IRSwT 9.42/3.33 (92) IRSwTSimpleDependencyGraphProof [EQUIVALENT, 0 ms] 9.42/3.33 (93) TRUE 9.42/3.33 (94) IRSwT 9.42/3.33 (95) IRSwTSimpleDependencyGraphProof [EQUIVALENT, 0 ms] 9.42/3.33 (96) IRSwT 9.42/3.33 (97) IntTRSCompressionProof [EQUIVALENT, 14 ms] 9.42/3.33 (98) IRSwT 9.42/3.33 (99) IRSFormatTransformerProof [EQUIVALENT, 0 ms] 9.42/3.33 (100) IRSwT 9.42/3.33 (101) PrologToTRSTransformerProof [SOUND, 37 ms] 9.42/3.33 (102) QTRS 9.42/3.33 (103) DependencyPairsProof [EQUIVALENT, 0 ms] 9.42/3.33 (104) QDP 9.42/3.33 (105) DependencyGraphProof [EQUIVALENT, 1 ms] 9.42/3.33 (106) AND 9.42/3.33 (107) QDP 9.42/3.33 (108) MNOCProof [EQUIVALENT, 2 ms] 9.42/3.33 (109) QDP 9.42/3.33 (110) UsableRulesProof [EQUIVALENT, 0 ms] 9.42/3.33 (111) QDP 9.42/3.33 (112) QReductionProof [EQUIVALENT, 0 ms] 9.42/3.33 (113) QDP 9.42/3.33 (114) QDPSizeChangeProof [EQUIVALENT, 0 ms] 9.42/3.33 (115) YES 9.42/3.33 (116) QDP 9.42/3.33 (117) MNOCProof [EQUIVALENT, 0 ms] 9.42/3.33 (118) QDP 9.42/3.33 (119) UsableRulesProof [EQUIVALENT, 0 ms] 9.42/3.33 (120) QDP 9.42/3.33 (121) QReductionProof [EQUIVALENT, 0 ms] 9.42/3.33 (122) QDP 9.42/3.33 (123) QDPOrderProof [EQUIVALENT, 21 ms] 9.42/3.33 (124) QDP 9.42/3.33 (125) DependencyGraphProof [EQUIVALENT, 0 ms] 9.42/3.33 (126) TRUE 9.42/3.33 (127) QDP 9.42/3.33 (128) MNOCProof [EQUIVALENT, 0 ms] 9.42/3.33 (129) QDP 9.42/3.33 (130) UsableRulesProof [EQUIVALENT, 0 ms] 9.42/3.33 (131) QDP 9.42/3.33 (132) QReductionProof [EQUIVALENT, 0 ms] 9.42/3.33 (133) QDP 9.42/3.33 (134) NonTerminationLoopProof [COMPLETE, 0 ms] 9.42/3.33 (135) NO 9.42/3.33 (136) QDP 9.42/3.33 (137) MNOCProof [EQUIVALENT, 0 ms] 9.42/3.33 (138) QDP 9.42/3.33 (139) UsableRulesProof [EQUIVALENT, 0 ms] 9.42/3.33 (140) QDP 9.42/3.33 (141) QReductionProof [EQUIVALENT, 0 ms] 9.42/3.33 (142) QDP 9.42/3.33 (143) QDPSizeChangeProof [EQUIVALENT, 0 ms] 9.42/3.33 (144) YES 9.42/3.33 (145) PrologToDTProblemTransformerProof [SOUND, 43 ms] 9.42/3.33 (146) TRIPLES 9.42/3.33 (147) TriplesToPiDPProof [SOUND, 7 ms] 9.42/3.33 (148) PiDP 9.42/3.33 (149) DependencyGraphProof [EQUIVALENT, 0 ms] 9.42/3.33 (150) AND 9.42/3.33 (151) PiDP 9.42/3.33 (152) UsableRulesProof [EQUIVALENT, 0 ms] 9.42/3.33 (153) PiDP 9.42/3.33 (154) PiDPToQDPProof [EQUIVALENT, 0 ms] 9.42/3.33 (155) QDP 9.42/3.33 (156) QDPSizeChangeProof [EQUIVALENT, 0 ms] 9.42/3.33 (157) YES 9.42/3.33 (158) PiDP 9.42/3.33 (159) UsableRulesProof [EQUIVALENT, 0 ms] 9.42/3.33 (160) PiDP 9.42/3.33 (161) PiDPToQDPProof [SOUND, 0 ms] 9.42/3.33 (162) QDP 9.42/3.33 (163) NonTerminationLoopProof [COMPLETE, 0 ms] 9.42/3.33 (164) NO 9.42/3.33 (165) PiDP 9.42/3.33 (166) UsableRulesProof [EQUIVALENT, 0 ms] 9.42/3.33 (167) PiDP 9.42/3.33 (168) PiDPToQDPProof [SOUND, 0 ms] 9.42/3.33 (169) QDP 9.42/3.33 (170) QDPSizeChangeProof [EQUIVALENT, 0 ms] 9.42/3.33 (171) YES 9.42/3.33 9.42/3.33 9.42/3.33 ---------------------------------------- 9.42/3.33 9.42/3.33 (0) 9.42/3.33 Obligation: 9.42/3.33 Clauses: 9.42/3.33 9.42/3.33 slowsort(X, Y) :- ','(perm(X, Y), sorted(Y)). 9.42/3.33 sorted([]). 9.42/3.33 sorted(.(X, [])). 9.42/3.33 sorted(.(X, .(Y, Z))) :- ','(le(X, Y), sorted(.(Y, Z))). 9.42/3.33 perm([], []). 9.42/3.33 perm(.(X, .(Y, [])), .(U, .(V, []))) :- ','(delete(U, .(X, Y), Z), perm(Z, V)). 9.42/3.33 delete(X, .(X, Y), Y). 9.42/3.33 delete(X, .(Y, Z), W) :- delete(X, Z, W). 9.42/3.33 le(s(X), s(Y)) :- le(X, Y). 9.42/3.33 le(0, s(X)). 9.42/3.33 le(0, 0). 9.42/3.33 9.42/3.33 9.42/3.33 Query: slowsort(a,g) 9.42/3.33 ---------------------------------------- 9.42/3.33 9.42/3.33 (1) PrologToPiTRSProof (SOUND) 9.42/3.33 We use the technique of [TOCL09]. With regard to the inferred argument filtering the predicates were used in the following modes: 9.42/3.33 9.42/3.33 slowsort_in_2: (f,b) 9.42/3.33 9.42/3.33 perm_in_2: (f,b) 9.42/3.33 9.42/3.33 delete_in_3: (b,f,f) 9.42/3.33 9.42/3.33 sorted_in_1: (b) 9.42/3.33 9.42/3.33 le_in_2: (b,b) 9.42/3.33 9.42/3.33 Transforming Prolog into the following Term Rewriting System: 9.42/3.33 9.42/3.33 Pi-finite rewrite system: 9.42/3.33 The TRS R consists of the following rules: 9.42/3.33 9.42/3.33 slowsort_in_ag(X, Y) -> U1_ag(X, Y, perm_in_ag(X, Y)) 9.42/3.33 perm_in_ag([], []) -> perm_out_ag([], []) 9.42/3.33 perm_in_ag(.(X, .(Y, [])), .(U, .(V, []))) -> U5_ag(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.42/3.33 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.42/3.33 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.42/3.33 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.42/3.33 U5_ag(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_ag(X, Y, U, V, perm_in_ag(Z, V)) 9.42/3.33 U6_ag(X, Y, U, V, perm_out_ag(Z, V)) -> perm_out_ag(.(X, .(Y, [])), .(U, .(V, []))) 9.42/3.33 U1_ag(X, Y, perm_out_ag(X, Y)) -> U2_ag(X, Y, sorted_in_g(Y)) 9.42/3.33 sorted_in_g([]) -> sorted_out_g([]) 9.42/3.33 sorted_in_g(.(X, [])) -> sorted_out_g(.(X, [])) 9.42/3.33 sorted_in_g(.(X, .(Y, Z))) -> U3_g(X, Y, Z, le_in_gg(X, Y)) 9.42/3.33 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.42/3.33 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.42/3.33 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.42/3.33 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.42/3.33 U3_g(X, Y, Z, le_out_gg(X, Y)) -> U4_g(X, Y, Z, sorted_in_g(.(Y, Z))) 9.42/3.33 U4_g(X, Y, Z, sorted_out_g(.(Y, Z))) -> sorted_out_g(.(X, .(Y, Z))) 9.42/3.33 U2_ag(X, Y, sorted_out_g(Y)) -> slowsort_out_ag(X, Y) 9.50/3.35 9.50/3.35 The argument filtering Pi contains the following mapping: 9.50/3.35 slowsort_in_ag(x1, x2) = slowsort_in_ag(x2) 9.50/3.35 9.50/3.35 U1_ag(x1, x2, x3) = U1_ag(x2, x3) 9.50/3.35 9.50/3.35 perm_in_ag(x1, x2) = perm_in_ag(x2) 9.50/3.35 9.50/3.35 [] = [] 9.50/3.35 9.50/3.35 perm_out_ag(x1, x2) = perm_out_ag(x2) 9.50/3.35 9.50/3.35 .(x1, x2) = .(x1, x2) 9.50/3.35 9.50/3.35 U5_ag(x1, x2, x3, x4, x5) = U5_ag(x3, x4, x5) 9.50/3.35 9.50/3.35 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.35 9.50/3.35 delete_out_gaa(x1, x2, x3) = delete_out_gaa(x1) 9.50/3.35 9.50/3.35 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x1, x5) 9.50/3.35 9.50/3.35 U6_ag(x1, x2, x3, x4, x5) = U6_ag(x3, x4, x5) 9.50/3.35 9.50/3.35 U2_ag(x1, x2, x3) = U2_ag(x2, x3) 9.50/3.35 9.50/3.35 sorted_in_g(x1) = sorted_in_g(x1) 9.50/3.35 9.50/3.35 sorted_out_g(x1) = sorted_out_g(x1) 9.50/3.35 9.50/3.35 U3_g(x1, x2, x3, x4) = U3_g(x1, x2, x3, x4) 9.50/3.35 9.50/3.35 le_in_gg(x1, x2) = le_in_gg(x1, x2) 9.50/3.35 9.50/3.35 s(x1) = s(x1) 9.50/3.35 9.50/3.35 U8_gg(x1, x2, x3) = U8_gg(x1, x2, x3) 9.50/3.35 9.50/3.35 0 = 0 9.50/3.35 9.50/3.35 le_out_gg(x1, x2) = le_out_gg(x1, x2) 9.50/3.35 9.50/3.35 U4_g(x1, x2, x3, x4) = U4_g(x1, x2, x3, x4) 9.50/3.35 9.50/3.35 slowsort_out_ag(x1, x2) = slowsort_out_ag(x2) 9.50/3.35 9.50/3.35 9.50/3.35 9.50/3.35 9.50/3.35 9.50/3.35 Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog 9.50/3.35 9.50/3.35 9.50/3.35 9.50/3.35 ---------------------------------------- 9.50/3.35 9.50/3.35 (2) 9.50/3.35 Obligation: 9.50/3.35 Pi-finite rewrite system: 9.50/3.35 The TRS R consists of the following rules: 9.50/3.35 9.50/3.35 slowsort_in_ag(X, Y) -> U1_ag(X, Y, perm_in_ag(X, Y)) 9.50/3.35 perm_in_ag([], []) -> perm_out_ag([], []) 9.50/3.35 perm_in_ag(.(X, .(Y, [])), .(U, .(V, []))) -> U5_ag(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.35 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.50/3.35 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.35 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.50/3.35 U5_ag(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_ag(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.35 U6_ag(X, Y, U, V, perm_out_ag(Z, V)) -> perm_out_ag(.(X, .(Y, [])), .(U, .(V, []))) 9.50/3.35 U1_ag(X, Y, perm_out_ag(X, Y)) -> U2_ag(X, Y, sorted_in_g(Y)) 9.50/3.35 sorted_in_g([]) -> sorted_out_g([]) 9.50/3.35 sorted_in_g(.(X, [])) -> sorted_out_g(.(X, [])) 9.50/3.35 sorted_in_g(.(X, .(Y, Z))) -> U3_g(X, Y, Z, le_in_gg(X, Y)) 9.50/3.35 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.35 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.35 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.35 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.35 U3_g(X, Y, Z, le_out_gg(X, Y)) -> U4_g(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.35 U4_g(X, Y, Z, sorted_out_g(.(Y, Z))) -> sorted_out_g(.(X, .(Y, Z))) 9.50/3.35 U2_ag(X, Y, sorted_out_g(Y)) -> slowsort_out_ag(X, Y) 9.50/3.35 9.50/3.35 The argument filtering Pi contains the following mapping: 9.50/3.35 slowsort_in_ag(x1, x2) = slowsort_in_ag(x2) 9.50/3.35 9.50/3.35 U1_ag(x1, x2, x3) = U1_ag(x2, x3) 9.50/3.35 9.50/3.35 perm_in_ag(x1, x2) = perm_in_ag(x2) 9.50/3.35 9.50/3.35 [] = [] 9.50/3.35 9.50/3.35 perm_out_ag(x1, x2) = perm_out_ag(x2) 9.50/3.35 9.50/3.35 .(x1, x2) = .(x1, x2) 9.50/3.35 9.50/3.35 U5_ag(x1, x2, x3, x4, x5) = U5_ag(x3, x4, x5) 9.50/3.35 9.50/3.35 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.35 9.50/3.35 delete_out_gaa(x1, x2, x3) = delete_out_gaa(x1) 9.50/3.35 9.50/3.35 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x1, x5) 9.50/3.35 9.50/3.35 U6_ag(x1, x2, x3, x4, x5) = U6_ag(x3, x4, x5) 9.50/3.35 9.50/3.35 U2_ag(x1, x2, x3) = U2_ag(x2, x3) 9.50/3.35 9.50/3.35 sorted_in_g(x1) = sorted_in_g(x1) 9.50/3.35 9.50/3.35 sorted_out_g(x1) = sorted_out_g(x1) 9.50/3.35 9.50/3.35 U3_g(x1, x2, x3, x4) = U3_g(x1, x2, x3, x4) 9.50/3.35 9.50/3.35 le_in_gg(x1, x2) = le_in_gg(x1, x2) 9.50/3.35 9.50/3.35 s(x1) = s(x1) 9.50/3.35 9.50/3.35 U8_gg(x1, x2, x3) = U8_gg(x1, x2, x3) 9.50/3.36 9.50/3.36 0 = 0 9.50/3.36 9.50/3.36 le_out_gg(x1, x2) = le_out_gg(x1, x2) 9.50/3.36 9.50/3.36 U4_g(x1, x2, x3, x4) = U4_g(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 slowsort_out_ag(x1, x2) = slowsort_out_ag(x2) 9.50/3.36 9.50/3.36 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (3) DependencyPairsProof (EQUIVALENT) 9.50/3.36 Using Dependency Pairs [AG00,LOPSTR] we result in the following initial DP problem: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 SLOWSORT_IN_AG(X, Y) -> U1_AG(X, Y, perm_in_ag(X, Y)) 9.50/3.36 SLOWSORT_IN_AG(X, Y) -> PERM_IN_AG(X, Y) 9.50/3.36 PERM_IN_AG(.(X, .(Y, [])), .(U, .(V, []))) -> U5_AG(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 PERM_IN_AG(.(X, .(Y, [])), .(U, .(V, []))) -> DELETE_IN_GAA(U, .(X, Y), Z) 9.50/3.36 DELETE_IN_GAA(X, .(Y, Z), W) -> U7_GAA(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 DELETE_IN_GAA(X, .(Y, Z), W) -> DELETE_IN_GAA(X, Z, W) 9.50/3.36 U5_AG(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_AG(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U5_AG(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> PERM_IN_AG(Z, V) 9.50/3.36 U1_AG(X, Y, perm_out_ag(X, Y)) -> U2_AG(X, Y, sorted_in_g(Y)) 9.50/3.36 U1_AG(X, Y, perm_out_ag(X, Y)) -> SORTED_IN_G(Y) 9.50/3.36 SORTED_IN_G(.(X, .(Y, Z))) -> U3_G(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 SORTED_IN_G(.(X, .(Y, Z))) -> LE_IN_GG(X, Y) 9.50/3.36 LE_IN_GG(s(X), s(Y)) -> U8_GG(X, Y, le_in_gg(X, Y)) 9.50/3.36 LE_IN_GG(s(X), s(Y)) -> LE_IN_GG(X, Y) 9.50/3.36 U3_G(X, Y, Z, le_out_gg(X, Y)) -> U4_G(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U3_G(X, Y, Z, le_out_gg(X, Y)) -> SORTED_IN_G(.(Y, Z)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 slowsort_in_ag(X, Y) -> U1_ag(X, Y, perm_in_ag(X, Y)) 9.50/3.36 perm_in_ag([], []) -> perm_out_ag([], []) 9.50/3.36 perm_in_ag(.(X, .(Y, [])), .(U, .(V, []))) -> U5_ag(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.50/3.36 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.50/3.36 U5_ag(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_ag(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U6_ag(X, Y, U, V, perm_out_ag(Z, V)) -> perm_out_ag(.(X, .(Y, [])), .(U, .(V, []))) 9.50/3.36 U1_ag(X, Y, perm_out_ag(X, Y)) -> U2_ag(X, Y, sorted_in_g(Y)) 9.50/3.36 sorted_in_g([]) -> sorted_out_g([]) 9.50/3.36 sorted_in_g(.(X, [])) -> sorted_out_g(.(X, [])) 9.50/3.36 sorted_in_g(.(X, .(Y, Z))) -> U3_g(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 U3_g(X, Y, Z, le_out_gg(X, Y)) -> U4_g(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U4_g(X, Y, Z, sorted_out_g(.(Y, Z))) -> sorted_out_g(.(X, .(Y, Z))) 9.50/3.36 U2_ag(X, Y, sorted_out_g(Y)) -> slowsort_out_ag(X, Y) 9.50/3.36 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 slowsort_in_ag(x1, x2) = slowsort_in_ag(x2) 9.50/3.36 9.50/3.36 U1_ag(x1, x2, x3) = U1_ag(x2, x3) 9.50/3.36 9.50/3.36 perm_in_ag(x1, x2) = perm_in_ag(x2) 9.50/3.36 9.50/3.36 [] = [] 9.50/3.36 9.50/3.36 perm_out_ag(x1, x2) = perm_out_ag(x2) 9.50/3.36 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 U5_ag(x1, x2, x3, x4, x5) = U5_ag(x3, x4, x5) 9.50/3.36 9.50/3.36 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.36 9.50/3.36 delete_out_gaa(x1, x2, x3) = delete_out_gaa(x1) 9.50/3.36 9.50/3.36 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x1, x5) 9.50/3.36 9.50/3.36 U6_ag(x1, x2, x3, x4, x5) = U6_ag(x3, x4, x5) 9.50/3.36 9.50/3.36 U2_ag(x1, x2, x3) = U2_ag(x2, x3) 9.50/3.36 9.50/3.36 sorted_in_g(x1) = sorted_in_g(x1) 9.50/3.36 9.50/3.36 sorted_out_g(x1) = sorted_out_g(x1) 9.50/3.36 9.50/3.36 U3_g(x1, x2, x3, x4) = U3_g(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 le_in_gg(x1, x2) = le_in_gg(x1, x2) 9.50/3.36 9.50/3.36 s(x1) = s(x1) 9.50/3.36 9.50/3.36 U8_gg(x1, x2, x3) = U8_gg(x1, x2, x3) 9.50/3.36 9.50/3.36 0 = 0 9.50/3.36 9.50/3.36 le_out_gg(x1, x2) = le_out_gg(x1, x2) 9.50/3.36 9.50/3.36 U4_g(x1, x2, x3, x4) = U4_g(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 slowsort_out_ag(x1, x2) = slowsort_out_ag(x2) 9.50/3.36 9.50/3.36 SLOWSORT_IN_AG(x1, x2) = SLOWSORT_IN_AG(x2) 9.50/3.36 9.50/3.36 U1_AG(x1, x2, x3) = U1_AG(x2, x3) 9.50/3.36 9.50/3.36 PERM_IN_AG(x1, x2) = PERM_IN_AG(x2) 9.50/3.36 9.50/3.36 U5_AG(x1, x2, x3, x4, x5) = U5_AG(x3, x4, x5) 9.50/3.36 9.50/3.36 DELETE_IN_GAA(x1, x2, x3) = DELETE_IN_GAA(x1) 9.50/3.36 9.50/3.36 U7_GAA(x1, x2, x3, x4, x5) = U7_GAA(x1, x5) 9.50/3.36 9.50/3.36 U6_AG(x1, x2, x3, x4, x5) = U6_AG(x3, x4, x5) 9.50/3.36 9.50/3.36 U2_AG(x1, x2, x3) = U2_AG(x2, x3) 9.50/3.36 9.50/3.36 SORTED_IN_G(x1) = SORTED_IN_G(x1) 9.50/3.36 9.50/3.36 U3_G(x1, x2, x3, x4) = U3_G(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 LE_IN_GG(x1, x2) = LE_IN_GG(x1, x2) 9.50/3.36 9.50/3.36 U8_GG(x1, x2, x3) = U8_GG(x1, x2, x3) 9.50/3.36 9.50/3.36 U4_G(x1, x2, x3, x4) = U4_G(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (4) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 SLOWSORT_IN_AG(X, Y) -> U1_AG(X, Y, perm_in_ag(X, Y)) 9.50/3.36 SLOWSORT_IN_AG(X, Y) -> PERM_IN_AG(X, Y) 9.50/3.36 PERM_IN_AG(.(X, .(Y, [])), .(U, .(V, []))) -> U5_AG(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 PERM_IN_AG(.(X, .(Y, [])), .(U, .(V, []))) -> DELETE_IN_GAA(U, .(X, Y), Z) 9.50/3.36 DELETE_IN_GAA(X, .(Y, Z), W) -> U7_GAA(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 DELETE_IN_GAA(X, .(Y, Z), W) -> DELETE_IN_GAA(X, Z, W) 9.50/3.36 U5_AG(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_AG(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U5_AG(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> PERM_IN_AG(Z, V) 9.50/3.36 U1_AG(X, Y, perm_out_ag(X, Y)) -> U2_AG(X, Y, sorted_in_g(Y)) 9.50/3.36 U1_AG(X, Y, perm_out_ag(X, Y)) -> SORTED_IN_G(Y) 9.50/3.36 SORTED_IN_G(.(X, .(Y, Z))) -> U3_G(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 SORTED_IN_G(.(X, .(Y, Z))) -> LE_IN_GG(X, Y) 9.50/3.36 LE_IN_GG(s(X), s(Y)) -> U8_GG(X, Y, le_in_gg(X, Y)) 9.50/3.36 LE_IN_GG(s(X), s(Y)) -> LE_IN_GG(X, Y) 9.50/3.36 U3_G(X, Y, Z, le_out_gg(X, Y)) -> U4_G(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U3_G(X, Y, Z, le_out_gg(X, Y)) -> SORTED_IN_G(.(Y, Z)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 slowsort_in_ag(X, Y) -> U1_ag(X, Y, perm_in_ag(X, Y)) 9.50/3.36 perm_in_ag([], []) -> perm_out_ag([], []) 9.50/3.36 perm_in_ag(.(X, .(Y, [])), .(U, .(V, []))) -> U5_ag(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.50/3.36 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.50/3.36 U5_ag(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_ag(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U6_ag(X, Y, U, V, perm_out_ag(Z, V)) -> perm_out_ag(.(X, .(Y, [])), .(U, .(V, []))) 9.50/3.36 U1_ag(X, Y, perm_out_ag(X, Y)) -> U2_ag(X, Y, sorted_in_g(Y)) 9.50/3.36 sorted_in_g([]) -> sorted_out_g([]) 9.50/3.36 sorted_in_g(.(X, [])) -> sorted_out_g(.(X, [])) 9.50/3.36 sorted_in_g(.(X, .(Y, Z))) -> U3_g(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 U3_g(X, Y, Z, le_out_gg(X, Y)) -> U4_g(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U4_g(X, Y, Z, sorted_out_g(.(Y, Z))) -> sorted_out_g(.(X, .(Y, Z))) 9.50/3.36 U2_ag(X, Y, sorted_out_g(Y)) -> slowsort_out_ag(X, Y) 9.50/3.36 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 slowsort_in_ag(x1, x2) = slowsort_in_ag(x2) 9.50/3.36 9.50/3.36 U1_ag(x1, x2, x3) = U1_ag(x2, x3) 9.50/3.36 9.50/3.36 perm_in_ag(x1, x2) = perm_in_ag(x2) 9.50/3.36 9.50/3.36 [] = [] 9.50/3.36 9.50/3.36 perm_out_ag(x1, x2) = perm_out_ag(x2) 9.50/3.36 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 U5_ag(x1, x2, x3, x4, x5) = U5_ag(x3, x4, x5) 9.50/3.36 9.50/3.36 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.36 9.50/3.36 delete_out_gaa(x1, x2, x3) = delete_out_gaa(x1) 9.50/3.36 9.50/3.36 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x1, x5) 9.50/3.36 9.50/3.36 U6_ag(x1, x2, x3, x4, x5) = U6_ag(x3, x4, x5) 9.50/3.36 9.50/3.36 U2_ag(x1, x2, x3) = U2_ag(x2, x3) 9.50/3.36 9.50/3.36 sorted_in_g(x1) = sorted_in_g(x1) 9.50/3.36 9.50/3.36 sorted_out_g(x1) = sorted_out_g(x1) 9.50/3.36 9.50/3.36 U3_g(x1, x2, x3, x4) = U3_g(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 le_in_gg(x1, x2) = le_in_gg(x1, x2) 9.50/3.36 9.50/3.36 s(x1) = s(x1) 9.50/3.36 9.50/3.36 U8_gg(x1, x2, x3) = U8_gg(x1, x2, x3) 9.50/3.36 9.50/3.36 0 = 0 9.50/3.36 9.50/3.36 le_out_gg(x1, x2) = le_out_gg(x1, x2) 9.50/3.36 9.50/3.36 U4_g(x1, x2, x3, x4) = U4_g(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 slowsort_out_ag(x1, x2) = slowsort_out_ag(x2) 9.50/3.36 9.50/3.36 SLOWSORT_IN_AG(x1, x2) = SLOWSORT_IN_AG(x2) 9.50/3.36 9.50/3.36 U1_AG(x1, x2, x3) = U1_AG(x2, x3) 9.50/3.36 9.50/3.36 PERM_IN_AG(x1, x2) = PERM_IN_AG(x2) 9.50/3.36 9.50/3.36 U5_AG(x1, x2, x3, x4, x5) = U5_AG(x3, x4, x5) 9.50/3.36 9.50/3.36 DELETE_IN_GAA(x1, x2, x3) = DELETE_IN_GAA(x1) 9.50/3.36 9.50/3.36 U7_GAA(x1, x2, x3, x4, x5) = U7_GAA(x1, x5) 9.50/3.36 9.50/3.36 U6_AG(x1, x2, x3, x4, x5) = U6_AG(x3, x4, x5) 9.50/3.36 9.50/3.36 U2_AG(x1, x2, x3) = U2_AG(x2, x3) 9.50/3.36 9.50/3.36 SORTED_IN_G(x1) = SORTED_IN_G(x1) 9.50/3.36 9.50/3.36 U3_G(x1, x2, x3, x4) = U3_G(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 LE_IN_GG(x1, x2) = LE_IN_GG(x1, x2) 9.50/3.36 9.50/3.36 U8_GG(x1, x2, x3) = U8_GG(x1, x2, x3) 9.50/3.36 9.50/3.36 U4_G(x1, x2, x3, x4) = U4_G(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (5) DependencyGraphProof (EQUIVALENT) 9.50/3.36 The approximation of the Dependency Graph [LOPSTR] contains 4 SCCs with 10 less nodes. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (6) 9.50/3.36 Complex Obligation (AND) 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (7) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 LE_IN_GG(s(X), s(Y)) -> LE_IN_GG(X, Y) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 slowsort_in_ag(X, Y) -> U1_ag(X, Y, perm_in_ag(X, Y)) 9.50/3.36 perm_in_ag([], []) -> perm_out_ag([], []) 9.50/3.36 perm_in_ag(.(X, .(Y, [])), .(U, .(V, []))) -> U5_ag(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.50/3.36 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.50/3.36 U5_ag(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_ag(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U6_ag(X, Y, U, V, perm_out_ag(Z, V)) -> perm_out_ag(.(X, .(Y, [])), .(U, .(V, []))) 9.50/3.36 U1_ag(X, Y, perm_out_ag(X, Y)) -> U2_ag(X, Y, sorted_in_g(Y)) 9.50/3.36 sorted_in_g([]) -> sorted_out_g([]) 9.50/3.36 sorted_in_g(.(X, [])) -> sorted_out_g(.(X, [])) 9.50/3.36 sorted_in_g(.(X, .(Y, Z))) -> U3_g(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 U3_g(X, Y, Z, le_out_gg(X, Y)) -> U4_g(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U4_g(X, Y, Z, sorted_out_g(.(Y, Z))) -> sorted_out_g(.(X, .(Y, Z))) 9.50/3.36 U2_ag(X, Y, sorted_out_g(Y)) -> slowsort_out_ag(X, Y) 9.50/3.36 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 slowsort_in_ag(x1, x2) = slowsort_in_ag(x2) 9.50/3.36 9.50/3.36 U1_ag(x1, x2, x3) = U1_ag(x2, x3) 9.50/3.36 9.50/3.36 perm_in_ag(x1, x2) = perm_in_ag(x2) 9.50/3.36 9.50/3.36 [] = [] 9.50/3.36 9.50/3.36 perm_out_ag(x1, x2) = perm_out_ag(x2) 9.50/3.36 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 U5_ag(x1, x2, x3, x4, x5) = U5_ag(x3, x4, x5) 9.50/3.36 9.50/3.36 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.36 9.50/3.36 delete_out_gaa(x1, x2, x3) = delete_out_gaa(x1) 9.50/3.36 9.50/3.36 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x1, x5) 9.50/3.36 9.50/3.36 U6_ag(x1, x2, x3, x4, x5) = U6_ag(x3, x4, x5) 9.50/3.36 9.50/3.36 U2_ag(x1, x2, x3) = U2_ag(x2, x3) 9.50/3.36 9.50/3.36 sorted_in_g(x1) = sorted_in_g(x1) 9.50/3.36 9.50/3.36 sorted_out_g(x1) = sorted_out_g(x1) 9.50/3.36 9.50/3.36 U3_g(x1, x2, x3, x4) = U3_g(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 le_in_gg(x1, x2) = le_in_gg(x1, x2) 9.50/3.36 9.50/3.36 s(x1) = s(x1) 9.50/3.36 9.50/3.36 U8_gg(x1, x2, x3) = U8_gg(x1, x2, x3) 9.50/3.36 9.50/3.36 0 = 0 9.50/3.36 9.50/3.36 le_out_gg(x1, x2) = le_out_gg(x1, x2) 9.50/3.36 9.50/3.36 U4_g(x1, x2, x3, x4) = U4_g(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 slowsort_out_ag(x1, x2) = slowsort_out_ag(x2) 9.50/3.36 9.50/3.36 LE_IN_GG(x1, x2) = LE_IN_GG(x1, x2) 9.50/3.36 9.50/3.36 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (8) UsableRulesProof (EQUIVALENT) 9.50/3.36 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (9) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 LE_IN_GG(s(X), s(Y)) -> LE_IN_GG(X, Y) 9.50/3.36 9.50/3.36 R is empty. 9.50/3.36 Pi is empty. 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (10) PiDPToQDPProof (EQUIVALENT) 9.50/3.36 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (11) 9.50/3.36 Obligation: 9.50/3.36 Q DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 LE_IN_GG(s(X), s(Y)) -> LE_IN_GG(X, Y) 9.50/3.36 9.50/3.36 R is empty. 9.50/3.36 Q is empty. 9.50/3.36 We have to consider all (P,Q,R)-chains. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (12) QDPSizeChangeProof (EQUIVALENT) 9.50/3.36 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. 9.50/3.36 9.50/3.36 From the DPs we obtained the following set of size-change graphs: 9.50/3.36 *LE_IN_GG(s(X), s(Y)) -> LE_IN_GG(X, Y) 9.50/3.36 The graph contains the following edges 1 > 1, 2 > 2 9.50/3.36 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (13) 9.50/3.36 YES 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (14) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 U3_G(X, Y, Z, le_out_gg(X, Y)) -> SORTED_IN_G(.(Y, Z)) 9.50/3.36 SORTED_IN_G(.(X, .(Y, Z))) -> U3_G(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 slowsort_in_ag(X, Y) -> U1_ag(X, Y, perm_in_ag(X, Y)) 9.50/3.36 perm_in_ag([], []) -> perm_out_ag([], []) 9.50/3.36 perm_in_ag(.(X, .(Y, [])), .(U, .(V, []))) -> U5_ag(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.50/3.36 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.50/3.36 U5_ag(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_ag(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U6_ag(X, Y, U, V, perm_out_ag(Z, V)) -> perm_out_ag(.(X, .(Y, [])), .(U, .(V, []))) 9.50/3.36 U1_ag(X, Y, perm_out_ag(X, Y)) -> U2_ag(X, Y, sorted_in_g(Y)) 9.50/3.36 sorted_in_g([]) -> sorted_out_g([]) 9.50/3.36 sorted_in_g(.(X, [])) -> sorted_out_g(.(X, [])) 9.50/3.36 sorted_in_g(.(X, .(Y, Z))) -> U3_g(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 U3_g(X, Y, Z, le_out_gg(X, Y)) -> U4_g(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U4_g(X, Y, Z, sorted_out_g(.(Y, Z))) -> sorted_out_g(.(X, .(Y, Z))) 9.50/3.36 U2_ag(X, Y, sorted_out_g(Y)) -> slowsort_out_ag(X, Y) 9.50/3.36 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 slowsort_in_ag(x1, x2) = slowsort_in_ag(x2) 9.50/3.36 9.50/3.36 U1_ag(x1, x2, x3) = U1_ag(x2, x3) 9.50/3.36 9.50/3.36 perm_in_ag(x1, x2) = perm_in_ag(x2) 9.50/3.36 9.50/3.36 [] = [] 9.50/3.36 9.50/3.36 perm_out_ag(x1, x2) = perm_out_ag(x2) 9.50/3.36 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 U5_ag(x1, x2, x3, x4, x5) = U5_ag(x3, x4, x5) 9.50/3.36 9.50/3.36 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.36 9.50/3.36 delete_out_gaa(x1, x2, x3) = delete_out_gaa(x1) 9.50/3.36 9.50/3.36 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x1, x5) 9.50/3.36 9.50/3.36 U6_ag(x1, x2, x3, x4, x5) = U6_ag(x3, x4, x5) 9.50/3.36 9.50/3.36 U2_ag(x1, x2, x3) = U2_ag(x2, x3) 9.50/3.36 9.50/3.36 sorted_in_g(x1) = sorted_in_g(x1) 9.50/3.36 9.50/3.36 sorted_out_g(x1) = sorted_out_g(x1) 9.50/3.36 9.50/3.36 U3_g(x1, x2, x3, x4) = U3_g(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 le_in_gg(x1, x2) = le_in_gg(x1, x2) 9.50/3.36 9.50/3.36 s(x1) = s(x1) 9.50/3.36 9.50/3.36 U8_gg(x1, x2, x3) = U8_gg(x1, x2, x3) 9.50/3.36 9.50/3.36 0 = 0 9.50/3.36 9.50/3.36 le_out_gg(x1, x2) = le_out_gg(x1, x2) 9.50/3.36 9.50/3.36 U4_g(x1, x2, x3, x4) = U4_g(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 slowsort_out_ag(x1, x2) = slowsort_out_ag(x2) 9.50/3.36 9.50/3.36 SORTED_IN_G(x1) = SORTED_IN_G(x1) 9.50/3.36 9.50/3.36 U3_G(x1, x2, x3, x4) = U3_G(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (15) UsableRulesProof (EQUIVALENT) 9.50/3.36 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (16) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 U3_G(X, Y, Z, le_out_gg(X, Y)) -> SORTED_IN_G(.(Y, Z)) 9.50/3.36 SORTED_IN_G(.(X, .(Y, Z))) -> U3_G(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 9.50/3.36 Pi is empty. 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (17) PiDPToQDPProof (EQUIVALENT) 9.50/3.36 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (18) 9.50/3.36 Obligation: 9.50/3.36 Q DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 U3_G(X, Y, Z, le_out_gg(X, Y)) -> SORTED_IN_G(.(Y, Z)) 9.50/3.36 SORTED_IN_G(.(X, .(Y, Z))) -> U3_G(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 9.50/3.36 The set Q consists of the following terms: 9.50/3.36 9.50/3.36 le_in_gg(x0, x1) 9.50/3.36 U8_gg(x0, x1, x2) 9.50/3.36 9.50/3.36 We have to consider all (P,Q,R)-chains. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (19) MRRProof (EQUIVALENT) 9.50/3.36 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. 9.50/3.36 9.50/3.36 Strictly oriented dependency pairs: 9.50/3.36 9.50/3.36 SORTED_IN_G(.(X, .(Y, Z))) -> U3_G(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 9.50/3.36 Strictly oriented rules of the TRS R: 9.50/3.36 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 9.50/3.36 Used ordering: Polynomial interpretation [POLO]: 9.50/3.36 9.50/3.36 POL(.(x_1, x_2)) = 2*x_1 + x_2 9.50/3.36 POL(0) = 2 9.50/3.36 POL(SORTED_IN_G(x_1)) = 2 + 2*x_1 9.50/3.36 POL(U3_G(x_1, x_2, x_3, x_4)) = 1 + x_1 + 2*x_2 + 2*x_3 + x_4 9.50/3.36 POL(U8_gg(x_1, x_2, x_3)) = 2*x_1 + 2*x_2 + x_3 9.50/3.36 POL(le_in_gg(x_1, x_2)) = 2*x_1 + 2*x_2 9.50/3.36 POL(le_out_gg(x_1, x_2)) = 1 + x_1 + 2*x_2 9.50/3.36 POL(s(x_1)) = 2*x_1 9.50/3.36 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (20) 9.50/3.36 Obligation: 9.50/3.36 Q DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 U3_G(X, Y, Z, le_out_gg(X, Y)) -> SORTED_IN_G(.(Y, Z)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 9.50/3.36 The set Q consists of the following terms: 9.50/3.36 9.50/3.36 le_in_gg(x0, x1) 9.50/3.36 U8_gg(x0, x1, x2) 9.50/3.36 9.50/3.36 We have to consider all (P,Q,R)-chains. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (21) DependencyGraphProof (EQUIVALENT) 9.50/3.36 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (22) 9.50/3.36 TRUE 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (23) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 DELETE_IN_GAA(X, .(Y, Z), W) -> DELETE_IN_GAA(X, Z, W) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 slowsort_in_ag(X, Y) -> U1_ag(X, Y, perm_in_ag(X, Y)) 9.50/3.36 perm_in_ag([], []) -> perm_out_ag([], []) 9.50/3.36 perm_in_ag(.(X, .(Y, [])), .(U, .(V, []))) -> U5_ag(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.50/3.36 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.50/3.36 U5_ag(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_ag(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U6_ag(X, Y, U, V, perm_out_ag(Z, V)) -> perm_out_ag(.(X, .(Y, [])), .(U, .(V, []))) 9.50/3.36 U1_ag(X, Y, perm_out_ag(X, Y)) -> U2_ag(X, Y, sorted_in_g(Y)) 9.50/3.36 sorted_in_g([]) -> sorted_out_g([]) 9.50/3.36 sorted_in_g(.(X, [])) -> sorted_out_g(.(X, [])) 9.50/3.36 sorted_in_g(.(X, .(Y, Z))) -> U3_g(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 U3_g(X, Y, Z, le_out_gg(X, Y)) -> U4_g(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U4_g(X, Y, Z, sorted_out_g(.(Y, Z))) -> sorted_out_g(.(X, .(Y, Z))) 9.50/3.36 U2_ag(X, Y, sorted_out_g(Y)) -> slowsort_out_ag(X, Y) 9.50/3.36 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 slowsort_in_ag(x1, x2) = slowsort_in_ag(x2) 9.50/3.36 9.50/3.36 U1_ag(x1, x2, x3) = U1_ag(x2, x3) 9.50/3.36 9.50/3.36 perm_in_ag(x1, x2) = perm_in_ag(x2) 9.50/3.36 9.50/3.36 [] = [] 9.50/3.36 9.50/3.36 perm_out_ag(x1, x2) = perm_out_ag(x2) 9.50/3.36 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 U5_ag(x1, x2, x3, x4, x5) = U5_ag(x3, x4, x5) 9.50/3.36 9.50/3.36 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.36 9.50/3.36 delete_out_gaa(x1, x2, x3) = delete_out_gaa(x1) 9.50/3.36 9.50/3.36 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x1, x5) 9.50/3.36 9.50/3.36 U6_ag(x1, x2, x3, x4, x5) = U6_ag(x3, x4, x5) 9.50/3.36 9.50/3.36 U2_ag(x1, x2, x3) = U2_ag(x2, x3) 9.50/3.36 9.50/3.36 sorted_in_g(x1) = sorted_in_g(x1) 9.50/3.36 9.50/3.36 sorted_out_g(x1) = sorted_out_g(x1) 9.50/3.36 9.50/3.36 U3_g(x1, x2, x3, x4) = U3_g(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 le_in_gg(x1, x2) = le_in_gg(x1, x2) 9.50/3.36 9.50/3.36 s(x1) = s(x1) 9.50/3.36 9.50/3.36 U8_gg(x1, x2, x3) = U8_gg(x1, x2, x3) 9.50/3.36 9.50/3.36 0 = 0 9.50/3.36 9.50/3.36 le_out_gg(x1, x2) = le_out_gg(x1, x2) 9.50/3.36 9.50/3.36 U4_g(x1, x2, x3, x4) = U4_g(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 slowsort_out_ag(x1, x2) = slowsort_out_ag(x2) 9.50/3.36 9.50/3.36 DELETE_IN_GAA(x1, x2, x3) = DELETE_IN_GAA(x1) 9.50/3.36 9.50/3.36 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (24) UsableRulesProof (EQUIVALENT) 9.50/3.36 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (25) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 DELETE_IN_GAA(X, .(Y, Z), W) -> DELETE_IN_GAA(X, Z, W) 9.50/3.36 9.50/3.36 R is empty. 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 DELETE_IN_GAA(x1, x2, x3) = DELETE_IN_GAA(x1) 9.50/3.36 9.50/3.36 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (26) PiDPToQDPProof (SOUND) 9.50/3.36 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (27) 9.50/3.36 Obligation: 9.50/3.36 Q DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 DELETE_IN_GAA(X) -> DELETE_IN_GAA(X) 9.50/3.36 9.50/3.36 R is empty. 9.50/3.36 Q is empty. 9.50/3.36 We have to consider all (P,Q,R)-chains. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (28) NonTerminationLoopProof (COMPLETE) 9.50/3.36 We used the non-termination processor [FROCOS05] to show that the DP problem is infinite. 9.50/3.36 Found a loop by semiunifying a rule from P directly. 9.50/3.36 9.50/3.36 s = DELETE_IN_GAA(X) evaluates to t =DELETE_IN_GAA(X) 9.50/3.36 9.50/3.36 Thus s starts an infinite chain as s semiunifies with t with the following substitutions: 9.50/3.36 * Matcher: [ ] 9.50/3.36 * Semiunifier: [ ] 9.50/3.36 9.50/3.36 -------------------------------------------------------------------------------- 9.50/3.36 Rewriting sequence 9.50/3.36 9.50/3.36 The DP semiunifies directly so there is only one rewrite step from DELETE_IN_GAA(X) to DELETE_IN_GAA(X). 9.50/3.36 9.50/3.36 9.50/3.36 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (29) 9.50/3.36 NO 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (30) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 U5_AG(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> PERM_IN_AG(Z, V) 9.50/3.36 PERM_IN_AG(.(X, .(Y, [])), .(U, .(V, []))) -> U5_AG(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 slowsort_in_ag(X, Y) -> U1_ag(X, Y, perm_in_ag(X, Y)) 9.50/3.36 perm_in_ag([], []) -> perm_out_ag([], []) 9.50/3.36 perm_in_ag(.(X, .(Y, [])), .(U, .(V, []))) -> U5_ag(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.50/3.36 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.50/3.36 U5_ag(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_ag(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U6_ag(X, Y, U, V, perm_out_ag(Z, V)) -> perm_out_ag(.(X, .(Y, [])), .(U, .(V, []))) 9.50/3.36 U1_ag(X, Y, perm_out_ag(X, Y)) -> U2_ag(X, Y, sorted_in_g(Y)) 9.50/3.36 sorted_in_g([]) -> sorted_out_g([]) 9.50/3.36 sorted_in_g(.(X, [])) -> sorted_out_g(.(X, [])) 9.50/3.36 sorted_in_g(.(X, .(Y, Z))) -> U3_g(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 U3_g(X, Y, Z, le_out_gg(X, Y)) -> U4_g(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U4_g(X, Y, Z, sorted_out_g(.(Y, Z))) -> sorted_out_g(.(X, .(Y, Z))) 9.50/3.36 U2_ag(X, Y, sorted_out_g(Y)) -> slowsort_out_ag(X, Y) 9.50/3.36 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 slowsort_in_ag(x1, x2) = slowsort_in_ag(x2) 9.50/3.36 9.50/3.36 U1_ag(x1, x2, x3) = U1_ag(x2, x3) 9.50/3.36 9.50/3.36 perm_in_ag(x1, x2) = perm_in_ag(x2) 9.50/3.36 9.50/3.36 [] = [] 9.50/3.36 9.50/3.36 perm_out_ag(x1, x2) = perm_out_ag(x2) 9.50/3.36 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 U5_ag(x1, x2, x3, x4, x5) = U5_ag(x3, x4, x5) 9.50/3.36 9.50/3.36 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.36 9.50/3.36 delete_out_gaa(x1, x2, x3) = delete_out_gaa(x1) 9.50/3.36 9.50/3.36 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x1, x5) 9.50/3.36 9.50/3.36 U6_ag(x1, x2, x3, x4, x5) = U6_ag(x3, x4, x5) 9.50/3.36 9.50/3.36 U2_ag(x1, x2, x3) = U2_ag(x2, x3) 9.50/3.36 9.50/3.36 sorted_in_g(x1) = sorted_in_g(x1) 9.50/3.36 9.50/3.36 sorted_out_g(x1) = sorted_out_g(x1) 9.50/3.36 9.50/3.36 U3_g(x1, x2, x3, x4) = U3_g(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 le_in_gg(x1, x2) = le_in_gg(x1, x2) 9.50/3.36 9.50/3.36 s(x1) = s(x1) 9.50/3.36 9.50/3.36 U8_gg(x1, x2, x3) = U8_gg(x1, x2, x3) 9.50/3.36 9.50/3.36 0 = 0 9.50/3.36 9.50/3.36 le_out_gg(x1, x2) = le_out_gg(x1, x2) 9.50/3.36 9.50/3.36 U4_g(x1, x2, x3, x4) = U4_g(x1, x2, x3, x4) 9.50/3.36 9.50/3.36 slowsort_out_ag(x1, x2) = slowsort_out_ag(x2) 9.50/3.36 9.50/3.36 PERM_IN_AG(x1, x2) = PERM_IN_AG(x2) 9.50/3.36 9.50/3.36 U5_AG(x1, x2, x3, x4, x5) = U5_AG(x3, x4, x5) 9.50/3.36 9.50/3.36 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (31) UsableRulesProof (EQUIVALENT) 9.50/3.36 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (32) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 U5_AG(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> PERM_IN_AG(Z, V) 9.50/3.36 PERM_IN_AG(.(X, .(Y, [])), .(U, .(V, []))) -> U5_AG(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.50/3.36 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.50/3.36 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 [] = [] 9.50/3.36 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.36 9.50/3.36 delete_out_gaa(x1, x2, x3) = delete_out_gaa(x1) 9.50/3.36 9.50/3.36 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x1, x5) 9.50/3.36 9.50/3.36 PERM_IN_AG(x1, x2) = PERM_IN_AG(x2) 9.50/3.36 9.50/3.36 U5_AG(x1, x2, x3, x4, x5) = U5_AG(x3, x4, x5) 9.50/3.36 9.50/3.36 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (33) PiDPToQDPProof (SOUND) 9.50/3.36 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (34) 9.50/3.36 Obligation: 9.50/3.36 Q DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 U5_AG(U, V, delete_out_gaa(U)) -> PERM_IN_AG(V) 9.50/3.36 PERM_IN_AG(.(U, .(V, []))) -> U5_AG(U, V, delete_in_gaa(U)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 delete_in_gaa(X) -> delete_out_gaa(X) 9.50/3.36 delete_in_gaa(X) -> U7_gaa(X, delete_in_gaa(X)) 9.50/3.36 U7_gaa(X, delete_out_gaa(X)) -> delete_out_gaa(X) 9.50/3.36 9.50/3.36 The set Q consists of the following terms: 9.50/3.36 9.50/3.36 delete_in_gaa(x0) 9.50/3.36 U7_gaa(x0, x1) 9.50/3.36 9.50/3.36 We have to consider all (P,Q,R)-chains. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (35) QDPSizeChangeProof (EQUIVALENT) 9.50/3.36 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. 9.50/3.36 9.50/3.36 From the DPs we obtained the following set of size-change graphs: 9.50/3.36 *PERM_IN_AG(.(U, .(V, []))) -> U5_AG(U, V, delete_in_gaa(U)) 9.50/3.36 The graph contains the following edges 1 > 1, 1 > 2 9.50/3.36 9.50/3.36 9.50/3.36 *U5_AG(U, V, delete_out_gaa(U)) -> PERM_IN_AG(V) 9.50/3.36 The graph contains the following edges 2 >= 1 9.50/3.36 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (36) 9.50/3.36 YES 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (37) PrologToPiTRSProof (SOUND) 9.50/3.36 We use the technique of [TOCL09]. With regard to the inferred argument filtering the predicates were used in the following modes: 9.50/3.36 9.50/3.36 slowsort_in_2: (f,b) 9.50/3.36 9.50/3.36 perm_in_2: (f,b) 9.50/3.36 9.50/3.36 delete_in_3: (b,f,f) 9.50/3.36 9.50/3.36 sorted_in_1: (b) 9.50/3.36 9.50/3.36 le_in_2: (b,b) 9.50/3.36 9.50/3.36 Transforming Prolog into the following Term Rewriting System: 9.50/3.36 9.50/3.36 Pi-finite rewrite system: 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 slowsort_in_ag(X, Y) -> U1_ag(X, Y, perm_in_ag(X, Y)) 9.50/3.36 perm_in_ag([], []) -> perm_out_ag([], []) 9.50/3.36 perm_in_ag(.(X, .(Y, [])), .(U, .(V, []))) -> U5_ag(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.50/3.36 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.50/3.36 U5_ag(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_ag(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U6_ag(X, Y, U, V, perm_out_ag(Z, V)) -> perm_out_ag(.(X, .(Y, [])), .(U, .(V, []))) 9.50/3.36 U1_ag(X, Y, perm_out_ag(X, Y)) -> U2_ag(X, Y, sorted_in_g(Y)) 9.50/3.36 sorted_in_g([]) -> sorted_out_g([]) 9.50/3.36 sorted_in_g(.(X, [])) -> sorted_out_g(.(X, [])) 9.50/3.36 sorted_in_g(.(X, .(Y, Z))) -> U3_g(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 U3_g(X, Y, Z, le_out_gg(X, Y)) -> U4_g(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U4_g(X, Y, Z, sorted_out_g(.(Y, Z))) -> sorted_out_g(.(X, .(Y, Z))) 9.50/3.36 U2_ag(X, Y, sorted_out_g(Y)) -> slowsort_out_ag(X, Y) 9.50/3.36 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 slowsort_in_ag(x1, x2) = slowsort_in_ag(x2) 9.50/3.36 9.50/3.36 U1_ag(x1, x2, x3) = U1_ag(x2, x3) 9.50/3.36 9.50/3.36 perm_in_ag(x1, x2) = perm_in_ag(x2) 9.50/3.36 9.50/3.36 [] = [] 9.50/3.36 9.50/3.36 perm_out_ag(x1, x2) = perm_out_ag 9.50/3.36 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 U5_ag(x1, x2, x3, x4, x5) = U5_ag(x4, x5) 9.50/3.36 9.50/3.36 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.36 9.50/3.36 delete_out_gaa(x1, x2, x3) = delete_out_gaa 9.50/3.36 9.50/3.36 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x5) 9.50/3.36 9.50/3.36 U6_ag(x1, x2, x3, x4, x5) = U6_ag(x5) 9.50/3.36 9.50/3.36 U2_ag(x1, x2, x3) = U2_ag(x3) 9.50/3.36 9.50/3.36 sorted_in_g(x1) = sorted_in_g(x1) 9.50/3.36 9.50/3.36 sorted_out_g(x1) = sorted_out_g 9.50/3.36 9.50/3.36 U3_g(x1, x2, x3, x4) = U3_g(x2, x3, x4) 9.50/3.36 9.50/3.36 le_in_gg(x1, x2) = le_in_gg(x1, x2) 9.50/3.36 9.50/3.36 s(x1) = s(x1) 9.50/3.36 9.50/3.36 U8_gg(x1, x2, x3) = U8_gg(x3) 9.50/3.36 9.50/3.36 0 = 0 9.50/3.36 9.50/3.36 le_out_gg(x1, x2) = le_out_gg 9.50/3.36 9.50/3.36 U4_g(x1, x2, x3, x4) = U4_g(x4) 9.50/3.36 9.50/3.36 slowsort_out_ag(x1, x2) = slowsort_out_ag 9.50/3.36 9.50/3.36 9.50/3.36 9.50/3.36 9.50/3.36 9.50/3.36 Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog 9.50/3.36 9.50/3.36 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (38) 9.50/3.36 Obligation: 9.50/3.36 Pi-finite rewrite system: 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 slowsort_in_ag(X, Y) -> U1_ag(X, Y, perm_in_ag(X, Y)) 9.50/3.36 perm_in_ag([], []) -> perm_out_ag([], []) 9.50/3.36 perm_in_ag(.(X, .(Y, [])), .(U, .(V, []))) -> U5_ag(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.50/3.36 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.50/3.36 U5_ag(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_ag(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U6_ag(X, Y, U, V, perm_out_ag(Z, V)) -> perm_out_ag(.(X, .(Y, [])), .(U, .(V, []))) 9.50/3.36 U1_ag(X, Y, perm_out_ag(X, Y)) -> U2_ag(X, Y, sorted_in_g(Y)) 9.50/3.36 sorted_in_g([]) -> sorted_out_g([]) 9.50/3.36 sorted_in_g(.(X, [])) -> sorted_out_g(.(X, [])) 9.50/3.36 sorted_in_g(.(X, .(Y, Z))) -> U3_g(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 U3_g(X, Y, Z, le_out_gg(X, Y)) -> U4_g(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U4_g(X, Y, Z, sorted_out_g(.(Y, Z))) -> sorted_out_g(.(X, .(Y, Z))) 9.50/3.36 U2_ag(X, Y, sorted_out_g(Y)) -> slowsort_out_ag(X, Y) 9.50/3.36 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 slowsort_in_ag(x1, x2) = slowsort_in_ag(x2) 9.50/3.36 9.50/3.36 U1_ag(x1, x2, x3) = U1_ag(x2, x3) 9.50/3.36 9.50/3.36 perm_in_ag(x1, x2) = perm_in_ag(x2) 9.50/3.36 9.50/3.36 [] = [] 9.50/3.36 9.50/3.36 perm_out_ag(x1, x2) = perm_out_ag 9.50/3.36 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 U5_ag(x1, x2, x3, x4, x5) = U5_ag(x4, x5) 9.50/3.36 9.50/3.36 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.36 9.50/3.36 delete_out_gaa(x1, x2, x3) = delete_out_gaa 9.50/3.36 9.50/3.36 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x5) 9.50/3.36 9.50/3.36 U6_ag(x1, x2, x3, x4, x5) = U6_ag(x5) 9.50/3.36 9.50/3.36 U2_ag(x1, x2, x3) = U2_ag(x3) 9.50/3.36 9.50/3.36 sorted_in_g(x1) = sorted_in_g(x1) 9.50/3.36 9.50/3.36 sorted_out_g(x1) = sorted_out_g 9.50/3.36 9.50/3.36 U3_g(x1, x2, x3, x4) = U3_g(x2, x3, x4) 9.50/3.36 9.50/3.36 le_in_gg(x1, x2) = le_in_gg(x1, x2) 9.50/3.36 9.50/3.36 s(x1) = s(x1) 9.50/3.36 9.50/3.36 U8_gg(x1, x2, x3) = U8_gg(x3) 9.50/3.36 9.50/3.36 0 = 0 9.50/3.36 9.50/3.36 le_out_gg(x1, x2) = le_out_gg 9.50/3.36 9.50/3.36 U4_g(x1, x2, x3, x4) = U4_g(x4) 9.50/3.36 9.50/3.36 slowsort_out_ag(x1, x2) = slowsort_out_ag 9.50/3.36 9.50/3.36 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (39) DependencyPairsProof (EQUIVALENT) 9.50/3.36 Using Dependency Pairs [AG00,LOPSTR] we result in the following initial DP problem: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 SLOWSORT_IN_AG(X, Y) -> U1_AG(X, Y, perm_in_ag(X, Y)) 9.50/3.36 SLOWSORT_IN_AG(X, Y) -> PERM_IN_AG(X, Y) 9.50/3.36 PERM_IN_AG(.(X, .(Y, [])), .(U, .(V, []))) -> U5_AG(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 PERM_IN_AG(.(X, .(Y, [])), .(U, .(V, []))) -> DELETE_IN_GAA(U, .(X, Y), Z) 9.50/3.36 DELETE_IN_GAA(X, .(Y, Z), W) -> U7_GAA(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 DELETE_IN_GAA(X, .(Y, Z), W) -> DELETE_IN_GAA(X, Z, W) 9.50/3.36 U5_AG(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_AG(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U5_AG(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> PERM_IN_AG(Z, V) 9.50/3.36 U1_AG(X, Y, perm_out_ag(X, Y)) -> U2_AG(X, Y, sorted_in_g(Y)) 9.50/3.36 U1_AG(X, Y, perm_out_ag(X, Y)) -> SORTED_IN_G(Y) 9.50/3.36 SORTED_IN_G(.(X, .(Y, Z))) -> U3_G(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 SORTED_IN_G(.(X, .(Y, Z))) -> LE_IN_GG(X, Y) 9.50/3.36 LE_IN_GG(s(X), s(Y)) -> U8_GG(X, Y, le_in_gg(X, Y)) 9.50/3.36 LE_IN_GG(s(X), s(Y)) -> LE_IN_GG(X, Y) 9.50/3.36 U3_G(X, Y, Z, le_out_gg(X, Y)) -> U4_G(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U3_G(X, Y, Z, le_out_gg(X, Y)) -> SORTED_IN_G(.(Y, Z)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 slowsort_in_ag(X, Y) -> U1_ag(X, Y, perm_in_ag(X, Y)) 9.50/3.36 perm_in_ag([], []) -> perm_out_ag([], []) 9.50/3.36 perm_in_ag(.(X, .(Y, [])), .(U, .(V, []))) -> U5_ag(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.50/3.36 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.50/3.36 U5_ag(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_ag(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U6_ag(X, Y, U, V, perm_out_ag(Z, V)) -> perm_out_ag(.(X, .(Y, [])), .(U, .(V, []))) 9.50/3.36 U1_ag(X, Y, perm_out_ag(X, Y)) -> U2_ag(X, Y, sorted_in_g(Y)) 9.50/3.36 sorted_in_g([]) -> sorted_out_g([]) 9.50/3.36 sorted_in_g(.(X, [])) -> sorted_out_g(.(X, [])) 9.50/3.36 sorted_in_g(.(X, .(Y, Z))) -> U3_g(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 U3_g(X, Y, Z, le_out_gg(X, Y)) -> U4_g(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U4_g(X, Y, Z, sorted_out_g(.(Y, Z))) -> sorted_out_g(.(X, .(Y, Z))) 9.50/3.36 U2_ag(X, Y, sorted_out_g(Y)) -> slowsort_out_ag(X, Y) 9.50/3.36 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 slowsort_in_ag(x1, x2) = slowsort_in_ag(x2) 9.50/3.36 9.50/3.36 U1_ag(x1, x2, x3) = U1_ag(x2, x3) 9.50/3.36 9.50/3.36 perm_in_ag(x1, x2) = perm_in_ag(x2) 9.50/3.36 9.50/3.36 [] = [] 9.50/3.36 9.50/3.36 perm_out_ag(x1, x2) = perm_out_ag 9.50/3.36 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 U5_ag(x1, x2, x3, x4, x5) = U5_ag(x4, x5) 9.50/3.36 9.50/3.36 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.36 9.50/3.36 delete_out_gaa(x1, x2, x3) = delete_out_gaa 9.50/3.36 9.50/3.36 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x5) 9.50/3.36 9.50/3.36 U6_ag(x1, x2, x3, x4, x5) = U6_ag(x5) 9.50/3.36 9.50/3.36 U2_ag(x1, x2, x3) = U2_ag(x3) 9.50/3.36 9.50/3.36 sorted_in_g(x1) = sorted_in_g(x1) 9.50/3.36 9.50/3.36 sorted_out_g(x1) = sorted_out_g 9.50/3.36 9.50/3.36 U3_g(x1, x2, x3, x4) = U3_g(x2, x3, x4) 9.50/3.36 9.50/3.36 le_in_gg(x1, x2) = le_in_gg(x1, x2) 9.50/3.36 9.50/3.36 s(x1) = s(x1) 9.50/3.36 9.50/3.36 U8_gg(x1, x2, x3) = U8_gg(x3) 9.50/3.36 9.50/3.36 0 = 0 9.50/3.36 9.50/3.36 le_out_gg(x1, x2) = le_out_gg 9.50/3.36 9.50/3.36 U4_g(x1, x2, x3, x4) = U4_g(x4) 9.50/3.36 9.50/3.36 slowsort_out_ag(x1, x2) = slowsort_out_ag 9.50/3.36 9.50/3.36 SLOWSORT_IN_AG(x1, x2) = SLOWSORT_IN_AG(x2) 9.50/3.36 9.50/3.36 U1_AG(x1, x2, x3) = U1_AG(x2, x3) 9.50/3.36 9.50/3.36 PERM_IN_AG(x1, x2) = PERM_IN_AG(x2) 9.50/3.36 9.50/3.36 U5_AG(x1, x2, x3, x4, x5) = U5_AG(x4, x5) 9.50/3.36 9.50/3.36 DELETE_IN_GAA(x1, x2, x3) = DELETE_IN_GAA(x1) 9.50/3.36 9.50/3.36 U7_GAA(x1, x2, x3, x4, x5) = U7_GAA(x5) 9.50/3.36 9.50/3.36 U6_AG(x1, x2, x3, x4, x5) = U6_AG(x5) 9.50/3.36 9.50/3.36 U2_AG(x1, x2, x3) = U2_AG(x3) 9.50/3.36 9.50/3.36 SORTED_IN_G(x1) = SORTED_IN_G(x1) 9.50/3.36 9.50/3.36 U3_G(x1, x2, x3, x4) = U3_G(x2, x3, x4) 9.50/3.36 9.50/3.36 LE_IN_GG(x1, x2) = LE_IN_GG(x1, x2) 9.50/3.36 9.50/3.36 U8_GG(x1, x2, x3) = U8_GG(x3) 9.50/3.36 9.50/3.36 U4_G(x1, x2, x3, x4) = U4_G(x4) 9.50/3.36 9.50/3.36 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (40) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 SLOWSORT_IN_AG(X, Y) -> U1_AG(X, Y, perm_in_ag(X, Y)) 9.50/3.36 SLOWSORT_IN_AG(X, Y) -> PERM_IN_AG(X, Y) 9.50/3.36 PERM_IN_AG(.(X, .(Y, [])), .(U, .(V, []))) -> U5_AG(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 PERM_IN_AG(.(X, .(Y, [])), .(U, .(V, []))) -> DELETE_IN_GAA(U, .(X, Y), Z) 9.50/3.36 DELETE_IN_GAA(X, .(Y, Z), W) -> U7_GAA(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 DELETE_IN_GAA(X, .(Y, Z), W) -> DELETE_IN_GAA(X, Z, W) 9.50/3.36 U5_AG(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_AG(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U5_AG(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> PERM_IN_AG(Z, V) 9.50/3.36 U1_AG(X, Y, perm_out_ag(X, Y)) -> U2_AG(X, Y, sorted_in_g(Y)) 9.50/3.36 U1_AG(X, Y, perm_out_ag(X, Y)) -> SORTED_IN_G(Y) 9.50/3.36 SORTED_IN_G(.(X, .(Y, Z))) -> U3_G(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 SORTED_IN_G(.(X, .(Y, Z))) -> LE_IN_GG(X, Y) 9.50/3.36 LE_IN_GG(s(X), s(Y)) -> U8_GG(X, Y, le_in_gg(X, Y)) 9.50/3.36 LE_IN_GG(s(X), s(Y)) -> LE_IN_GG(X, Y) 9.50/3.36 U3_G(X, Y, Z, le_out_gg(X, Y)) -> U4_G(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U3_G(X, Y, Z, le_out_gg(X, Y)) -> SORTED_IN_G(.(Y, Z)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 slowsort_in_ag(X, Y) -> U1_ag(X, Y, perm_in_ag(X, Y)) 9.50/3.36 perm_in_ag([], []) -> perm_out_ag([], []) 9.50/3.36 perm_in_ag(.(X, .(Y, [])), .(U, .(V, []))) -> U5_ag(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.50/3.36 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.50/3.36 U5_ag(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_ag(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U6_ag(X, Y, U, V, perm_out_ag(Z, V)) -> perm_out_ag(.(X, .(Y, [])), .(U, .(V, []))) 9.50/3.36 U1_ag(X, Y, perm_out_ag(X, Y)) -> U2_ag(X, Y, sorted_in_g(Y)) 9.50/3.36 sorted_in_g([]) -> sorted_out_g([]) 9.50/3.36 sorted_in_g(.(X, [])) -> sorted_out_g(.(X, [])) 9.50/3.36 sorted_in_g(.(X, .(Y, Z))) -> U3_g(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 U3_g(X, Y, Z, le_out_gg(X, Y)) -> U4_g(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U4_g(X, Y, Z, sorted_out_g(.(Y, Z))) -> sorted_out_g(.(X, .(Y, Z))) 9.50/3.36 U2_ag(X, Y, sorted_out_g(Y)) -> slowsort_out_ag(X, Y) 9.50/3.36 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 slowsort_in_ag(x1, x2) = slowsort_in_ag(x2) 9.50/3.36 9.50/3.36 U1_ag(x1, x2, x3) = U1_ag(x2, x3) 9.50/3.36 9.50/3.36 perm_in_ag(x1, x2) = perm_in_ag(x2) 9.50/3.36 9.50/3.36 [] = [] 9.50/3.36 9.50/3.36 perm_out_ag(x1, x2) = perm_out_ag 9.50/3.36 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 U5_ag(x1, x2, x3, x4, x5) = U5_ag(x4, x5) 9.50/3.36 9.50/3.36 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.36 9.50/3.36 delete_out_gaa(x1, x2, x3) = delete_out_gaa 9.50/3.36 9.50/3.36 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x5) 9.50/3.36 9.50/3.36 U6_ag(x1, x2, x3, x4, x5) = U6_ag(x5) 9.50/3.36 9.50/3.36 U2_ag(x1, x2, x3) = U2_ag(x3) 9.50/3.36 9.50/3.36 sorted_in_g(x1) = sorted_in_g(x1) 9.50/3.36 9.50/3.36 sorted_out_g(x1) = sorted_out_g 9.50/3.36 9.50/3.36 U3_g(x1, x2, x3, x4) = U3_g(x2, x3, x4) 9.50/3.36 9.50/3.36 le_in_gg(x1, x2) = le_in_gg(x1, x2) 9.50/3.36 9.50/3.36 s(x1) = s(x1) 9.50/3.36 9.50/3.36 U8_gg(x1, x2, x3) = U8_gg(x3) 9.50/3.36 9.50/3.36 0 = 0 9.50/3.36 9.50/3.36 le_out_gg(x1, x2) = le_out_gg 9.50/3.36 9.50/3.36 U4_g(x1, x2, x3, x4) = U4_g(x4) 9.50/3.36 9.50/3.36 slowsort_out_ag(x1, x2) = slowsort_out_ag 9.50/3.36 9.50/3.36 SLOWSORT_IN_AG(x1, x2) = SLOWSORT_IN_AG(x2) 9.50/3.36 9.50/3.36 U1_AG(x1, x2, x3) = U1_AG(x2, x3) 9.50/3.36 9.50/3.36 PERM_IN_AG(x1, x2) = PERM_IN_AG(x2) 9.50/3.36 9.50/3.36 U5_AG(x1, x2, x3, x4, x5) = U5_AG(x4, x5) 9.50/3.36 9.50/3.36 DELETE_IN_GAA(x1, x2, x3) = DELETE_IN_GAA(x1) 9.50/3.36 9.50/3.36 U7_GAA(x1, x2, x3, x4, x5) = U7_GAA(x5) 9.50/3.36 9.50/3.36 U6_AG(x1, x2, x3, x4, x5) = U6_AG(x5) 9.50/3.36 9.50/3.36 U2_AG(x1, x2, x3) = U2_AG(x3) 9.50/3.36 9.50/3.36 SORTED_IN_G(x1) = SORTED_IN_G(x1) 9.50/3.36 9.50/3.36 U3_G(x1, x2, x3, x4) = U3_G(x2, x3, x4) 9.50/3.36 9.50/3.36 LE_IN_GG(x1, x2) = LE_IN_GG(x1, x2) 9.50/3.36 9.50/3.36 U8_GG(x1, x2, x3) = U8_GG(x3) 9.50/3.36 9.50/3.36 U4_G(x1, x2, x3, x4) = U4_G(x4) 9.50/3.36 9.50/3.36 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (41) DependencyGraphProof (EQUIVALENT) 9.50/3.36 The approximation of the Dependency Graph [LOPSTR] contains 4 SCCs with 10 less nodes. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (42) 9.50/3.36 Complex Obligation (AND) 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (43) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 LE_IN_GG(s(X), s(Y)) -> LE_IN_GG(X, Y) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 slowsort_in_ag(X, Y) -> U1_ag(X, Y, perm_in_ag(X, Y)) 9.50/3.36 perm_in_ag([], []) -> perm_out_ag([], []) 9.50/3.36 perm_in_ag(.(X, .(Y, [])), .(U, .(V, []))) -> U5_ag(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.50/3.36 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.50/3.36 U5_ag(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_ag(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U6_ag(X, Y, U, V, perm_out_ag(Z, V)) -> perm_out_ag(.(X, .(Y, [])), .(U, .(V, []))) 9.50/3.36 U1_ag(X, Y, perm_out_ag(X, Y)) -> U2_ag(X, Y, sorted_in_g(Y)) 9.50/3.36 sorted_in_g([]) -> sorted_out_g([]) 9.50/3.36 sorted_in_g(.(X, [])) -> sorted_out_g(.(X, [])) 9.50/3.36 sorted_in_g(.(X, .(Y, Z))) -> U3_g(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 U3_g(X, Y, Z, le_out_gg(X, Y)) -> U4_g(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U4_g(X, Y, Z, sorted_out_g(.(Y, Z))) -> sorted_out_g(.(X, .(Y, Z))) 9.50/3.36 U2_ag(X, Y, sorted_out_g(Y)) -> slowsort_out_ag(X, Y) 9.50/3.36 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 slowsort_in_ag(x1, x2) = slowsort_in_ag(x2) 9.50/3.36 9.50/3.36 U1_ag(x1, x2, x3) = U1_ag(x2, x3) 9.50/3.36 9.50/3.36 perm_in_ag(x1, x2) = perm_in_ag(x2) 9.50/3.36 9.50/3.36 [] = [] 9.50/3.36 9.50/3.36 perm_out_ag(x1, x2) = perm_out_ag 9.50/3.36 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 U5_ag(x1, x2, x3, x4, x5) = U5_ag(x4, x5) 9.50/3.36 9.50/3.36 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.36 9.50/3.36 delete_out_gaa(x1, x2, x3) = delete_out_gaa 9.50/3.36 9.50/3.36 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x5) 9.50/3.36 9.50/3.36 U6_ag(x1, x2, x3, x4, x5) = U6_ag(x5) 9.50/3.36 9.50/3.36 U2_ag(x1, x2, x3) = U2_ag(x3) 9.50/3.36 9.50/3.36 sorted_in_g(x1) = sorted_in_g(x1) 9.50/3.36 9.50/3.36 sorted_out_g(x1) = sorted_out_g 9.50/3.36 9.50/3.36 U3_g(x1, x2, x3, x4) = U3_g(x2, x3, x4) 9.50/3.36 9.50/3.36 le_in_gg(x1, x2) = le_in_gg(x1, x2) 9.50/3.36 9.50/3.36 s(x1) = s(x1) 9.50/3.36 9.50/3.36 U8_gg(x1, x2, x3) = U8_gg(x3) 9.50/3.36 9.50/3.36 0 = 0 9.50/3.36 9.50/3.36 le_out_gg(x1, x2) = le_out_gg 9.50/3.36 9.50/3.36 U4_g(x1, x2, x3, x4) = U4_g(x4) 9.50/3.36 9.50/3.36 slowsort_out_ag(x1, x2) = slowsort_out_ag 9.50/3.36 9.50/3.36 LE_IN_GG(x1, x2) = LE_IN_GG(x1, x2) 9.50/3.36 9.50/3.36 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (44) UsableRulesProof (EQUIVALENT) 9.50/3.36 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (45) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 LE_IN_GG(s(X), s(Y)) -> LE_IN_GG(X, Y) 9.50/3.36 9.50/3.36 R is empty. 9.50/3.36 Pi is empty. 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (46) PiDPToQDPProof (EQUIVALENT) 9.50/3.36 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (47) 9.50/3.36 Obligation: 9.50/3.36 Q DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 LE_IN_GG(s(X), s(Y)) -> LE_IN_GG(X, Y) 9.50/3.36 9.50/3.36 R is empty. 9.50/3.36 Q is empty. 9.50/3.36 We have to consider all (P,Q,R)-chains. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (48) QDPSizeChangeProof (EQUIVALENT) 9.50/3.36 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. 9.50/3.36 9.50/3.36 From the DPs we obtained the following set of size-change graphs: 9.50/3.36 *LE_IN_GG(s(X), s(Y)) -> LE_IN_GG(X, Y) 9.50/3.36 The graph contains the following edges 1 > 1, 2 > 2 9.50/3.36 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (49) 9.50/3.36 YES 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (50) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 U3_G(X, Y, Z, le_out_gg(X, Y)) -> SORTED_IN_G(.(Y, Z)) 9.50/3.36 SORTED_IN_G(.(X, .(Y, Z))) -> U3_G(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 slowsort_in_ag(X, Y) -> U1_ag(X, Y, perm_in_ag(X, Y)) 9.50/3.36 perm_in_ag([], []) -> perm_out_ag([], []) 9.50/3.36 perm_in_ag(.(X, .(Y, [])), .(U, .(V, []))) -> U5_ag(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.50/3.36 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.50/3.36 U5_ag(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_ag(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U6_ag(X, Y, U, V, perm_out_ag(Z, V)) -> perm_out_ag(.(X, .(Y, [])), .(U, .(V, []))) 9.50/3.36 U1_ag(X, Y, perm_out_ag(X, Y)) -> U2_ag(X, Y, sorted_in_g(Y)) 9.50/3.36 sorted_in_g([]) -> sorted_out_g([]) 9.50/3.36 sorted_in_g(.(X, [])) -> sorted_out_g(.(X, [])) 9.50/3.36 sorted_in_g(.(X, .(Y, Z))) -> U3_g(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 U3_g(X, Y, Z, le_out_gg(X, Y)) -> U4_g(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U4_g(X, Y, Z, sorted_out_g(.(Y, Z))) -> sorted_out_g(.(X, .(Y, Z))) 9.50/3.36 U2_ag(X, Y, sorted_out_g(Y)) -> slowsort_out_ag(X, Y) 9.50/3.36 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 slowsort_in_ag(x1, x2) = slowsort_in_ag(x2) 9.50/3.36 9.50/3.36 U1_ag(x1, x2, x3) = U1_ag(x2, x3) 9.50/3.36 9.50/3.36 perm_in_ag(x1, x2) = perm_in_ag(x2) 9.50/3.36 9.50/3.36 [] = [] 9.50/3.36 9.50/3.36 perm_out_ag(x1, x2) = perm_out_ag 9.50/3.36 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 U5_ag(x1, x2, x3, x4, x5) = U5_ag(x4, x5) 9.50/3.36 9.50/3.36 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.36 9.50/3.36 delete_out_gaa(x1, x2, x3) = delete_out_gaa 9.50/3.36 9.50/3.36 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x5) 9.50/3.36 9.50/3.36 U6_ag(x1, x2, x3, x4, x5) = U6_ag(x5) 9.50/3.36 9.50/3.36 U2_ag(x1, x2, x3) = U2_ag(x3) 9.50/3.36 9.50/3.36 sorted_in_g(x1) = sorted_in_g(x1) 9.50/3.36 9.50/3.36 sorted_out_g(x1) = sorted_out_g 9.50/3.36 9.50/3.36 U3_g(x1, x2, x3, x4) = U3_g(x2, x3, x4) 9.50/3.36 9.50/3.36 le_in_gg(x1, x2) = le_in_gg(x1, x2) 9.50/3.36 9.50/3.36 s(x1) = s(x1) 9.50/3.36 9.50/3.36 U8_gg(x1, x2, x3) = U8_gg(x3) 9.50/3.36 9.50/3.36 0 = 0 9.50/3.36 9.50/3.36 le_out_gg(x1, x2) = le_out_gg 9.50/3.36 9.50/3.36 U4_g(x1, x2, x3, x4) = U4_g(x4) 9.50/3.36 9.50/3.36 slowsort_out_ag(x1, x2) = slowsort_out_ag 9.50/3.36 9.50/3.36 SORTED_IN_G(x1) = SORTED_IN_G(x1) 9.50/3.36 9.50/3.36 U3_G(x1, x2, x3, x4) = U3_G(x2, x3, x4) 9.50/3.36 9.50/3.36 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (51) UsableRulesProof (EQUIVALENT) 9.50/3.36 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (52) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 U3_G(X, Y, Z, le_out_gg(X, Y)) -> SORTED_IN_G(.(Y, Z)) 9.50/3.36 SORTED_IN_G(.(X, .(Y, Z))) -> U3_G(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 le_in_gg(x1, x2) = le_in_gg(x1, x2) 9.50/3.36 9.50/3.36 s(x1) = s(x1) 9.50/3.36 9.50/3.36 U8_gg(x1, x2, x3) = U8_gg(x3) 9.50/3.36 9.50/3.36 0 = 0 9.50/3.36 9.50/3.36 le_out_gg(x1, x2) = le_out_gg 9.50/3.36 9.50/3.36 SORTED_IN_G(x1) = SORTED_IN_G(x1) 9.50/3.36 9.50/3.36 U3_G(x1, x2, x3, x4) = U3_G(x2, x3, x4) 9.50/3.36 9.50/3.36 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (53) PiDPToQDPProof (SOUND) 9.50/3.36 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (54) 9.50/3.36 Obligation: 9.50/3.36 Q DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 U3_G(Y, Z, le_out_gg) -> SORTED_IN_G(.(Y, Z)) 9.50/3.36 SORTED_IN_G(.(X, .(Y, Z))) -> U3_G(Y, Z, le_in_gg(X, Y)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg 9.50/3.36 le_in_gg(0, 0) -> le_out_gg 9.50/3.36 U8_gg(le_out_gg) -> le_out_gg 9.50/3.36 9.50/3.36 The set Q consists of the following terms: 9.50/3.36 9.50/3.36 le_in_gg(x0, x1) 9.50/3.36 U8_gg(x0) 9.50/3.36 9.50/3.36 We have to consider all (P,Q,R)-chains. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (55) UsableRulesReductionPairsProof (EQUIVALENT) 9.50/3.36 By using the usable rules with reduction pair processor [LPAR04] with a polynomial ordering [POLO], all dependency pairs and the corresponding usable rules [FROCOS05] can be oriented non-strictly. All non-usable rules are removed, and those dependency pairs and usable rules that have been oriented strictly or contain non-usable symbols in their left-hand side are removed as well. 9.50/3.36 9.50/3.36 No dependency pairs are removed. 9.50/3.36 9.50/3.36 The following rules are removed from R: 9.50/3.36 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg 9.50/3.36 le_in_gg(0, 0) -> le_out_gg 9.50/3.36 Used ordering: POLO with Polynomial interpretation [POLO]: 9.50/3.36 9.50/3.36 POL(.(x_1, x_2)) = x_1 + 2*x_2 9.50/3.36 POL(0) = 0 9.50/3.36 POL(SORTED_IN_G(x_1)) = x_1 9.50/3.36 POL(U3_G(x_1, x_2, x_3)) = x_1 + 2*x_2 + x_3 9.50/3.36 POL(U8_gg(x_1)) = 2*x_1 9.50/3.36 POL(le_in_gg(x_1, x_2)) = x_1 + x_2 9.50/3.36 POL(le_out_gg) = 0 9.50/3.36 POL(s(x_1)) = 2 + 2*x_1 9.50/3.36 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (56) 9.50/3.36 Obligation: 9.50/3.36 Q DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 U3_G(Y, Z, le_out_gg) -> SORTED_IN_G(.(Y, Z)) 9.50/3.36 SORTED_IN_G(.(X, .(Y, Z))) -> U3_G(Y, Z, le_in_gg(X, Y)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 U8_gg(le_out_gg) -> le_out_gg 9.50/3.36 9.50/3.36 The set Q consists of the following terms: 9.50/3.36 9.50/3.36 le_in_gg(x0, x1) 9.50/3.36 U8_gg(x0) 9.50/3.36 9.50/3.36 We have to consider all (P,Q,R)-chains. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (57) DependencyGraphProof (EQUIVALENT) 9.50/3.36 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 2 less nodes. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (58) 9.50/3.36 TRUE 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (59) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 DELETE_IN_GAA(X, .(Y, Z), W) -> DELETE_IN_GAA(X, Z, W) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 slowsort_in_ag(X, Y) -> U1_ag(X, Y, perm_in_ag(X, Y)) 9.50/3.36 perm_in_ag([], []) -> perm_out_ag([], []) 9.50/3.36 perm_in_ag(.(X, .(Y, [])), .(U, .(V, []))) -> U5_ag(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.50/3.36 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.50/3.36 U5_ag(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_ag(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U6_ag(X, Y, U, V, perm_out_ag(Z, V)) -> perm_out_ag(.(X, .(Y, [])), .(U, .(V, []))) 9.50/3.36 U1_ag(X, Y, perm_out_ag(X, Y)) -> U2_ag(X, Y, sorted_in_g(Y)) 9.50/3.36 sorted_in_g([]) -> sorted_out_g([]) 9.50/3.36 sorted_in_g(.(X, [])) -> sorted_out_g(.(X, [])) 9.50/3.36 sorted_in_g(.(X, .(Y, Z))) -> U3_g(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 U3_g(X, Y, Z, le_out_gg(X, Y)) -> U4_g(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U4_g(X, Y, Z, sorted_out_g(.(Y, Z))) -> sorted_out_g(.(X, .(Y, Z))) 9.50/3.36 U2_ag(X, Y, sorted_out_g(Y)) -> slowsort_out_ag(X, Y) 9.50/3.36 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 slowsort_in_ag(x1, x2) = slowsort_in_ag(x2) 9.50/3.36 9.50/3.36 U1_ag(x1, x2, x3) = U1_ag(x2, x3) 9.50/3.36 9.50/3.36 perm_in_ag(x1, x2) = perm_in_ag(x2) 9.50/3.36 9.50/3.36 [] = [] 9.50/3.36 9.50/3.36 perm_out_ag(x1, x2) = perm_out_ag 9.50/3.36 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 U5_ag(x1, x2, x3, x4, x5) = U5_ag(x4, x5) 9.50/3.36 9.50/3.36 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.36 9.50/3.36 delete_out_gaa(x1, x2, x3) = delete_out_gaa 9.50/3.36 9.50/3.36 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x5) 9.50/3.36 9.50/3.36 U6_ag(x1, x2, x3, x4, x5) = U6_ag(x5) 9.50/3.36 9.50/3.36 U2_ag(x1, x2, x3) = U2_ag(x3) 9.50/3.36 9.50/3.36 sorted_in_g(x1) = sorted_in_g(x1) 9.50/3.36 9.50/3.36 sorted_out_g(x1) = sorted_out_g 9.50/3.36 9.50/3.36 U3_g(x1, x2, x3, x4) = U3_g(x2, x3, x4) 9.50/3.36 9.50/3.36 le_in_gg(x1, x2) = le_in_gg(x1, x2) 9.50/3.36 9.50/3.36 s(x1) = s(x1) 9.50/3.36 9.50/3.36 U8_gg(x1, x2, x3) = U8_gg(x3) 9.50/3.36 9.50/3.36 0 = 0 9.50/3.36 9.50/3.36 le_out_gg(x1, x2) = le_out_gg 9.50/3.36 9.50/3.36 U4_g(x1, x2, x3, x4) = U4_g(x4) 9.50/3.36 9.50/3.36 slowsort_out_ag(x1, x2) = slowsort_out_ag 9.50/3.36 9.50/3.36 DELETE_IN_GAA(x1, x2, x3) = DELETE_IN_GAA(x1) 9.50/3.36 9.50/3.36 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (60) UsableRulesProof (EQUIVALENT) 9.50/3.36 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (61) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 DELETE_IN_GAA(X, .(Y, Z), W) -> DELETE_IN_GAA(X, Z, W) 9.50/3.36 9.50/3.36 R is empty. 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 DELETE_IN_GAA(x1, x2, x3) = DELETE_IN_GAA(x1) 9.50/3.36 9.50/3.36 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (62) PiDPToQDPProof (SOUND) 9.50/3.36 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (63) 9.50/3.36 Obligation: 9.50/3.36 Q DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 DELETE_IN_GAA(X) -> DELETE_IN_GAA(X) 9.50/3.36 9.50/3.36 R is empty. 9.50/3.36 Q is empty. 9.50/3.36 We have to consider all (P,Q,R)-chains. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (64) NonTerminationLoopProof (COMPLETE) 9.50/3.36 We used the non-termination processor [FROCOS05] to show that the DP problem is infinite. 9.50/3.36 Found a loop by semiunifying a rule from P directly. 9.50/3.36 9.50/3.36 s = DELETE_IN_GAA(X) evaluates to t =DELETE_IN_GAA(X) 9.50/3.36 9.50/3.36 Thus s starts an infinite chain as s semiunifies with t with the following substitutions: 9.50/3.36 * Matcher: [ ] 9.50/3.36 * Semiunifier: [ ] 9.50/3.36 9.50/3.36 -------------------------------------------------------------------------------- 9.50/3.36 Rewriting sequence 9.50/3.36 9.50/3.36 The DP semiunifies directly so there is only one rewrite step from DELETE_IN_GAA(X) to DELETE_IN_GAA(X). 9.50/3.36 9.50/3.36 9.50/3.36 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (65) 9.50/3.36 NO 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (66) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 U5_AG(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> PERM_IN_AG(Z, V) 9.50/3.36 PERM_IN_AG(.(X, .(Y, [])), .(U, .(V, []))) -> U5_AG(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 slowsort_in_ag(X, Y) -> U1_ag(X, Y, perm_in_ag(X, Y)) 9.50/3.36 perm_in_ag([], []) -> perm_out_ag([], []) 9.50/3.36 perm_in_ag(.(X, .(Y, [])), .(U, .(V, []))) -> U5_ag(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.50/3.36 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.50/3.36 U5_ag(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> U6_ag(X, Y, U, V, perm_in_ag(Z, V)) 9.50/3.36 U6_ag(X, Y, U, V, perm_out_ag(Z, V)) -> perm_out_ag(.(X, .(Y, [])), .(U, .(V, []))) 9.50/3.36 U1_ag(X, Y, perm_out_ag(X, Y)) -> U2_ag(X, Y, sorted_in_g(Y)) 9.50/3.36 sorted_in_g([]) -> sorted_out_g([]) 9.50/3.36 sorted_in_g(.(X, [])) -> sorted_out_g(.(X, [])) 9.50/3.36 sorted_in_g(.(X, .(Y, Z))) -> U3_g(X, Y, Z, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(s(X), s(Y)) -> U8_gg(X, Y, le_in_gg(X, Y)) 9.50/3.36 le_in_gg(0, s(X)) -> le_out_gg(0, s(X)) 9.50/3.36 le_in_gg(0, 0) -> le_out_gg(0, 0) 9.50/3.36 U8_gg(X, Y, le_out_gg(X, Y)) -> le_out_gg(s(X), s(Y)) 9.50/3.36 U3_g(X, Y, Z, le_out_gg(X, Y)) -> U4_g(X, Y, Z, sorted_in_g(.(Y, Z))) 9.50/3.36 U4_g(X, Y, Z, sorted_out_g(.(Y, Z))) -> sorted_out_g(.(X, .(Y, Z))) 9.50/3.36 U2_ag(X, Y, sorted_out_g(Y)) -> slowsort_out_ag(X, Y) 9.50/3.36 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 slowsort_in_ag(x1, x2) = slowsort_in_ag(x2) 9.50/3.36 9.50/3.36 U1_ag(x1, x2, x3) = U1_ag(x2, x3) 9.50/3.36 9.50/3.36 perm_in_ag(x1, x2) = perm_in_ag(x2) 9.50/3.36 9.50/3.36 [] = [] 9.50/3.36 9.50/3.36 perm_out_ag(x1, x2) = perm_out_ag 9.50/3.36 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 U5_ag(x1, x2, x3, x4, x5) = U5_ag(x4, x5) 9.50/3.36 9.50/3.36 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.36 9.50/3.36 delete_out_gaa(x1, x2, x3) = delete_out_gaa 9.50/3.36 9.50/3.36 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x5) 9.50/3.36 9.50/3.36 U6_ag(x1, x2, x3, x4, x5) = U6_ag(x5) 9.50/3.36 9.50/3.36 U2_ag(x1, x2, x3) = U2_ag(x3) 9.50/3.36 9.50/3.36 sorted_in_g(x1) = sorted_in_g(x1) 9.50/3.36 9.50/3.36 sorted_out_g(x1) = sorted_out_g 9.50/3.36 9.50/3.36 U3_g(x1, x2, x3, x4) = U3_g(x2, x3, x4) 9.50/3.36 9.50/3.36 le_in_gg(x1, x2) = le_in_gg(x1, x2) 9.50/3.36 9.50/3.36 s(x1) = s(x1) 9.50/3.36 9.50/3.36 U8_gg(x1, x2, x3) = U8_gg(x3) 9.50/3.36 9.50/3.36 0 = 0 9.50/3.36 9.50/3.36 le_out_gg(x1, x2) = le_out_gg 9.50/3.36 9.50/3.36 U4_g(x1, x2, x3, x4) = U4_g(x4) 9.50/3.36 9.50/3.36 slowsort_out_ag(x1, x2) = slowsort_out_ag 9.50/3.36 9.50/3.36 PERM_IN_AG(x1, x2) = PERM_IN_AG(x2) 9.50/3.36 9.50/3.36 U5_AG(x1, x2, x3, x4, x5) = U5_AG(x4, x5) 9.50/3.36 9.50/3.36 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (67) UsableRulesProof (EQUIVALENT) 9.50/3.36 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (68) 9.50/3.36 Obligation: 9.50/3.36 Pi DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 U5_AG(X, Y, U, V, delete_out_gaa(U, .(X, Y), Z)) -> PERM_IN_AG(Z, V) 9.50/3.36 PERM_IN_AG(.(X, .(Y, [])), .(U, .(V, []))) -> U5_AG(X, Y, U, V, delete_in_gaa(U, .(X, Y), Z)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 delete_in_gaa(X, .(X, Y), Y) -> delete_out_gaa(X, .(X, Y), Y) 9.50/3.36 delete_in_gaa(X, .(Y, Z), W) -> U7_gaa(X, Y, Z, W, delete_in_gaa(X, Z, W)) 9.50/3.36 U7_gaa(X, Y, Z, W, delete_out_gaa(X, Z, W)) -> delete_out_gaa(X, .(Y, Z), W) 9.50/3.36 9.50/3.36 The argument filtering Pi contains the following mapping: 9.50/3.36 [] = [] 9.50/3.36 9.50/3.36 .(x1, x2) = .(x1, x2) 9.50/3.36 9.50/3.36 delete_in_gaa(x1, x2, x3) = delete_in_gaa(x1) 9.50/3.36 9.50/3.36 delete_out_gaa(x1, x2, x3) = delete_out_gaa 9.50/3.36 9.50/3.36 U7_gaa(x1, x2, x3, x4, x5) = U7_gaa(x5) 9.50/3.36 9.50/3.36 PERM_IN_AG(x1, x2) = PERM_IN_AG(x2) 9.50/3.36 9.50/3.36 U5_AG(x1, x2, x3, x4, x5) = U5_AG(x4, x5) 9.50/3.36 9.50/3.36 9.50/3.36 We have to consider all (P,R,Pi)-chains 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (69) PiDPToQDPProof (SOUND) 9.50/3.36 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (70) 9.50/3.36 Obligation: 9.50/3.36 Q DP problem: 9.50/3.36 The TRS P consists of the following rules: 9.50/3.36 9.50/3.36 U5_AG(V, delete_out_gaa) -> PERM_IN_AG(V) 9.50/3.36 PERM_IN_AG(.(U, .(V, []))) -> U5_AG(V, delete_in_gaa(U)) 9.50/3.36 9.50/3.36 The TRS R consists of the following rules: 9.50/3.36 9.50/3.36 delete_in_gaa(X) -> delete_out_gaa 9.50/3.36 delete_in_gaa(X) -> U7_gaa(delete_in_gaa(X)) 9.50/3.36 U7_gaa(delete_out_gaa) -> delete_out_gaa 9.50/3.36 9.50/3.36 The set Q consists of the following terms: 9.50/3.36 9.50/3.36 delete_in_gaa(x0) 9.50/3.36 U7_gaa(x0) 9.50/3.36 9.50/3.36 We have to consider all (P,Q,R)-chains. 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (71) QDPSizeChangeProof (EQUIVALENT) 9.50/3.36 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. 9.50/3.36 9.50/3.36 From the DPs we obtained the following set of size-change graphs: 9.50/3.36 *PERM_IN_AG(.(U, .(V, []))) -> U5_AG(V, delete_in_gaa(U)) 9.50/3.36 The graph contains the following edges 1 > 1 9.50/3.36 9.50/3.36 9.50/3.36 *U5_AG(V, delete_out_gaa) -> PERM_IN_AG(V) 9.50/3.36 The graph contains the following edges 1 >= 1 9.50/3.36 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (72) 9.50/3.36 YES 9.50/3.36 9.50/3.36 ---------------------------------------- 9.50/3.36 9.50/3.36 (73) PrologToIRSwTTransformerProof (SOUND) 9.50/3.36 Transformed Prolog program to IRSwT according to method in Master Thesis of A. Weinert 9.50/3.36 9.50/3.36 { 9.50/3.36 "root": 5, 9.50/3.36 "program": { 9.50/3.36 "directives": [], 9.50/3.36 "clauses": [ 9.50/3.36 [ 9.50/3.36 "(slowsort X Y)", 9.50/3.36 "(',' (perm X Y) (sorted Y))" 9.50/3.36 ], 9.50/3.36 [ 9.50/3.36 "(sorted ([]))", 9.50/3.36 null 9.50/3.36 ], 9.50/3.36 [ 9.50/3.36 "(sorted (. X ([])))", 9.50/3.36 null 9.50/3.36 ], 9.50/3.36 [ 9.50/3.36 "(sorted (. X (. Y Z)))", 9.50/3.36 "(',' (le X Y) (sorted (. Y Z)))" 9.50/3.36 ], 9.50/3.36 [ 9.50/3.36 "(perm ([]) ([]))", 9.50/3.36 null 9.50/3.36 ], 9.50/3.36 [ 9.50/3.36 "(perm (. X (. Y ([]))) (. U (. V ([]))))", 9.50/3.36 "(',' (delete U (. X Y) Z) (perm Z V))" 9.50/3.36 ], 9.50/3.36 [ 9.50/3.36 "(delete X (. X Y) Y)", 9.50/3.36 null 9.50/3.36 ], 9.50/3.36 [ 9.50/3.36 "(delete X (. Y Z) W)", 9.50/3.36 "(delete X Z W)" 9.50/3.36 ], 9.50/3.36 [ 9.50/3.36 "(le (s X) (s Y))", 9.50/3.36 "(le X Y)" 9.50/3.36 ], 9.50/3.36 [ 9.50/3.36 "(le (0) (s X))", 9.50/3.36 null 9.50/3.36 ], 9.50/3.36 [ 9.50/3.36 "(le (0) (0))", 9.50/3.36 null 9.50/3.36 ] 9.50/3.36 ] 9.50/3.36 }, 9.50/3.36 "graph": { 9.50/3.36 "nodes": { 9.50/3.36 "44": { 9.50/3.36 "goal": [ 9.50/3.36 { 9.50/3.36 "clause": 6, 9.50/3.36 "scope": 3, 9.50/3.36 "term": "(delete T21 (. T23 T24) X20)" 9.50/3.36 }, 9.50/3.36 { 9.50/3.36 "clause": 7, 9.50/3.36 "scope": 3, 9.50/3.36 "term": "(delete T21 (. T23 T24) X20)" 9.50/3.37 } 9.50/3.37 ], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T21"], 9.50/3.37 "free": ["X20"], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "46": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": 6, 9.50/3.37 "scope": 3, 9.50/3.37 "term": "(delete T21 (. T23 T24) X20)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T21"], 9.50/3.37 "free": ["X20"], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "47": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": 7, 9.50/3.37 "scope": 3, 9.50/3.37 "term": "(delete T21 (. T23 T24) X20)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T21"], 9.50/3.37 "free": ["X20"], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "type": "Nodes", 9.50/3.37 "50": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(true)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "51": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "52": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "11": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(',' (perm T10 T9) (sorted T9))" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T9"], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "56": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(delete T55 T58 X57)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T55"], 9.50/3.37 "free": ["X57"], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "58": { 9.50/3.37 "goal": [ 9.50/3.37 { 9.50/3.37 "clause": 6, 9.50/3.37 "scope": 4, 9.50/3.37 "term": "(delete T55 T58 X57)" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "clause": 7, 9.50/3.37 "scope": 4, 9.50/3.37 "term": "(delete T55 T58 X57)" 9.50/3.37 } 9.50/3.37 ], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T55"], 9.50/3.37 "free": ["X57"], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "123": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(',' (le T98 T99) (sorted (. T99 T100)))" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [ 9.50/3.37 "T98", 9.50/3.37 "T99", 9.50/3.37 "T100" 9.50/3.37 ], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "124": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "125": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(le T98 T99)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [ 9.50/3.37 "T98", 9.50/3.37 "T99" 9.50/3.37 ], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "5": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(slowsort T1 T2)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T2"], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "126": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(sorted (. T99 T100))" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [ 9.50/3.37 "T99", 9.50/3.37 "T100" 9.50/3.37 ], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "6": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": 0, 9.50/3.37 "scope": 1, 9.50/3.37 "term": "(slowsort T1 T2)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T2"], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "127": { 9.50/3.37 "goal": [ 9.50/3.37 { 9.50/3.37 "clause": 8, 9.50/3.37 "scope": 6, 9.50/3.37 "term": "(le T98 T99)" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "clause": 9, 9.50/3.37 "scope": 6, 9.50/3.37 "term": "(le T98 T99)" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "clause": 10, 9.50/3.37 "scope": 6, 9.50/3.37 "term": "(le T98 T99)" 9.50/3.37 } 9.50/3.37 ], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [ 9.50/3.37 "T98", 9.50/3.37 "T99" 9.50/3.37 ], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "128": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": 8, 9.50/3.37 "scope": 6, 9.50/3.37 "term": "(le T98 T99)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [ 9.50/3.37 "T98", 9.50/3.37 "T99" 9.50/3.37 ], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "129": { 9.50/3.37 "goal": [ 9.50/3.37 { 9.50/3.37 "clause": 9, 9.50/3.37 "scope": 6, 9.50/3.37 "term": "(le T98 T99)" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "clause": 10, 9.50/3.37 "scope": 6, 9.50/3.37 "term": "(le T98 T99)" 9.50/3.37 } 9.50/3.37 ], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [ 9.50/3.37 "T98", 9.50/3.37 "T99" 9.50/3.37 ], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "60": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": 6, 9.50/3.37 "scope": 4, 9.50/3.37 "term": "(delete T55 T58 X57)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T55"], 9.50/3.37 "free": ["X57"], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "61": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": 7, 9.50/3.37 "scope": 4, 9.50/3.37 "term": "(delete T55 T58 X57)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T55"], 9.50/3.37 "free": ["X57"], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "20": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(perm T10 T9)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T9"], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "22": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(sorted T9)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T9"], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "67": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(true)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "24": { 9.50/3.37 "goal": [ 9.50/3.37 { 9.50/3.37 "clause": 4, 9.50/3.37 "scope": 2, 9.50/3.37 "term": "(perm T10 T9)" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "clause": 5, 9.50/3.37 "scope": 2, 9.50/3.37 "term": "(perm T10 T9)" 9.50/3.37 } 9.50/3.37 ], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T9"], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "68": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "69": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "26": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": 4, 9.50/3.37 "scope": 2, 9.50/3.37 "term": "(perm T10 T9)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T9"], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "28": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": 5, 9.50/3.37 "scope": 2, 9.50/3.37 "term": "(perm T10 T9)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T9"], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "130": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(le T113 T114)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [ 9.50/3.37 "T113", 9.50/3.37 "T114" 9.50/3.37 ], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "174": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": 9, 9.50/3.37 "scope": 6, 9.50/3.37 "term": "(le T98 T99)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [ 9.50/3.37 "T98", 9.50/3.37 "T99" 9.50/3.37 ], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "175": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": 10, 9.50/3.37 "scope": 6, 9.50/3.37 "term": "(le T98 T99)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [ 9.50/3.37 "T98", 9.50/3.37 "T99" 9.50/3.37 ], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "178": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(true)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "179": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "136": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "70": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(delete T79 T82 X86)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T79"], 9.50/3.37 "free": ["X86"], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "71": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "72": { 9.50/3.37 "goal": [ 9.50/3.37 { 9.50/3.37 "clause": 1, 9.50/3.37 "scope": 5, 9.50/3.37 "term": "(sorted T9)" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "clause": 2, 9.50/3.37 "scope": 5, 9.50/3.37 "term": "(sorted T9)" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "clause": 3, 9.50/3.37 "scope": 5, 9.50/3.37 "term": "(sorted T9)" 9.50/3.37 } 9.50/3.37 ], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T9"], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "73": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": 1, 9.50/3.37 "scope": 5, 9.50/3.37 "term": "(sorted T9)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T9"], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "30": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(true)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "74": { 9.50/3.37 "goal": [ 9.50/3.37 { 9.50/3.37 "clause": 2, 9.50/3.37 "scope": 5, 9.50/3.37 "term": "(sorted T9)" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "clause": 3, 9.50/3.37 "scope": 5, 9.50/3.37 "term": "(sorted T9)" 9.50/3.37 } 9.50/3.37 ], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T9"], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "31": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "75": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(true)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "32": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "76": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "77": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "36": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(',' (delete T21 (. T23 T24) X20) (perm X20 T22))" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [ 9.50/3.37 "T21", 9.50/3.37 "T22" 9.50/3.37 ], 9.50/3.37 "free": ["X20"], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "37": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "180": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "181": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(true)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "183": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "186": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "100": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(true)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "101": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "102": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "40": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(delete T21 (. T23 T24) X20)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T21"], 9.50/3.37 "free": ["X20"], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "84": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": 2, 9.50/3.37 "scope": 5, 9.50/3.37 "term": "(sorted T9)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T9"], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "41": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(perm T29 T22)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T22"], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "86": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": 3, 9.50/3.37 "scope": 5, 9.50/3.37 "term": "(sorted T9)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T9"], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "edges": [ 9.50/3.37 { 9.50/3.37 "from": 5, 9.50/3.37 "to": 6, 9.50/3.37 "label": "CASE" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 6, 9.50/3.37 "to": 11, 9.50/3.37 "label": "ONLY EVAL with clause\nslowsort(X5, X6) :- ','(perm(X5, X6), sorted(X6)).\nand substitutionT1 -> T10,\nX5 -> T10,\nT2 -> T9,\nX6 -> T9,\nT8 -> T10" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 11, 9.50/3.37 "to": 20, 9.50/3.37 "label": "SPLIT 1" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 11, 9.50/3.37 "to": 22, 9.50/3.37 "label": "SPLIT 2\nnew knowledge:\nT9 is ground" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 20, 9.50/3.37 "to": 24, 9.50/3.37 "label": "CASE" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 22, 9.50/3.37 "to": 72, 9.50/3.37 "label": "CASE" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 24, 9.50/3.37 "to": 26, 9.50/3.37 "label": "PARALLEL" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 24, 9.50/3.37 "to": 28, 9.50/3.37 "label": "PARALLEL" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 26, 9.50/3.37 "to": 30, 9.50/3.37 "label": "EVAL with clause\nperm([], []).\nand substitutionT10 -> [],\nT9 -> []" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 26, 9.50/3.37 "to": 31, 9.50/3.37 "label": "EVAL-BACKTRACK" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 28, 9.50/3.37 "to": 36, 9.50/3.37 "label": "EVAL with clause\nperm(.(X16, .(X17, [])), .(X18, .(X19, []))) :- ','(delete(X18, .(X16, X17), X20), perm(X20, X19)).\nand substitutionX16 -> T23,\nX17 -> T24,\nT10 -> .(T23, .(T24, [])),\nX18 -> T21,\nX19 -> T22,\nT9 -> .(T21, .(T22, [])),\nT19 -> T23,\nT20 -> T24" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 28, 9.50/3.37 "to": 37, 9.50/3.37 "label": "EVAL-BACKTRACK" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 30, 9.50/3.37 "to": 32, 9.50/3.37 "label": "SUCCESS" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 36, 9.50/3.37 "to": 40, 9.50/3.37 "label": "SPLIT 1" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 36, 9.50/3.37 "to": 41, 9.50/3.37 "label": "SPLIT 2\nnew knowledge:\nT21 is ground\nreplacements:X20 -> T29" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 40, 9.50/3.37 "to": 44, 9.50/3.37 "label": "CASE" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 41, 9.50/3.37 "to": 20, 9.50/3.37 "label": "INSTANCE with matching:\nT10 -> T29\nT9 -> T22" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 44, 9.50/3.37 "to": 46, 9.50/3.37 "label": "PARALLEL" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 44, 9.50/3.37 "to": 47, 9.50/3.37 "label": "PARALLEL" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 46, 9.50/3.37 "to": 50, 9.50/3.37 "label": "EVAL with clause\ndelete(X37, .(X37, X38), X38).\nand substitutionT21 -> T42,\nX37 -> T42,\nT23 -> T42,\nT24 -> T43,\nX38 -> T43,\nX20 -> T43" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 46, 9.50/3.37 "to": 51, 9.50/3.37 "label": "EVAL-BACKTRACK" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 47, 9.50/3.37 "to": 56, 9.50/3.37 "label": "ONLY EVAL with clause\ndelete(X53, .(X54, X55), X56) :- delete(X53, X55, X56).\nand substitutionT21 -> T55,\nX53 -> T55,\nT23 -> T56,\nX54 -> T56,\nT24 -> T58,\nX55 -> T58,\nX20 -> X57,\nX56 -> X57,\nT57 -> T58" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 50, 9.50/3.37 "to": 52, 9.50/3.37 "label": "SUCCESS" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 56, 9.50/3.37 "to": 58, 9.50/3.37 "label": "CASE" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 58, 9.50/3.37 "to": 60, 9.50/3.37 "label": "PARALLEL" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 58, 9.50/3.37 "to": 61, 9.50/3.37 "label": "PARALLEL" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 60, 9.50/3.37 "to": 67, 9.50/3.37 "label": "EVAL with clause\ndelete(X70, .(X70, X71), X71).\nand substitutionT55 -> T71,\nX70 -> T71,\nX71 -> T72,\nT58 -> .(T71, T72),\nX57 -> T72" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 60, 9.50/3.37 "to": 68, 9.50/3.37 "label": "EVAL-BACKTRACK" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 61, 9.50/3.37 "to": 70, 9.50/3.37 "label": "EVAL with clause\ndelete(X82, .(X83, X84), X85) :- delete(X82, X84, X85).\nand substitutionT55 -> T79,\nX82 -> T79,\nX83 -> T80,\nX84 -> T82,\nT58 -> .(T80, T82),\nX57 -> X86,\nX85 -> X86,\nT81 -> T82" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 61, 9.50/3.37 "to": 71, 9.50/3.37 "label": "EVAL-BACKTRACK" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 67, 9.50/3.37 "to": 69, 9.50/3.37 "label": "SUCCESS" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 70, 9.50/3.37 "to": 56, 9.50/3.37 "label": "INSTANCE with matching:\nT55 -> T79\nT58 -> T82\nX57 -> X86" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 72, 9.50/3.37 "to": 73, 9.50/3.37 "label": "PARALLEL" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 72, 9.50/3.37 "to": 74, 9.50/3.37 "label": "PARALLEL" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 73, 9.50/3.37 "to": 75, 9.50/3.37 "label": "EVAL with clause\nsorted([]).\nand substitutionT9 -> []" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 73, 9.50/3.37 "to": 76, 9.50/3.37 "label": "EVAL-BACKTRACK" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 74, 9.50/3.37 "to": 84, 9.50/3.37 "label": "PARALLEL" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 74, 9.50/3.37 "to": 86, 9.50/3.37 "label": "PARALLEL" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 75, 9.50/3.37 "to": 77, 9.50/3.37 "label": "SUCCESS" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 84, 9.50/3.37 "to": 100, 9.50/3.37 "label": "EVAL with clause\nsorted(.(X95, [])).\nand substitutionX95 -> T91,\nT9 -> .(T91, [])" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 84, 9.50/3.37 "to": 101, 9.50/3.37 "label": "EVAL-BACKTRACK" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 86, 9.50/3.37 "to": 123, 9.50/3.37 "label": "EVAL with clause\nsorted(.(X102, .(X103, X104))) :- ','(le(X102, X103), sorted(.(X103, X104))).\nand substitutionX102 -> T98,\nX103 -> T99,\nX104 -> T100,\nT9 -> .(T98, .(T99, T100))" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 86, 9.50/3.37 "to": 124, 9.50/3.37 "label": "EVAL-BACKTRACK" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 100, 9.50/3.37 "to": 102, 9.50/3.37 "label": "SUCCESS" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 123, 9.50/3.37 "to": 125, 9.50/3.37 "label": "SPLIT 1" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 123, 9.50/3.37 "to": 126, 9.50/3.37 "label": "SPLIT 2\nnew knowledge:\nT98 is ground\nT99 is ground" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 125, 9.50/3.37 "to": 127, 9.50/3.37 "label": "CASE" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 126, 9.50/3.37 "to": 22, 9.50/3.37 "label": "INSTANCE with matching:\nT9 -> .(T99, T100)" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 127, 9.50/3.37 "to": 128, 9.50/3.37 "label": "PARALLEL" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 127, 9.50/3.37 "to": 129, 9.50/3.37 "label": "PARALLEL" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 128, 9.50/3.37 "to": 130, 9.50/3.37 "label": "EVAL with clause\nle(s(X117), s(X118)) :- le(X117, X118).\nand substitutionX117 -> T113,\nT98 -> s(T113),\nX118 -> T114,\nT99 -> s(T114)" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 128, 9.50/3.37 "to": 136, 9.50/3.37 "label": "EVAL-BACKTRACK" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 129, 9.50/3.37 "to": 174, 9.50/3.37 "label": "PARALLEL" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 129, 9.50/3.37 "to": 175, 9.50/3.37 "label": "PARALLEL" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 130, 9.50/3.37 "to": 125, 9.50/3.37 "label": "INSTANCE with matching:\nT98 -> T113\nT99 -> T114" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 174, 9.50/3.37 "to": 178, 9.50/3.37 "label": "EVAL with clause\nle(0, s(X125)).\nand substitutionT98 -> 0,\nX125 -> T121,\nT99 -> s(T121)" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 174, 9.50/3.37 "to": 179, 9.50/3.37 "label": "EVAL-BACKTRACK" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 175, 9.50/3.37 "to": 181, 9.50/3.37 "label": "EVAL with clause\nle(0, 0).\nand substitutionT98 -> 0,\nT99 -> 0" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 175, 9.50/3.37 "to": 183, 9.50/3.37 "label": "EVAL-BACKTRACK" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 178, 9.50/3.37 "to": 180, 9.50/3.37 "label": "SUCCESS" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "from": 181, 9.50/3.37 "to": 186, 9.50/3.37 "label": "SUCCESS" 9.50/3.37 } 9.50/3.37 ], 9.50/3.37 "type": "Graph" 9.50/3.37 } 9.50/3.37 } 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (74) 9.50/3.37 Complex Obligation (AND) 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (75) 9.50/3.37 Obligation: 9.50/3.37 Rules: 9.50/3.37 f125_in(T98, T99) -> f127_in(T98, T99) :|: TRUE 9.50/3.37 f127_out(x, x1) -> f125_out(x, x1) :|: TRUE 9.50/3.37 f136_out -> f128_out(x2, x3) :|: TRUE 9.50/3.37 f130_out(T113, T114) -> f128_out(s(T113), s(T114)) :|: TRUE 9.50/3.37 f128_in(s(x4), s(x5)) -> f130_in(x4, x5) :|: TRUE 9.50/3.37 f128_in(x6, x7) -> f136_in :|: TRUE 9.50/3.37 f125_out(x8, x9) -> f130_out(x8, x9) :|: TRUE 9.50/3.37 f130_in(x10, x11) -> f125_in(x10, x11) :|: TRUE 9.50/3.37 f129_out(x12, x13) -> f127_out(x12, x13) :|: TRUE 9.50/3.37 f128_out(x14, x15) -> f127_out(x14, x15) :|: TRUE 9.50/3.37 f127_in(x16, x17) -> f129_in(x16, x17) :|: TRUE 9.50/3.37 f127_in(x18, x19) -> f128_in(x18, x19) :|: TRUE 9.50/3.37 f5_in(T2) -> f6_in(T2) :|: TRUE 9.50/3.37 f6_out(x20) -> f5_out(x20) :|: TRUE 9.50/3.37 f11_out(T9) -> f6_out(T9) :|: TRUE 9.50/3.37 f6_in(x21) -> f11_in(x21) :|: TRUE 9.50/3.37 f22_out(x22) -> f11_out(x22) :|: TRUE 9.50/3.37 f11_in(x23) -> f20_in(x23) :|: TRUE 9.50/3.37 f20_out(x24) -> f22_in(x24) :|: TRUE 9.50/3.37 f72_out(x25) -> f22_out(x25) :|: TRUE 9.50/3.37 f22_in(x26) -> f72_in(x26) :|: TRUE 9.50/3.37 f72_in(x27) -> f73_in(x27) :|: TRUE 9.50/3.37 f74_out(x28) -> f72_out(x28) :|: TRUE 9.50/3.37 f73_out(x29) -> f72_out(x29) :|: TRUE 9.50/3.37 f72_in(x30) -> f74_in(x30) :|: TRUE 9.50/3.37 f74_in(x31) -> f84_in(x31) :|: TRUE 9.50/3.37 f86_out(x32) -> f74_out(x32) :|: TRUE 9.50/3.37 f84_out(x33) -> f74_out(x33) :|: TRUE 9.50/3.37 f74_in(x34) -> f86_in(x34) :|: TRUE 9.50/3.37 f86_in(x35) -> f124_in :|: TRUE 9.50/3.37 f86_in(.(x36, .(x37, x38))) -> f123_in(x36, x37, x38) :|: TRUE 9.50/3.37 f124_out -> f86_out(x39) :|: TRUE 9.50/3.37 f123_out(x40, x41, x42) -> f86_out(.(x40, .(x41, x42))) :|: TRUE 9.50/3.37 f126_out(x43, x44) -> f123_out(x45, x43, x44) :|: TRUE 9.50/3.37 f123_in(x46, x47, x48) -> f125_in(x46, x47) :|: TRUE 9.50/3.37 f125_out(x49, x50) -> f126_in(x50, x51) :|: TRUE 9.50/3.37 Start term: f5_in(T2) 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (76) IRSwTSimpleDependencyGraphProof (EQUIVALENT) 9.50/3.37 Constructed simple dependency graph. 9.50/3.37 9.50/3.37 Simplified to the following IRSwTs: 9.50/3.37 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (77) 9.50/3.37 TRUE 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (78) 9.50/3.37 Obligation: 9.50/3.37 Rules: 9.50/3.37 f58_in(T55) -> f60_in(T55) :|: TRUE 9.50/3.37 f61_out(x) -> f58_out(x) :|: TRUE 9.50/3.37 f60_out(x1) -> f58_out(x1) :|: TRUE 9.50/3.37 f58_in(x2) -> f61_in(x2) :|: TRUE 9.50/3.37 f71_out -> f61_out(x3) :|: TRUE 9.50/3.37 f61_in(x4) -> f71_in :|: TRUE 9.50/3.37 f70_out(T79) -> f61_out(T79) :|: TRUE 9.50/3.37 f61_in(x5) -> f70_in(x5) :|: TRUE 9.50/3.37 f70_in(x6) -> f56_in(x6) :|: TRUE 9.50/3.37 f56_out(x7) -> f70_out(x7) :|: TRUE 9.50/3.37 f56_in(x8) -> f58_in(x8) :|: TRUE 9.50/3.37 f58_out(x9) -> f56_out(x9) :|: TRUE 9.50/3.37 f5_in(T2) -> f6_in(T2) :|: TRUE 9.50/3.37 f6_out(x10) -> f5_out(x10) :|: TRUE 9.50/3.37 f11_out(T9) -> f6_out(T9) :|: TRUE 9.50/3.37 f6_in(x11) -> f11_in(x11) :|: TRUE 9.50/3.37 f22_out(x12) -> f11_out(x12) :|: TRUE 9.50/3.37 f11_in(x13) -> f20_in(x13) :|: TRUE 9.50/3.37 f20_out(x14) -> f22_in(x14) :|: TRUE 9.50/3.37 f24_out(x15) -> f20_out(x15) :|: TRUE 9.50/3.37 f20_in(x16) -> f24_in(x16) :|: TRUE 9.50/3.37 f28_out(x17) -> f24_out(x17) :|: TRUE 9.50/3.37 f26_out(x18) -> f24_out(x18) :|: TRUE 9.50/3.37 f24_in(x19) -> f28_in(x19) :|: TRUE 9.50/3.37 f24_in(x20) -> f26_in(x20) :|: TRUE 9.50/3.37 f37_out -> f28_out(x21) :|: TRUE 9.50/3.37 f28_in(.(T21, .(T22, []))) -> f36_in(T21, T22) :|: TRUE 9.50/3.37 f28_in(x22) -> f37_in :|: TRUE 9.50/3.37 f36_out(x23, x24) -> f28_out(.(x23, .(x24, []))) :|: TRUE 9.50/3.37 f36_in(x25, x26) -> f40_in(x25) :|: TRUE 9.50/3.37 f41_out(x27) -> f36_out(x28, x27) :|: TRUE 9.50/3.37 f40_out(x29) -> f41_in(x30) :|: TRUE 9.50/3.37 f44_out(x31) -> f40_out(x31) :|: TRUE 9.50/3.37 f40_in(x32) -> f44_in(x32) :|: TRUE 9.50/3.37 f44_in(x33) -> f47_in(x33) :|: TRUE 9.50/3.37 f47_out(x34) -> f44_out(x34) :|: TRUE 9.50/3.37 f46_out(x35) -> f44_out(x35) :|: TRUE 9.50/3.37 f44_in(x36) -> f46_in(x36) :|: TRUE 9.50/3.37 f47_in(x37) -> f56_in(x37) :|: TRUE 9.50/3.37 f56_out(x38) -> f47_out(x38) :|: TRUE 9.50/3.37 Start term: f5_in(T2) 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (79) IRSwTSimpleDependencyGraphProof (EQUIVALENT) 9.50/3.37 Constructed simple dependency graph. 9.50/3.37 9.50/3.37 Simplified to the following IRSwTs: 9.50/3.37 9.50/3.37 intTRSProblem: 9.50/3.37 f58_in(x2) -> f61_in(x2) :|: TRUE 9.50/3.37 f61_in(x5) -> f70_in(x5) :|: TRUE 9.50/3.37 f70_in(x6) -> f56_in(x6) :|: TRUE 9.50/3.37 f56_in(x8) -> f58_in(x8) :|: TRUE 9.50/3.37 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (80) 9.50/3.37 Obligation: 9.50/3.37 Rules: 9.50/3.37 f58_in(x2) -> f61_in(x2) :|: TRUE 9.50/3.37 f61_in(x5) -> f70_in(x5) :|: TRUE 9.50/3.37 f70_in(x6) -> f56_in(x6) :|: TRUE 9.50/3.37 f56_in(x8) -> f58_in(x8) :|: TRUE 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (81) IntTRSCompressionProof (EQUIVALENT) 9.50/3.37 Compressed rules. 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (82) 9.50/3.37 Obligation: 9.50/3.37 Rules: 9.50/3.37 f58_in(x2:0) -> f58_in(x2:0) :|: TRUE 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (83) IRSFormatTransformerProof (EQUIVALENT) 9.50/3.37 Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (84) 9.50/3.37 Obligation: 9.50/3.37 Rules: 9.50/3.37 f58_in(x2:0) -> f58_in(x2:0) :|: TRUE 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (85) IRSwTTerminationDigraphProof (EQUIVALENT) 9.50/3.37 Constructed termination digraph! 9.50/3.37 Nodes: 9.50/3.37 (1) f58_in(x2:0) -> f58_in(x2:0) :|: TRUE 9.50/3.37 9.50/3.37 Arcs: 9.50/3.37 (1) -> (1) 9.50/3.37 9.50/3.37 This digraph is fully evaluated! 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (86) 9.50/3.37 Obligation: 9.50/3.37 9.50/3.37 Termination digraph: 9.50/3.37 Nodes: 9.50/3.37 (1) f58_in(x2:0) -> f58_in(x2:0) :|: TRUE 9.50/3.37 9.50/3.37 Arcs: 9.50/3.37 (1) -> (1) 9.50/3.37 9.50/3.37 This digraph is fully evaluated! 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (87) FilterProof (EQUIVALENT) 9.50/3.37 Used the following sort dictionary for filtering: 9.50/3.37 f58_in(VARIABLE) 9.50/3.37 Replaced non-predefined constructor symbols by 0. 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (88) 9.50/3.37 Obligation: 9.50/3.37 Rules: 9.50/3.37 f58_in(x2:0) -> f58_in(x2:0) :|: TRUE 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (89) IntTRSPeriodicNontermProof (COMPLETE) 9.50/3.37 Normalized system to the following form: 9.50/3.37 f(pc, x2:0) -> f(1, x2:0) :|: pc = 1 && TRUE 9.50/3.37 Witness term starting non-terminating reduction: f(1, -8) 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (90) 9.50/3.37 NO 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (91) 9.50/3.37 Obligation: 9.50/3.37 Rules: 9.50/3.37 f72_in(T9) -> f73_in(T9) :|: TRUE 9.50/3.37 f74_out(x) -> f72_out(x) :|: TRUE 9.50/3.37 f73_out(x1) -> f72_out(x1) :|: TRUE 9.50/3.37 f72_in(x2) -> f74_in(x2) :|: TRUE 9.50/3.37 f125_in(T98, T99) -> f127_in(T98, T99) :|: TRUE 9.50/3.37 f127_out(x3, x4) -> f125_out(x3, x4) :|: TRUE 9.50/3.37 f178_in -> f178_out :|: TRUE 9.50/3.37 f74_in(x5) -> f84_in(x5) :|: TRUE 9.50/3.37 f86_out(x6) -> f74_out(x6) :|: TRUE 9.50/3.37 f84_out(x7) -> f74_out(x7) :|: TRUE 9.50/3.37 f74_in(x8) -> f86_in(x8) :|: TRUE 9.50/3.37 f136_out -> f128_out(x9, x10) :|: TRUE 9.50/3.37 f130_out(T113, T114) -> f128_out(s(T113), s(T114)) :|: TRUE 9.50/3.37 f128_in(s(x11), s(x12)) -> f130_in(x11, x12) :|: TRUE 9.50/3.37 f128_in(x13, x14) -> f136_in :|: TRUE 9.50/3.37 f125_out(x15, x16) -> f130_out(x15, x16) :|: TRUE 9.50/3.37 f130_in(x17, x18) -> f125_in(x17, x18) :|: TRUE 9.50/3.37 f181_in -> f181_out :|: TRUE 9.50/3.37 f72_out(x19) -> f22_out(x19) :|: TRUE 9.50/3.37 f22_in(x20) -> f72_in(x20) :|: TRUE 9.50/3.37 f183_out -> f175_out(x21, x22) :|: TRUE 9.50/3.37 f175_in(x23, x24) -> f183_in :|: TRUE 9.50/3.37 f181_out -> f175_out(0, 0) :|: TRUE 9.50/3.37 f175_in(0, 0) -> f181_in :|: TRUE 9.50/3.37 f126_out(x25, x26) -> f123_out(x27, x25, x26) :|: TRUE 9.50/3.37 f123_in(x28, x29, x30) -> f125_in(x28, x29) :|: TRUE 9.50/3.37 f125_out(x31, x32) -> f126_in(x32, x33) :|: TRUE 9.50/3.37 f129_out(x34, x35) -> f127_out(x34, x35) :|: TRUE 9.50/3.37 f128_out(x36, x37) -> f127_out(x36, x37) :|: TRUE 9.50/3.37 f127_in(x38, x39) -> f129_in(x38, x39) :|: TRUE 9.50/3.37 f127_in(x40, x41) -> f128_in(x40, x41) :|: TRUE 9.50/3.37 f22_out(.(x42, x43)) -> f126_out(x42, x43) :|: TRUE 9.50/3.37 f126_in(x44, x45) -> f22_in(.(x44, x45)) :|: TRUE 9.50/3.37 f86_in(x46) -> f124_in :|: TRUE 9.50/3.37 f86_in(.(x47, .(x48, x49))) -> f123_in(x47, x48, x49) :|: TRUE 9.50/3.37 f124_out -> f86_out(x50) :|: TRUE 9.50/3.37 f123_out(x51, x52, x53) -> f86_out(.(x51, .(x52, x53))) :|: TRUE 9.50/3.37 f129_in(x54, x55) -> f175_in(x54, x55) :|: TRUE 9.50/3.37 f174_out(x56, x57) -> f129_out(x56, x57) :|: TRUE 9.50/3.37 f129_in(x58, x59) -> f174_in(x58, x59) :|: TRUE 9.50/3.37 f175_out(x60, x61) -> f129_out(x60, x61) :|: TRUE 9.50/3.37 f179_out -> f174_out(x62, x63) :|: TRUE 9.50/3.37 f174_in(0, s(T121)) -> f178_in :|: TRUE 9.50/3.37 f174_in(x64, x65) -> f179_in :|: TRUE 9.50/3.37 f178_out -> f174_out(0, s(x66)) :|: TRUE 9.50/3.37 f5_in(T2) -> f6_in(T2) :|: TRUE 9.50/3.37 f6_out(x67) -> f5_out(x67) :|: TRUE 9.50/3.37 f11_out(x68) -> f6_out(x68) :|: TRUE 9.50/3.37 f6_in(x69) -> f11_in(x69) :|: TRUE 9.50/3.37 f22_out(x70) -> f11_out(x70) :|: TRUE 9.50/3.37 f11_in(x71) -> f20_in(x71) :|: TRUE 9.50/3.37 f20_out(x72) -> f22_in(x72) :|: TRUE 9.50/3.37 Start term: f5_in(T2) 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (92) IRSwTSimpleDependencyGraphProof (EQUIVALENT) 9.50/3.37 Constructed simple dependency graph. 9.50/3.37 9.50/3.37 Simplified to the following IRSwTs: 9.50/3.37 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (93) 9.50/3.37 TRUE 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (94) 9.50/3.37 Obligation: 9.50/3.37 Rules: 9.50/3.37 f28_out(T9) -> f24_out(T9) :|: TRUE 9.50/3.37 f26_out(x) -> f24_out(x) :|: TRUE 9.50/3.37 f24_in(x1) -> f28_in(x1) :|: TRUE 9.50/3.37 f24_in(x2) -> f26_in(x2) :|: TRUE 9.50/3.37 f50_in -> f50_out :|: TRUE 9.50/3.37 f20_out(T22) -> f41_out(T22) :|: TRUE 9.50/3.37 f41_in(x3) -> f20_in(x3) :|: TRUE 9.50/3.37 f24_out(x4) -> f20_out(x4) :|: TRUE 9.50/3.37 f20_in(x5) -> f24_in(x5) :|: TRUE 9.50/3.37 f70_in(T79) -> f56_in(T79) :|: TRUE 9.50/3.37 f56_out(x6) -> f70_out(x6) :|: TRUE 9.50/3.37 f56_in(T55) -> f58_in(T55) :|: TRUE 9.50/3.37 f58_out(x7) -> f56_out(x7) :|: TRUE 9.50/3.37 f46_in(T42) -> f50_in :|: TRUE 9.50/3.37 f51_out -> f46_out(T21) :|: TRUE 9.50/3.37 f46_in(x8) -> f51_in :|: TRUE 9.50/3.37 f50_out -> f46_out(x9) :|: TRUE 9.50/3.37 f37_out -> f28_out(x10) :|: TRUE 9.50/3.37 f28_in(.(x11, .(x12, []))) -> f36_in(x11, x12) :|: TRUE 9.50/3.37 f28_in(x13) -> f37_in :|: TRUE 9.50/3.37 f36_out(x14, x15) -> f28_out(.(x14, .(x15, []))) :|: TRUE 9.50/3.37 f58_in(x16) -> f60_in(x16) :|: TRUE 9.50/3.37 f61_out(x17) -> f58_out(x17) :|: TRUE 9.50/3.37 f60_out(x18) -> f58_out(x18) :|: TRUE 9.50/3.37 f58_in(x19) -> f61_in(x19) :|: TRUE 9.50/3.37 f71_out -> f61_out(x20) :|: TRUE 9.50/3.37 f61_in(x21) -> f71_in :|: TRUE 9.50/3.37 f70_out(x22) -> f61_out(x22) :|: TRUE 9.50/3.37 f61_in(x23) -> f70_in(x23) :|: TRUE 9.50/3.37 f36_in(x24, x25) -> f40_in(x24) :|: TRUE 9.50/3.37 f41_out(x26) -> f36_out(x27, x26) :|: TRUE 9.50/3.37 f40_out(x28) -> f41_in(x29) :|: TRUE 9.50/3.37 f44_out(x30) -> f40_out(x30) :|: TRUE 9.50/3.37 f40_in(x31) -> f44_in(x31) :|: TRUE 9.50/3.37 f47_in(x32) -> f56_in(x32) :|: TRUE 9.50/3.37 f56_out(x33) -> f47_out(x33) :|: TRUE 9.50/3.37 f67_in -> f67_out :|: TRUE 9.50/3.37 f60_in(T71) -> f67_in :|: TRUE 9.50/3.37 f60_in(x34) -> f68_in :|: TRUE 9.50/3.37 f68_out -> f60_out(x35) :|: TRUE 9.50/3.37 f67_out -> f60_out(x36) :|: TRUE 9.50/3.37 f44_in(x37) -> f47_in(x37) :|: TRUE 9.50/3.37 f47_out(x38) -> f44_out(x38) :|: TRUE 9.50/3.37 f46_out(x39) -> f44_out(x39) :|: TRUE 9.50/3.37 f44_in(x40) -> f46_in(x40) :|: TRUE 9.50/3.37 f5_in(T2) -> f6_in(T2) :|: TRUE 9.50/3.37 f6_out(x41) -> f5_out(x41) :|: TRUE 9.50/3.37 f11_out(x42) -> f6_out(x42) :|: TRUE 9.50/3.37 f6_in(x43) -> f11_in(x43) :|: TRUE 9.50/3.37 f22_out(x44) -> f11_out(x44) :|: TRUE 9.50/3.37 f11_in(x45) -> f20_in(x45) :|: TRUE 9.50/3.37 f20_out(x46) -> f22_in(x46) :|: TRUE 9.50/3.37 Start term: f5_in(T2) 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (95) IRSwTSimpleDependencyGraphProof (EQUIVALENT) 9.50/3.37 Constructed simple dependency graph. 9.50/3.37 9.50/3.37 Simplified to the following IRSwTs: 9.50/3.37 9.50/3.37 intTRSProblem: 9.50/3.37 f24_in(x1) -> f28_in(x1) :|: TRUE 9.50/3.37 f50_in -> f50_out :|: TRUE 9.50/3.37 f41_in(x3) -> f20_in(x3) :|: TRUE 9.50/3.37 f20_in(x5) -> f24_in(x5) :|: TRUE 9.50/3.37 f70_in(T79) -> f56_in(T79) :|: TRUE 9.50/3.37 f56_out(x6) -> f70_out(x6) :|: TRUE 9.50/3.37 f56_in(T55) -> f58_in(T55) :|: TRUE 9.50/3.37 f58_out(x7) -> f56_out(x7) :|: TRUE 9.50/3.37 f46_in(T42) -> f50_in :|: TRUE 9.50/3.37 f50_out -> f46_out(x9) :|: TRUE 9.50/3.37 f28_in(.(x11, .(x12, []))) -> f36_in(x11, x12) :|: TRUE 9.50/3.37 f58_in(x16) -> f60_in(x16) :|: TRUE 9.50/3.37 f61_out(x17) -> f58_out(x17) :|: TRUE 9.50/3.37 f60_out(x18) -> f58_out(x18) :|: TRUE 9.50/3.37 f58_in(x19) -> f61_in(x19) :|: TRUE 9.50/3.37 f70_out(x22) -> f61_out(x22) :|: TRUE 9.50/3.37 f61_in(x23) -> f70_in(x23) :|: TRUE 9.50/3.37 f36_in(x24, x25) -> f40_in(x24) :|: TRUE 9.50/3.37 f40_out(x28) -> f41_in(x29) :|: TRUE 9.50/3.37 f44_out(x30) -> f40_out(x30) :|: TRUE 9.50/3.37 f40_in(x31) -> f44_in(x31) :|: TRUE 9.50/3.37 f47_in(x32) -> f56_in(x32) :|: TRUE 9.50/3.37 f56_out(x33) -> f47_out(x33) :|: TRUE 9.50/3.37 f67_in -> f67_out :|: TRUE 9.50/3.37 f60_in(T71) -> f67_in :|: TRUE 9.50/3.37 f67_out -> f60_out(x36) :|: TRUE 9.50/3.37 f44_in(x37) -> f47_in(x37) :|: TRUE 9.50/3.37 f47_out(x38) -> f44_out(x38) :|: TRUE 9.50/3.37 f46_out(x39) -> f44_out(x39) :|: TRUE 9.50/3.37 f44_in(x40) -> f46_in(x40) :|: TRUE 9.50/3.37 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (96) 9.50/3.37 Obligation: 9.50/3.37 Rules: 9.50/3.37 f24_in(x1) -> f28_in(x1) :|: TRUE 9.50/3.37 f50_in -> f50_out :|: TRUE 9.50/3.37 f41_in(x3) -> f20_in(x3) :|: TRUE 9.50/3.37 f20_in(x5) -> f24_in(x5) :|: TRUE 9.50/3.37 f70_in(T79) -> f56_in(T79) :|: TRUE 9.50/3.37 f56_out(x6) -> f70_out(x6) :|: TRUE 9.50/3.37 f56_in(T55) -> f58_in(T55) :|: TRUE 9.50/3.37 f58_out(x7) -> f56_out(x7) :|: TRUE 9.50/3.37 f46_in(T42) -> f50_in :|: TRUE 9.50/3.37 f50_out -> f46_out(x9) :|: TRUE 9.50/3.37 f28_in(.(x11, .(x12, []))) -> f36_in(x11, x12) :|: TRUE 9.50/3.37 f58_in(x16) -> f60_in(x16) :|: TRUE 9.50/3.37 f61_out(x17) -> f58_out(x17) :|: TRUE 9.50/3.37 f60_out(x18) -> f58_out(x18) :|: TRUE 9.50/3.37 f58_in(x19) -> f61_in(x19) :|: TRUE 9.50/3.37 f70_out(x22) -> f61_out(x22) :|: TRUE 9.50/3.37 f61_in(x23) -> f70_in(x23) :|: TRUE 9.50/3.37 f36_in(x24, x25) -> f40_in(x24) :|: TRUE 9.50/3.37 f40_out(x28) -> f41_in(x29) :|: TRUE 9.50/3.37 f44_out(x30) -> f40_out(x30) :|: TRUE 9.50/3.37 f40_in(x31) -> f44_in(x31) :|: TRUE 9.50/3.37 f47_in(x32) -> f56_in(x32) :|: TRUE 9.50/3.37 f56_out(x33) -> f47_out(x33) :|: TRUE 9.50/3.37 f67_in -> f67_out :|: TRUE 9.50/3.37 f60_in(T71) -> f67_in :|: TRUE 9.50/3.37 f67_out -> f60_out(x36) :|: TRUE 9.50/3.37 f44_in(x37) -> f47_in(x37) :|: TRUE 9.50/3.37 f47_out(x38) -> f44_out(x38) :|: TRUE 9.50/3.37 f46_out(x39) -> f44_out(x39) :|: TRUE 9.50/3.37 f44_in(x40) -> f46_in(x40) :|: TRUE 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (97) IntTRSCompressionProof (EQUIVALENT) 9.50/3.37 Compressed rules. 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (98) 9.50/3.37 Obligation: 9.50/3.37 Rules: 9.50/3.37 f44_out(x30:0) -> f58_in(x11:0) :|: TRUE 9.50/3.37 f44_out(x) -> f44_out(x1) :|: TRUE 9.50/3.37 f58_out(x7:0) -> f44_out(x7:0) :|: TRUE 9.50/3.37 f58_in(x16:0) -> f58_out(x36:0) :|: TRUE 9.50/3.37 f58_out(x2) -> f58_out(x2) :|: TRUE 9.50/3.37 f58_in(x19:0) -> f58_in(x19:0) :|: TRUE 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (99) IRSFormatTransformerProof (EQUIVALENT) 9.50/3.37 Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (100) 9.50/3.37 Obligation: 9.50/3.37 Rules: 9.50/3.37 f44_out(x30:0) -> f58_in(x11:0) :|: TRUE 9.50/3.37 f44_out(x) -> f44_out(x1) :|: TRUE 9.50/3.37 f58_out(x7:0) -> f44_out(x7:0) :|: TRUE 9.50/3.37 f58_in(x16:0) -> f58_out(x36:0) :|: TRUE 9.50/3.37 f58_out(x2) -> f58_out(x2) :|: TRUE 9.50/3.37 f58_in(x19:0) -> f58_in(x19:0) :|: TRUE 9.50/3.37 9.50/3.37 ---------------------------------------- 9.50/3.37 9.50/3.37 (101) PrologToTRSTransformerProof (SOUND) 9.50/3.37 Transformed Prolog program to TRS. 9.50/3.37 9.50/3.37 { 9.50/3.37 "root": 2, 9.50/3.37 "program": { 9.50/3.37 "directives": [], 9.50/3.37 "clauses": [ 9.50/3.37 [ 9.50/3.37 "(slowsort X Y)", 9.50/3.37 "(',' (perm X Y) (sorted Y))" 9.50/3.37 ], 9.50/3.37 [ 9.50/3.37 "(sorted ([]))", 9.50/3.37 null 9.50/3.37 ], 9.50/3.37 [ 9.50/3.37 "(sorted (. X ([])))", 9.50/3.37 null 9.50/3.37 ], 9.50/3.37 [ 9.50/3.37 "(sorted (. X (. Y Z)))", 9.50/3.37 "(',' (le X Y) (sorted (. Y Z)))" 9.50/3.37 ], 9.50/3.37 [ 9.50/3.37 "(perm ([]) ([]))", 9.50/3.37 null 9.50/3.37 ], 9.50/3.37 [ 9.50/3.37 "(perm (. X (. Y ([]))) (. U (. V ([]))))", 9.50/3.37 "(',' (delete U (. X Y) Z) (perm Z V))" 9.50/3.37 ], 9.50/3.37 [ 9.50/3.37 "(delete X (. X Y) Y)", 9.50/3.37 null 9.50/3.37 ], 9.50/3.37 [ 9.50/3.37 "(delete X (. Y Z) W)", 9.50/3.37 "(delete X Z W)" 9.50/3.37 ], 9.50/3.37 [ 9.50/3.37 "(le (s X) (s Y))", 9.50/3.37 "(le X Y)" 9.50/3.37 ], 9.50/3.37 [ 9.50/3.37 "(le (0) (s X))", 9.50/3.37 null 9.50/3.37 ], 9.50/3.37 [ 9.50/3.37 "(le (0) (0))", 9.50/3.37 null 9.50/3.37 ] 9.50/3.37 ] 9.50/3.37 }, 9.50/3.37 "graph": { 9.50/3.37 "nodes": { 9.50/3.37 "45": { 9.50/3.37 "goal": [ 9.50/3.37 { 9.50/3.37 "clause": 6, 9.50/3.37 "scope": 3, 9.50/3.37 "term": "(delete T21 (. T23 T24) X20)" 9.50/3.37 }, 9.50/3.37 { 9.50/3.37 "clause": 7, 9.50/3.37 "scope": 3, 9.50/3.37 "term": "(delete T21 (. T23 T24) X20)" 9.50/3.37 } 9.50/3.37 ], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T21"], 9.50/3.37 "free": ["X20"], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "48": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": 6, 9.50/3.37 "scope": 3, 9.50/3.37 "term": "(delete T21 (. T23 T24) X20)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T21"], 9.50/3.37 "free": ["X20"], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "49": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": 7, 9.50/3.37 "scope": 3, 9.50/3.37 "term": "(delete T21 (. T23 T24) X20)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T21"], 9.50/3.37 "free": ["X20"], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "190": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": 2, 9.50/3.37 "scope": 5, 9.50/3.37 "term": "(sorted T9)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T9"], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "191": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": 3, 9.50/3.37 "scope": 5, 9.50/3.37 "term": "(sorted T9)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": ["T9"], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "192": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(true)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "type": "Nodes", 9.50/3.37 "194": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "195": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "196": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(',' (le T98 T99) (sorted (. T99 T100)))" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [ 9.50/3.37 "T98", 9.50/3.37 "T99", 9.50/3.37 "T100" 9.50/3.37 ], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "394": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(true)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "197": { 9.50/3.37 "goal": [], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "198": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(le T98 T99)" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.37 "nonunifying": [], 9.50/3.37 "intvars": {}, 9.50/3.37 "arithmetic": { 9.50/3.37 "type": "PlainIntegerRelationState", 9.50/3.37 "relations": [] 9.50/3.37 }, 9.50/3.37 "ground": [ 9.50/3.37 "T98", 9.50/3.37 "T99" 9.50/3.37 ], 9.50/3.37 "free": [], 9.50/3.37 "exprvars": [] 9.50/3.37 } 9.50/3.37 }, 9.50/3.37 "199": { 9.50/3.37 "goal": [{ 9.50/3.37 "clause": -1, 9.50/3.37 "scope": -1, 9.50/3.37 "term": "(sorted (. T99 T100))" 9.50/3.37 }], 9.50/3.37 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [ 9.50/3.38 "T99", 9.50/3.38 "T100" 9.50/3.38 ], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "397": { 9.50/3.38 "goal": [], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "398": { 9.50/3.38 "goal": [], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "399": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": -1, 9.50/3.38 "scope": -1, 9.50/3.38 "term": "(true)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "318": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": 9, 9.50/3.38 "scope": 6, 9.50/3.38 "term": "(le T98 T99)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [ 9.50/3.38 "T98", 9.50/3.38 "T99" 9.50/3.38 ], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "319": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": 10, 9.50/3.38 "scope": 6, 9.50/3.38 "term": "(le T98 T99)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [ 9.50/3.38 "T98", 9.50/3.38 "T99" 9.50/3.38 ], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "53": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": -1, 9.50/3.38 "scope": -1, 9.50/3.38 "term": "(true)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "54": { 9.50/3.38 "goal": [], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "55": { 9.50/3.38 "goal": [], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "12": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": -1, 9.50/3.38 "scope": -1, 9.50/3.38 "term": "(',' (perm T10 T9) (sorted T9))" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T9"], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "57": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": -1, 9.50/3.38 "scope": -1, 9.50/3.38 "term": "(delete T55 T58 X57)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T55"], 9.50/3.38 "free": ["X57"], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "59": { 9.50/3.38 "goal": [ 9.50/3.38 { 9.50/3.38 "clause": 6, 9.50/3.38 "scope": 4, 9.50/3.38 "term": "(delete T55 T58 X57)" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "clause": 7, 9.50/3.38 "scope": 4, 9.50/3.38 "term": "(delete T55 T58 X57)" 9.50/3.38 } 9.50/3.38 ], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T55"], 9.50/3.38 "free": ["X57"], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "2": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": -1, 9.50/3.38 "scope": -1, 9.50/3.38 "term": "(slowsort T1 T2)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T2"], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "200": { 9.50/3.38 "goal": [ 9.50/3.38 { 9.50/3.38 "clause": 8, 9.50/3.38 "scope": 6, 9.50/3.38 "term": "(le T98 T99)" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "clause": 9, 9.50/3.38 "scope": 6, 9.50/3.38 "term": "(le T98 T99)" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "clause": 10, 9.50/3.38 "scope": 6, 9.50/3.38 "term": "(le T98 T99)" 9.50/3.38 } 9.50/3.38 ], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [ 9.50/3.38 "T98", 9.50/3.38 "T99" 9.50/3.38 ], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "3": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": 0, 9.50/3.38 "scope": 1, 9.50/3.38 "term": "(slowsort T1 T2)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T2"], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "400": { 9.50/3.38 "goal": [], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "401": { 9.50/3.38 "goal": [], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "62": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": 6, 9.50/3.38 "scope": 4, 9.50/3.38 "term": "(delete T55 T58 X57)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T55"], 9.50/3.38 "free": ["X57"], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "63": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": 7, 9.50/3.38 "scope": 4, 9.50/3.38 "term": "(delete T55 T58 X57)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T55"], 9.50/3.38 "free": ["X57"], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "64": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": -1, 9.50/3.38 "scope": -1, 9.50/3.38 "term": "(true)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "21": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": -1, 9.50/3.38 "scope": -1, 9.50/3.38 "term": "(perm T10 T9)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T9"], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "65": { 9.50/3.38 "goal": [], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "66": { 9.50/3.38 "goal": [], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "23": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": -1, 9.50/3.38 "scope": -1, 9.50/3.38 "term": "(sorted T9)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T9"], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "25": { 9.50/3.38 "goal": [ 9.50/3.38 { 9.50/3.38 "clause": 4, 9.50/3.38 "scope": 2, 9.50/3.38 "term": "(perm T10 T9)" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "clause": 5, 9.50/3.38 "scope": 2, 9.50/3.38 "term": "(perm T10 T9)" 9.50/3.38 } 9.50/3.38 ], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T9"], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "27": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": 4, 9.50/3.38 "scope": 2, 9.50/3.38 "term": "(perm T10 T9)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T9"], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "29": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": 5, 9.50/3.38 "scope": 2, 9.50/3.38 "term": "(perm T10 T9)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T9"], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "290": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": -1, 9.50/3.38 "scope": -1, 9.50/3.38 "term": "(le T113 T114)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [ 9.50/3.38 "T113", 9.50/3.38 "T114" 9.50/3.38 ], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "293": { 9.50/3.38 "goal": [], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "176": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": -1, 9.50/3.38 "scope": -1, 9.50/3.38 "term": "(delete T79 T82 X86)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T79"], 9.50/3.38 "free": ["X86"], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "177": { 9.50/3.38 "goal": [], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "33": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": -1, 9.50/3.38 "scope": -1, 9.50/3.38 "term": "(true)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "34": { 9.50/3.38 "goal": [], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "35": { 9.50/3.38 "goal": [], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "38": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": -1, 9.50/3.38 "scope": -1, 9.50/3.38 "term": "(',' (delete T21 (. T23 T24) X20) (perm X20 T22))" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [ 9.50/3.38 "T21", 9.50/3.38 "T22" 9.50/3.38 ], 9.50/3.38 "free": ["X20"], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "39": { 9.50/3.38 "goal": [], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "182": { 9.50/3.38 "goal": [ 9.50/3.38 { 9.50/3.38 "clause": 1, 9.50/3.38 "scope": 5, 9.50/3.38 "term": "(sorted T9)" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "clause": 2, 9.50/3.38 "scope": 5, 9.50/3.38 "term": "(sorted T9)" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "clause": 3, 9.50/3.38 "scope": 5, 9.50/3.38 "term": "(sorted T9)" 9.50/3.38 } 9.50/3.38 ], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T9"], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "184": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": 1, 9.50/3.38 "scope": 5, 9.50/3.38 "term": "(sorted T9)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T9"], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "185": { 9.50/3.38 "goal": [ 9.50/3.38 { 9.50/3.38 "clause": 2, 9.50/3.38 "scope": 5, 9.50/3.38 "term": "(sorted T9)" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "clause": 3, 9.50/3.38 "scope": 5, 9.50/3.38 "term": "(sorted T9)" 9.50/3.38 } 9.50/3.38 ], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T9"], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "187": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": -1, 9.50/3.38 "scope": -1, 9.50/3.38 "term": "(true)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "188": { 9.50/3.38 "goal": [], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "189": { 9.50/3.38 "goal": [], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "226": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": 8, 9.50/3.38 "scope": 6, 9.50/3.38 "term": "(le T98 T99)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [ 9.50/3.38 "T98", 9.50/3.38 "T99" 9.50/3.38 ], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "228": { 9.50/3.38 "goal": [ 9.50/3.38 { 9.50/3.38 "clause": 9, 9.50/3.38 "scope": 6, 9.50/3.38 "term": "(le T98 T99)" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "clause": 10, 9.50/3.38 "scope": 6, 9.50/3.38 "term": "(le T98 T99)" 9.50/3.38 } 9.50/3.38 ], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": [ 9.50/3.38 "T98", 9.50/3.38 "T99" 9.50/3.38 ], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "42": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": -1, 9.50/3.38 "scope": -1, 9.50/3.38 "term": "(delete T21 (. T23 T24) X20)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T21"], 9.50/3.38 "free": ["X20"], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "43": { 9.50/3.38 "goal": [{ 9.50/3.38 "clause": -1, 9.50/3.38 "scope": -1, 9.50/3.38 "term": "(perm T29 T22)" 9.50/3.38 }], 9.50/3.38 "kb": { 9.50/3.38 "nonunifying": [], 9.50/3.38 "intvars": {}, 9.50/3.38 "arithmetic": { 9.50/3.38 "type": "PlainIntegerRelationState", 9.50/3.38 "relations": [] 9.50/3.38 }, 9.50/3.38 "ground": ["T22"], 9.50/3.38 "free": [], 9.50/3.38 "exprvars": [] 9.50/3.38 } 9.50/3.38 } 9.50/3.38 }, 9.50/3.38 "edges": [ 9.50/3.38 { 9.50/3.38 "from": 2, 9.50/3.38 "to": 3, 9.50/3.38 "label": "CASE" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 3, 9.50/3.38 "to": 12, 9.50/3.38 "label": "ONLY EVAL with clause\nslowsort(X5, X6) :- ','(perm(X5, X6), sorted(X6)).\nand substitutionT1 -> T10,\nX5 -> T10,\nT2 -> T9,\nX6 -> T9,\nT8 -> T10" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 12, 9.50/3.38 "to": 21, 9.50/3.38 "label": "SPLIT 1" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 12, 9.50/3.38 "to": 23, 9.50/3.38 "label": "SPLIT 2\nnew knowledge:\nT9 is ground" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 21, 9.50/3.38 "to": 25, 9.50/3.38 "label": "CASE" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 23, 9.50/3.38 "to": 182, 9.50/3.38 "label": "CASE" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 25, 9.50/3.38 "to": 27, 9.50/3.38 "label": "PARALLEL" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 25, 9.50/3.38 "to": 29, 9.50/3.38 "label": "PARALLEL" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 27, 9.50/3.38 "to": 33, 9.50/3.38 "label": "EVAL with clause\nperm([], []).\nand substitutionT10 -> [],\nT9 -> []" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 27, 9.50/3.38 "to": 34, 9.50/3.38 "label": "EVAL-BACKTRACK" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 29, 9.50/3.38 "to": 38, 9.50/3.38 "label": "EVAL with clause\nperm(.(X16, .(X17, [])), .(X18, .(X19, []))) :- ','(delete(X18, .(X16, X17), X20), perm(X20, X19)).\nand substitutionX16 -> T23,\nX17 -> T24,\nT10 -> .(T23, .(T24, [])),\nX18 -> T21,\nX19 -> T22,\nT9 -> .(T21, .(T22, [])),\nT19 -> T23,\nT20 -> T24" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 29, 9.50/3.38 "to": 39, 9.50/3.38 "label": "EVAL-BACKTRACK" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 33, 9.50/3.38 "to": 35, 9.50/3.38 "label": "SUCCESS" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 38, 9.50/3.38 "to": 42, 9.50/3.38 "label": "SPLIT 1" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 38, 9.50/3.38 "to": 43, 9.50/3.38 "label": "SPLIT 2\nnew knowledge:\nT21 is ground\nreplacements:X20 -> T29" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 42, 9.50/3.38 "to": 45, 9.50/3.38 "label": "CASE" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 43, 9.50/3.38 "to": 21, 9.50/3.38 "label": "INSTANCE with matching:\nT10 -> T29\nT9 -> T22" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 45, 9.50/3.38 "to": 48, 9.50/3.38 "label": "PARALLEL" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 45, 9.50/3.38 "to": 49, 9.50/3.38 "label": "PARALLEL" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 48, 9.50/3.38 "to": 53, 9.50/3.38 "label": "EVAL with clause\ndelete(X37, .(X37, X38), X38).\nand substitutionT21 -> T42,\nX37 -> T42,\nT23 -> T42,\nT24 -> T43,\nX38 -> T43,\nX20 -> T43" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 48, 9.50/3.38 "to": 54, 9.50/3.38 "label": "EVAL-BACKTRACK" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 49, 9.50/3.38 "to": 57, 9.50/3.38 "label": "ONLY EVAL with clause\ndelete(X53, .(X54, X55), X56) :- delete(X53, X55, X56).\nand substitutionT21 -> T55,\nX53 -> T55,\nT23 -> T56,\nX54 -> T56,\nT24 -> T58,\nX55 -> T58,\nX20 -> X57,\nX56 -> X57,\nT57 -> T58" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 53, 9.50/3.38 "to": 55, 9.50/3.38 "label": "SUCCESS" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 57, 9.50/3.38 "to": 59, 9.50/3.38 "label": "CASE" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 59, 9.50/3.38 "to": 62, 9.50/3.38 "label": "PARALLEL" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 59, 9.50/3.38 "to": 63, 9.50/3.38 "label": "PARALLEL" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 62, 9.50/3.38 "to": 64, 9.50/3.38 "label": "EVAL with clause\ndelete(X70, .(X70, X71), X71).\nand substitutionT55 -> T71,\nX70 -> T71,\nX71 -> T72,\nT58 -> .(T71, T72),\nX57 -> T72" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 62, 9.50/3.38 "to": 65, 9.50/3.38 "label": "EVAL-BACKTRACK" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 63, 9.50/3.38 "to": 176, 9.50/3.38 "label": "EVAL with clause\ndelete(X82, .(X83, X84), X85) :- delete(X82, X84, X85).\nand substitutionT55 -> T79,\nX82 -> T79,\nX83 -> T80,\nX84 -> T82,\nT58 -> .(T80, T82),\nX57 -> X86,\nX85 -> X86,\nT81 -> T82" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 63, 9.50/3.38 "to": 177, 9.50/3.38 "label": "EVAL-BACKTRACK" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 64, 9.50/3.38 "to": 66, 9.50/3.38 "label": "SUCCESS" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 176, 9.50/3.38 "to": 57, 9.50/3.38 "label": "INSTANCE with matching:\nT55 -> T79\nT58 -> T82\nX57 -> X86" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 182, 9.50/3.38 "to": 184, 9.50/3.38 "label": "PARALLEL" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 182, 9.50/3.38 "to": 185, 9.50/3.38 "label": "PARALLEL" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 184, 9.50/3.38 "to": 187, 9.50/3.38 "label": "EVAL with clause\nsorted([]).\nand substitutionT9 -> []" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 184, 9.50/3.38 "to": 188, 9.50/3.38 "label": "EVAL-BACKTRACK" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 185, 9.50/3.38 "to": 190, 9.50/3.38 "label": "PARALLEL" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 185, 9.50/3.38 "to": 191, 9.50/3.38 "label": "PARALLEL" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 187, 9.50/3.38 "to": 189, 9.50/3.38 "label": "SUCCESS" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 190, 9.50/3.38 "to": 192, 9.50/3.38 "label": "EVAL with clause\nsorted(.(X95, [])).\nand substitutionX95 -> T91,\nT9 -> .(T91, [])" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 190, 9.50/3.38 "to": 194, 9.50/3.38 "label": "EVAL-BACKTRACK" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 191, 9.50/3.38 "to": 196, 9.50/3.38 "label": "EVAL with clause\nsorted(.(X102, .(X103, X104))) :- ','(le(X102, X103), sorted(.(X103, X104))).\nand substitutionX102 -> T98,\nX103 -> T99,\nX104 -> T100,\nT9 -> .(T98, .(T99, T100))" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 191, 9.50/3.38 "to": 197, 9.50/3.38 "label": "EVAL-BACKTRACK" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 192, 9.50/3.38 "to": 195, 9.50/3.38 "label": "SUCCESS" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 196, 9.50/3.38 "to": 198, 9.50/3.38 "label": "SPLIT 1" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 196, 9.50/3.38 "to": 199, 9.50/3.38 "label": "SPLIT 2\nnew knowledge:\nT98 is ground\nT99 is ground" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 198, 9.50/3.38 "to": 200, 9.50/3.38 "label": "CASE" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 199, 9.50/3.38 "to": 23, 9.50/3.38 "label": "INSTANCE with matching:\nT9 -> .(T99, T100)" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 200, 9.50/3.38 "to": 226, 9.50/3.38 "label": "PARALLEL" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 200, 9.50/3.38 "to": 228, 9.50/3.38 "label": "PARALLEL" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 226, 9.50/3.38 "to": 290, 9.50/3.38 "label": "EVAL with clause\nle(s(X117), s(X118)) :- le(X117, X118).\nand substitutionX117 -> T113,\nT98 -> s(T113),\nX118 -> T114,\nT99 -> s(T114)" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 226, 9.50/3.38 "to": 293, 9.50/3.38 "label": "EVAL-BACKTRACK" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 228, 9.50/3.38 "to": 318, 9.50/3.38 "label": "PARALLEL" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 228, 9.50/3.38 "to": 319, 9.50/3.38 "label": "PARALLEL" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 290, 9.50/3.38 "to": 198, 9.50/3.38 "label": "INSTANCE with matching:\nT98 -> T113\nT99 -> T114" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 318, 9.50/3.38 "to": 394, 9.50/3.38 "label": "EVAL with clause\nle(0, s(X125)).\nand substitutionT98 -> 0,\nX125 -> T121,\nT99 -> s(T121)" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 318, 9.50/3.38 "to": 397, 9.50/3.38 "label": "EVAL-BACKTRACK" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 319, 9.50/3.38 "to": 399, 9.50/3.38 "label": "EVAL with clause\nle(0, 0).\nand substitutionT98 -> 0,\nT99 -> 0" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 319, 9.50/3.38 "to": 400, 9.50/3.38 "label": "EVAL-BACKTRACK" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 394, 9.50/3.38 "to": 398, 9.50/3.38 "label": "SUCCESS" 9.50/3.38 }, 9.50/3.38 { 9.50/3.38 "from": 399, 9.50/3.38 "to": 401, 9.50/3.38 "label": "SUCCESS" 9.50/3.38 } 9.50/3.38 ], 9.50/3.38 "type": "Graph" 9.50/3.38 } 9.50/3.38 } 9.50/3.38 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (102) 9.50/3.38 Obligation: 9.50/3.38 Q restricted rewrite system: 9.50/3.38 The TRS R consists of the following rules: 9.50/3.38 9.50/3.38 f2_in(T9) -> U1(f12_in(T9), T9) 9.50/3.38 U1(f12_out1, T9) -> f2_out1 9.50/3.38 f21_in([]) -> f21_out1 9.50/3.38 f21_in(.(T21, .(T22, []))) -> U2(f38_in(T21, T22), .(T21, .(T22, []))) 9.50/3.38 U2(f38_out1, .(T21, .(T22, []))) -> f21_out1 9.50/3.38 f57_in(T71) -> f57_out1 9.50/3.38 f57_in(T79) -> U3(f57_in(T79), T79) 9.50/3.38 U3(f57_out1, T79) -> f57_out1 9.50/3.38 f23_in([]) -> f23_out1 9.50/3.38 f23_in(.(T91, [])) -> f23_out1 9.50/3.38 f23_in(.(T98, .(T99, T100))) -> U4(f196_in(T98, T99, T100), .(T98, .(T99, T100))) 9.50/3.38 U4(f196_out1, .(T98, .(T99, T100))) -> f23_out1 9.50/3.38 f198_in(s(T113), s(T114)) -> U5(f198_in(T113, T114), s(T113), s(T114)) 9.50/3.38 U5(f198_out1, s(T113), s(T114)) -> f198_out1 9.50/3.38 f198_in(0, s(T121)) -> f198_out1 9.50/3.38 f198_in(0, 0) -> f198_out1 9.50/3.38 f42_in(T42) -> f42_out1 9.50/3.38 f42_in(T55) -> U6(f57_in(T55), T55) 9.50/3.38 U6(f57_out1, T55) -> f42_out1 9.50/3.38 f12_in(T9) -> U7(f21_in(T9), T9) 9.50/3.38 U7(f21_out1, T9) -> U8(f23_in(T9), T9) 9.50/3.38 U8(f23_out1, T9) -> f12_out1 9.50/3.38 f38_in(T21, T22) -> U9(f42_in(T21), T21, T22) 9.50/3.38 U9(f42_out1, T21, T22) -> U10(f21_in(T22), T21, T22) 9.50/3.38 U10(f21_out1, T21, T22) -> f38_out1 9.50/3.38 f196_in(T98, T99, T100) -> U11(f198_in(T98, T99), T98, T99, T100) 9.50/3.38 U11(f198_out1, T98, T99, T100) -> U12(f23_in(.(T99, T100)), T98, T99, T100) 9.50/3.38 U12(f23_out1, T98, T99, T100) -> f196_out1 9.50/3.38 9.50/3.38 Q is empty. 9.50/3.38 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (103) DependencyPairsProof (EQUIVALENT) 9.50/3.38 Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (104) 9.50/3.38 Obligation: 9.50/3.38 Q DP problem: 9.50/3.38 The TRS P consists of the following rules: 9.50/3.38 9.50/3.38 F2_IN(T9) -> U1^1(f12_in(T9), T9) 9.50/3.38 F2_IN(T9) -> F12_IN(T9) 9.50/3.38 F21_IN(.(T21, .(T22, []))) -> U2^1(f38_in(T21, T22), .(T21, .(T22, []))) 9.50/3.38 F21_IN(.(T21, .(T22, []))) -> F38_IN(T21, T22) 9.50/3.38 F57_IN(T79) -> U3^1(f57_in(T79), T79) 9.50/3.38 F57_IN(T79) -> F57_IN(T79) 9.50/3.38 F23_IN(.(T98, .(T99, T100))) -> U4^1(f196_in(T98, T99, T100), .(T98, .(T99, T100))) 9.50/3.38 F23_IN(.(T98, .(T99, T100))) -> F196_IN(T98, T99, T100) 9.50/3.38 F198_IN(s(T113), s(T114)) -> U5^1(f198_in(T113, T114), s(T113), s(T114)) 9.50/3.38 F198_IN(s(T113), s(T114)) -> F198_IN(T113, T114) 9.50/3.38 F42_IN(T55) -> U6^1(f57_in(T55), T55) 9.50/3.38 F42_IN(T55) -> F57_IN(T55) 9.50/3.38 F12_IN(T9) -> U7^1(f21_in(T9), T9) 9.50/3.38 F12_IN(T9) -> F21_IN(T9) 9.50/3.38 U7^1(f21_out1, T9) -> U8^1(f23_in(T9), T9) 9.50/3.38 U7^1(f21_out1, T9) -> F23_IN(T9) 9.50/3.38 F38_IN(T21, T22) -> U9^1(f42_in(T21), T21, T22) 9.50/3.38 F38_IN(T21, T22) -> F42_IN(T21) 9.50/3.38 U9^1(f42_out1, T21, T22) -> U10^1(f21_in(T22), T21, T22) 9.50/3.38 U9^1(f42_out1, T21, T22) -> F21_IN(T22) 9.50/3.38 F196_IN(T98, T99, T100) -> U11^1(f198_in(T98, T99), T98, T99, T100) 9.50/3.38 F196_IN(T98, T99, T100) -> F198_IN(T98, T99) 9.50/3.38 U11^1(f198_out1, T98, T99, T100) -> U12^1(f23_in(.(T99, T100)), T98, T99, T100) 9.50/3.38 U11^1(f198_out1, T98, T99, T100) -> F23_IN(.(T99, T100)) 9.50/3.38 9.50/3.38 The TRS R consists of the following rules: 9.50/3.38 9.50/3.38 f2_in(T9) -> U1(f12_in(T9), T9) 9.50/3.38 U1(f12_out1, T9) -> f2_out1 9.50/3.38 f21_in([]) -> f21_out1 9.50/3.38 f21_in(.(T21, .(T22, []))) -> U2(f38_in(T21, T22), .(T21, .(T22, []))) 9.50/3.38 U2(f38_out1, .(T21, .(T22, []))) -> f21_out1 9.50/3.38 f57_in(T71) -> f57_out1 9.50/3.38 f57_in(T79) -> U3(f57_in(T79), T79) 9.50/3.38 U3(f57_out1, T79) -> f57_out1 9.50/3.38 f23_in([]) -> f23_out1 9.50/3.38 f23_in(.(T91, [])) -> f23_out1 9.50/3.38 f23_in(.(T98, .(T99, T100))) -> U4(f196_in(T98, T99, T100), .(T98, .(T99, T100))) 9.50/3.38 U4(f196_out1, .(T98, .(T99, T100))) -> f23_out1 9.50/3.38 f198_in(s(T113), s(T114)) -> U5(f198_in(T113, T114), s(T113), s(T114)) 9.50/3.38 U5(f198_out1, s(T113), s(T114)) -> f198_out1 9.50/3.38 f198_in(0, s(T121)) -> f198_out1 9.50/3.38 f198_in(0, 0) -> f198_out1 9.50/3.38 f42_in(T42) -> f42_out1 9.50/3.38 f42_in(T55) -> U6(f57_in(T55), T55) 9.50/3.38 U6(f57_out1, T55) -> f42_out1 9.50/3.38 f12_in(T9) -> U7(f21_in(T9), T9) 9.50/3.38 U7(f21_out1, T9) -> U8(f23_in(T9), T9) 9.50/3.38 U8(f23_out1, T9) -> f12_out1 9.50/3.38 f38_in(T21, T22) -> U9(f42_in(T21), T21, T22) 9.50/3.38 U9(f42_out1, T21, T22) -> U10(f21_in(T22), T21, T22) 9.50/3.38 U10(f21_out1, T21, T22) -> f38_out1 9.50/3.38 f196_in(T98, T99, T100) -> U11(f198_in(T98, T99), T98, T99, T100) 9.50/3.38 U11(f198_out1, T98, T99, T100) -> U12(f23_in(.(T99, T100)), T98, T99, T100) 9.50/3.38 U12(f23_out1, T98, T99, T100) -> f196_out1 9.50/3.38 9.50/3.38 Q is empty. 9.50/3.38 We have to consider all minimal (P,Q,R)-chains. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (105) DependencyGraphProof (EQUIVALENT) 9.50/3.38 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 4 SCCs with 16 less nodes. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (106) 9.50/3.38 Complex Obligation (AND) 9.50/3.38 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (107) 9.50/3.38 Obligation: 9.50/3.38 Q DP problem: 9.50/3.38 The TRS P consists of the following rules: 9.50/3.38 9.50/3.38 F198_IN(s(T113), s(T114)) -> F198_IN(T113, T114) 9.50/3.38 9.50/3.38 The TRS R consists of the following rules: 9.50/3.38 9.50/3.38 f2_in(T9) -> U1(f12_in(T9), T9) 9.50/3.38 U1(f12_out1, T9) -> f2_out1 9.50/3.38 f21_in([]) -> f21_out1 9.50/3.38 f21_in(.(T21, .(T22, []))) -> U2(f38_in(T21, T22), .(T21, .(T22, []))) 9.50/3.38 U2(f38_out1, .(T21, .(T22, []))) -> f21_out1 9.50/3.38 f57_in(T71) -> f57_out1 9.50/3.38 f57_in(T79) -> U3(f57_in(T79), T79) 9.50/3.38 U3(f57_out1, T79) -> f57_out1 9.50/3.38 f23_in([]) -> f23_out1 9.50/3.38 f23_in(.(T91, [])) -> f23_out1 9.50/3.38 f23_in(.(T98, .(T99, T100))) -> U4(f196_in(T98, T99, T100), .(T98, .(T99, T100))) 9.50/3.38 U4(f196_out1, .(T98, .(T99, T100))) -> f23_out1 9.50/3.38 f198_in(s(T113), s(T114)) -> U5(f198_in(T113, T114), s(T113), s(T114)) 9.50/3.38 U5(f198_out1, s(T113), s(T114)) -> f198_out1 9.50/3.38 f198_in(0, s(T121)) -> f198_out1 9.50/3.38 f198_in(0, 0) -> f198_out1 9.50/3.38 f42_in(T42) -> f42_out1 9.50/3.38 f42_in(T55) -> U6(f57_in(T55), T55) 9.50/3.38 U6(f57_out1, T55) -> f42_out1 9.50/3.38 f12_in(T9) -> U7(f21_in(T9), T9) 9.50/3.38 U7(f21_out1, T9) -> U8(f23_in(T9), T9) 9.50/3.38 U8(f23_out1, T9) -> f12_out1 9.50/3.38 f38_in(T21, T22) -> U9(f42_in(T21), T21, T22) 9.50/3.38 U9(f42_out1, T21, T22) -> U10(f21_in(T22), T21, T22) 9.50/3.38 U10(f21_out1, T21, T22) -> f38_out1 9.50/3.38 f196_in(T98, T99, T100) -> U11(f198_in(T98, T99), T98, T99, T100) 9.50/3.38 U11(f198_out1, T98, T99, T100) -> U12(f23_in(.(T99, T100)), T98, T99, T100) 9.50/3.38 U12(f23_out1, T98, T99, T100) -> f196_out1 9.50/3.38 9.50/3.38 Q is empty. 9.50/3.38 We have to consider all minimal (P,Q,R)-chains. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (108) MNOCProof (EQUIVALENT) 9.50/3.38 We use the modular non-overlap check [LPAR04] to enlarge Q to all left-hand sides of R. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (109) 9.50/3.38 Obligation: 9.50/3.38 Q DP problem: 9.50/3.38 The TRS P consists of the following rules: 9.50/3.38 9.50/3.38 F198_IN(s(T113), s(T114)) -> F198_IN(T113, T114) 9.50/3.38 9.50/3.38 The TRS R consists of the following rules: 9.50/3.38 9.50/3.38 f2_in(T9) -> U1(f12_in(T9), T9) 9.50/3.38 U1(f12_out1, T9) -> f2_out1 9.50/3.38 f21_in([]) -> f21_out1 9.50/3.38 f21_in(.(T21, .(T22, []))) -> U2(f38_in(T21, T22), .(T21, .(T22, []))) 9.50/3.38 U2(f38_out1, .(T21, .(T22, []))) -> f21_out1 9.50/3.38 f57_in(T71) -> f57_out1 9.50/3.38 f57_in(T79) -> U3(f57_in(T79), T79) 9.50/3.38 U3(f57_out1, T79) -> f57_out1 9.50/3.38 f23_in([]) -> f23_out1 9.50/3.38 f23_in(.(T91, [])) -> f23_out1 9.50/3.38 f23_in(.(T98, .(T99, T100))) -> U4(f196_in(T98, T99, T100), .(T98, .(T99, T100))) 9.50/3.38 U4(f196_out1, .(T98, .(T99, T100))) -> f23_out1 9.50/3.38 f198_in(s(T113), s(T114)) -> U5(f198_in(T113, T114), s(T113), s(T114)) 9.50/3.38 U5(f198_out1, s(T113), s(T114)) -> f198_out1 9.50/3.38 f198_in(0, s(T121)) -> f198_out1 9.50/3.38 f198_in(0, 0) -> f198_out1 9.50/3.38 f42_in(T42) -> f42_out1 9.50/3.38 f42_in(T55) -> U6(f57_in(T55), T55) 9.50/3.38 U6(f57_out1, T55) -> f42_out1 9.50/3.38 f12_in(T9) -> U7(f21_in(T9), T9) 9.50/3.38 U7(f21_out1, T9) -> U8(f23_in(T9), T9) 9.50/3.38 U8(f23_out1, T9) -> f12_out1 9.50/3.38 f38_in(T21, T22) -> U9(f42_in(T21), T21, T22) 9.50/3.38 U9(f42_out1, T21, T22) -> U10(f21_in(T22), T21, T22) 9.50/3.38 U10(f21_out1, T21, T22) -> f38_out1 9.50/3.38 f196_in(T98, T99, T100) -> U11(f198_in(T98, T99), T98, T99, T100) 9.50/3.38 U11(f198_out1, T98, T99, T100) -> U12(f23_in(.(T99, T100)), T98, T99, T100) 9.50/3.38 U12(f23_out1, T98, T99, T100) -> f196_out1 9.50/3.38 9.50/3.38 The set Q consists of the following terms: 9.50/3.38 9.50/3.38 f2_in(x0) 9.50/3.38 U1(f12_out1, x0) 9.50/3.38 f21_in([]) 9.50/3.38 f21_in(.(x0, .(x1, []))) 9.50/3.38 U2(f38_out1, .(x0, .(x1, []))) 9.50/3.38 f57_in(x0) 9.50/3.38 U3(f57_out1, x0) 9.50/3.38 f23_in([]) 9.50/3.38 f23_in(.(x0, [])) 9.50/3.38 f23_in(.(x0, .(x1, x2))) 9.50/3.38 U4(f196_out1, .(x0, .(x1, x2))) 9.50/3.38 f198_in(s(x0), s(x1)) 9.50/3.38 U5(f198_out1, s(x0), s(x1)) 9.50/3.38 f198_in(0, s(x0)) 9.50/3.38 f198_in(0, 0) 9.50/3.38 f42_in(x0) 9.50/3.38 U6(f57_out1, x0) 9.50/3.38 f12_in(x0) 9.50/3.38 U7(f21_out1, x0) 9.50/3.38 U8(f23_out1, x0) 9.50/3.38 f38_in(x0, x1) 9.50/3.38 U9(f42_out1, x0, x1) 9.50/3.38 U10(f21_out1, x0, x1) 9.50/3.38 f196_in(x0, x1, x2) 9.50/3.38 U11(f198_out1, x0, x1, x2) 9.50/3.38 U12(f23_out1, x0, x1, x2) 9.50/3.38 9.50/3.38 We have to consider all minimal (P,Q,R)-chains. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (110) UsableRulesProof (EQUIVALENT) 9.50/3.38 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. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (111) 9.50/3.38 Obligation: 9.50/3.38 Q DP problem: 9.50/3.38 The TRS P consists of the following rules: 9.50/3.38 9.50/3.38 F198_IN(s(T113), s(T114)) -> F198_IN(T113, T114) 9.50/3.38 9.50/3.38 R is empty. 9.50/3.38 The set Q consists of the following terms: 9.50/3.38 9.50/3.38 f2_in(x0) 9.50/3.38 U1(f12_out1, x0) 9.50/3.38 f21_in([]) 9.50/3.38 f21_in(.(x0, .(x1, []))) 9.50/3.38 U2(f38_out1, .(x0, .(x1, []))) 9.50/3.38 f57_in(x0) 9.50/3.38 U3(f57_out1, x0) 9.50/3.38 f23_in([]) 9.50/3.38 f23_in(.(x0, [])) 9.50/3.38 f23_in(.(x0, .(x1, x2))) 9.50/3.38 U4(f196_out1, .(x0, .(x1, x2))) 9.50/3.38 f198_in(s(x0), s(x1)) 9.50/3.38 U5(f198_out1, s(x0), s(x1)) 9.50/3.38 f198_in(0, s(x0)) 9.50/3.38 f198_in(0, 0) 9.50/3.38 f42_in(x0) 9.50/3.38 U6(f57_out1, x0) 9.50/3.38 f12_in(x0) 9.50/3.38 U7(f21_out1, x0) 9.50/3.38 U8(f23_out1, x0) 9.50/3.38 f38_in(x0, x1) 9.50/3.38 U9(f42_out1, x0, x1) 9.50/3.38 U10(f21_out1, x0, x1) 9.50/3.38 f196_in(x0, x1, x2) 9.50/3.38 U11(f198_out1, x0, x1, x2) 9.50/3.38 U12(f23_out1, x0, x1, x2) 9.50/3.38 9.50/3.38 We have to consider all minimal (P,Q,R)-chains. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (112) QReductionProof (EQUIVALENT) 9.50/3.38 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 9.50/3.38 9.50/3.38 f2_in(x0) 9.50/3.38 U1(f12_out1, x0) 9.50/3.38 f21_in([]) 9.50/3.38 f21_in(.(x0, .(x1, []))) 9.50/3.38 U2(f38_out1, .(x0, .(x1, []))) 9.50/3.38 f57_in(x0) 9.50/3.38 U3(f57_out1, x0) 9.50/3.38 f23_in([]) 9.50/3.38 f23_in(.(x0, [])) 9.50/3.38 f23_in(.(x0, .(x1, x2))) 9.50/3.38 U4(f196_out1, .(x0, .(x1, x2))) 9.50/3.38 f198_in(s(x0), s(x1)) 9.50/3.38 U5(f198_out1, s(x0), s(x1)) 9.50/3.38 f198_in(0, s(x0)) 9.50/3.38 f198_in(0, 0) 9.50/3.38 f42_in(x0) 9.50/3.38 U6(f57_out1, x0) 9.50/3.38 f12_in(x0) 9.50/3.38 U7(f21_out1, x0) 9.50/3.38 U8(f23_out1, x0) 9.50/3.38 f38_in(x0, x1) 9.50/3.38 U9(f42_out1, x0, x1) 9.50/3.38 U10(f21_out1, x0, x1) 9.50/3.38 f196_in(x0, x1, x2) 9.50/3.38 U11(f198_out1, x0, x1, x2) 9.50/3.38 U12(f23_out1, x0, x1, x2) 9.50/3.38 9.50/3.38 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (113) 9.50/3.38 Obligation: 9.50/3.38 Q DP problem: 9.50/3.38 The TRS P consists of the following rules: 9.50/3.38 9.50/3.38 F198_IN(s(T113), s(T114)) -> F198_IN(T113, T114) 9.50/3.38 9.50/3.38 R is empty. 9.50/3.38 Q is empty. 9.50/3.38 We have to consider all minimal (P,Q,R)-chains. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (114) QDPSizeChangeProof (EQUIVALENT) 9.50/3.38 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. 9.50/3.38 9.50/3.38 From the DPs we obtained the following set of size-change graphs: 9.50/3.38 *F198_IN(s(T113), s(T114)) -> F198_IN(T113, T114) 9.50/3.38 The graph contains the following edges 1 > 1, 2 > 2 9.50/3.38 9.50/3.38 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (115) 9.50/3.38 YES 9.50/3.38 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (116) 9.50/3.38 Obligation: 9.50/3.38 Q DP problem: 9.50/3.38 The TRS P consists of the following rules: 9.50/3.38 9.50/3.38 F23_IN(.(T98, .(T99, T100))) -> F196_IN(T98, T99, T100) 9.50/3.38 F196_IN(T98, T99, T100) -> U11^1(f198_in(T98, T99), T98, T99, T100) 9.50/3.38 U11^1(f198_out1, T98, T99, T100) -> F23_IN(.(T99, T100)) 9.50/3.38 9.50/3.38 The TRS R consists of the following rules: 9.50/3.38 9.50/3.38 f2_in(T9) -> U1(f12_in(T9), T9) 9.50/3.38 U1(f12_out1, T9) -> f2_out1 9.50/3.38 f21_in([]) -> f21_out1 9.50/3.38 f21_in(.(T21, .(T22, []))) -> U2(f38_in(T21, T22), .(T21, .(T22, []))) 9.50/3.38 U2(f38_out1, .(T21, .(T22, []))) -> f21_out1 9.50/3.38 f57_in(T71) -> f57_out1 9.50/3.38 f57_in(T79) -> U3(f57_in(T79), T79) 9.50/3.38 U3(f57_out1, T79) -> f57_out1 9.50/3.38 f23_in([]) -> f23_out1 9.50/3.38 f23_in(.(T91, [])) -> f23_out1 9.50/3.38 f23_in(.(T98, .(T99, T100))) -> U4(f196_in(T98, T99, T100), .(T98, .(T99, T100))) 9.50/3.38 U4(f196_out1, .(T98, .(T99, T100))) -> f23_out1 9.50/3.38 f198_in(s(T113), s(T114)) -> U5(f198_in(T113, T114), s(T113), s(T114)) 9.50/3.38 U5(f198_out1, s(T113), s(T114)) -> f198_out1 9.50/3.38 f198_in(0, s(T121)) -> f198_out1 9.50/3.38 f198_in(0, 0) -> f198_out1 9.50/3.38 f42_in(T42) -> f42_out1 9.50/3.38 f42_in(T55) -> U6(f57_in(T55), T55) 9.50/3.38 U6(f57_out1, T55) -> f42_out1 9.50/3.38 f12_in(T9) -> U7(f21_in(T9), T9) 9.50/3.38 U7(f21_out1, T9) -> U8(f23_in(T9), T9) 9.50/3.38 U8(f23_out1, T9) -> f12_out1 9.50/3.38 f38_in(T21, T22) -> U9(f42_in(T21), T21, T22) 9.50/3.38 U9(f42_out1, T21, T22) -> U10(f21_in(T22), T21, T22) 9.50/3.38 U10(f21_out1, T21, T22) -> f38_out1 9.50/3.38 f196_in(T98, T99, T100) -> U11(f198_in(T98, T99), T98, T99, T100) 9.50/3.38 U11(f198_out1, T98, T99, T100) -> U12(f23_in(.(T99, T100)), T98, T99, T100) 9.50/3.38 U12(f23_out1, T98, T99, T100) -> f196_out1 9.50/3.38 9.50/3.38 Q is empty. 9.50/3.38 We have to consider all minimal (P,Q,R)-chains. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (117) MNOCProof (EQUIVALENT) 9.50/3.38 We use the modular non-overlap check [LPAR04] to enlarge Q to all left-hand sides of R. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (118) 9.50/3.38 Obligation: 9.50/3.38 Q DP problem: 9.50/3.38 The TRS P consists of the following rules: 9.50/3.38 9.50/3.38 F23_IN(.(T98, .(T99, T100))) -> F196_IN(T98, T99, T100) 9.50/3.38 F196_IN(T98, T99, T100) -> U11^1(f198_in(T98, T99), T98, T99, T100) 9.50/3.38 U11^1(f198_out1, T98, T99, T100) -> F23_IN(.(T99, T100)) 9.50/3.38 9.50/3.38 The TRS R consists of the following rules: 9.50/3.38 9.50/3.38 f2_in(T9) -> U1(f12_in(T9), T9) 9.50/3.38 U1(f12_out1, T9) -> f2_out1 9.50/3.38 f21_in([]) -> f21_out1 9.50/3.38 f21_in(.(T21, .(T22, []))) -> U2(f38_in(T21, T22), .(T21, .(T22, []))) 9.50/3.38 U2(f38_out1, .(T21, .(T22, []))) -> f21_out1 9.50/3.38 f57_in(T71) -> f57_out1 9.50/3.38 f57_in(T79) -> U3(f57_in(T79), T79) 9.50/3.38 U3(f57_out1, T79) -> f57_out1 9.50/3.38 f23_in([]) -> f23_out1 9.50/3.38 f23_in(.(T91, [])) -> f23_out1 9.50/3.38 f23_in(.(T98, .(T99, T100))) -> U4(f196_in(T98, T99, T100), .(T98, .(T99, T100))) 9.50/3.38 U4(f196_out1, .(T98, .(T99, T100))) -> f23_out1 9.50/3.38 f198_in(s(T113), s(T114)) -> U5(f198_in(T113, T114), s(T113), s(T114)) 9.50/3.38 U5(f198_out1, s(T113), s(T114)) -> f198_out1 9.50/3.38 f198_in(0, s(T121)) -> f198_out1 9.50/3.38 f198_in(0, 0) -> f198_out1 9.50/3.38 f42_in(T42) -> f42_out1 9.50/3.38 f42_in(T55) -> U6(f57_in(T55), T55) 9.50/3.38 U6(f57_out1, T55) -> f42_out1 9.50/3.38 f12_in(T9) -> U7(f21_in(T9), T9) 9.50/3.38 U7(f21_out1, T9) -> U8(f23_in(T9), T9) 9.50/3.38 U8(f23_out1, T9) -> f12_out1 9.50/3.38 f38_in(T21, T22) -> U9(f42_in(T21), T21, T22) 9.50/3.38 U9(f42_out1, T21, T22) -> U10(f21_in(T22), T21, T22) 9.50/3.38 U10(f21_out1, T21, T22) -> f38_out1 9.50/3.38 f196_in(T98, T99, T100) -> U11(f198_in(T98, T99), T98, T99, T100) 9.50/3.38 U11(f198_out1, T98, T99, T100) -> U12(f23_in(.(T99, T100)), T98, T99, T100) 9.50/3.38 U12(f23_out1, T98, T99, T100) -> f196_out1 9.50/3.38 9.50/3.38 The set Q consists of the following terms: 9.50/3.38 9.50/3.38 f2_in(x0) 9.50/3.38 U1(f12_out1, x0) 9.50/3.38 f21_in([]) 9.50/3.38 f21_in(.(x0, .(x1, []))) 9.50/3.38 U2(f38_out1, .(x0, .(x1, []))) 9.50/3.38 f57_in(x0) 9.50/3.38 U3(f57_out1, x0) 9.50/3.38 f23_in([]) 9.50/3.38 f23_in(.(x0, [])) 9.50/3.38 f23_in(.(x0, .(x1, x2))) 9.50/3.38 U4(f196_out1, .(x0, .(x1, x2))) 9.50/3.38 f198_in(s(x0), s(x1)) 9.50/3.38 U5(f198_out1, s(x0), s(x1)) 9.50/3.38 f198_in(0, s(x0)) 9.50/3.38 f198_in(0, 0) 9.50/3.38 f42_in(x0) 9.50/3.38 U6(f57_out1, x0) 9.50/3.38 f12_in(x0) 9.50/3.38 U7(f21_out1, x0) 9.50/3.38 U8(f23_out1, x0) 9.50/3.38 f38_in(x0, x1) 9.50/3.38 U9(f42_out1, x0, x1) 9.50/3.38 U10(f21_out1, x0, x1) 9.50/3.38 f196_in(x0, x1, x2) 9.50/3.38 U11(f198_out1, x0, x1, x2) 9.50/3.38 U12(f23_out1, x0, x1, x2) 9.50/3.38 9.50/3.38 We have to consider all minimal (P,Q,R)-chains. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (119) UsableRulesProof (EQUIVALENT) 9.50/3.38 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. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (120) 9.50/3.38 Obligation: 9.50/3.38 Q DP problem: 9.50/3.38 The TRS P consists of the following rules: 9.50/3.38 9.50/3.38 F23_IN(.(T98, .(T99, T100))) -> F196_IN(T98, T99, T100) 9.50/3.38 F196_IN(T98, T99, T100) -> U11^1(f198_in(T98, T99), T98, T99, T100) 9.50/3.38 U11^1(f198_out1, T98, T99, T100) -> F23_IN(.(T99, T100)) 9.50/3.38 9.50/3.38 The TRS R consists of the following rules: 9.50/3.38 9.50/3.38 f198_in(s(T113), s(T114)) -> U5(f198_in(T113, T114), s(T113), s(T114)) 9.50/3.38 f198_in(0, s(T121)) -> f198_out1 9.50/3.38 f198_in(0, 0) -> f198_out1 9.50/3.38 U5(f198_out1, s(T113), s(T114)) -> f198_out1 9.50/3.38 9.50/3.38 The set Q consists of the following terms: 9.50/3.38 9.50/3.38 f2_in(x0) 9.50/3.38 U1(f12_out1, x0) 9.50/3.38 f21_in([]) 9.50/3.38 f21_in(.(x0, .(x1, []))) 9.50/3.38 U2(f38_out1, .(x0, .(x1, []))) 9.50/3.38 f57_in(x0) 9.50/3.38 U3(f57_out1, x0) 9.50/3.38 f23_in([]) 9.50/3.38 f23_in(.(x0, [])) 9.50/3.38 f23_in(.(x0, .(x1, x2))) 9.50/3.38 U4(f196_out1, .(x0, .(x1, x2))) 9.50/3.38 f198_in(s(x0), s(x1)) 9.50/3.38 U5(f198_out1, s(x0), s(x1)) 9.50/3.38 f198_in(0, s(x0)) 9.50/3.38 f198_in(0, 0) 9.50/3.38 f42_in(x0) 9.50/3.38 U6(f57_out1, x0) 9.50/3.38 f12_in(x0) 9.50/3.38 U7(f21_out1, x0) 9.50/3.38 U8(f23_out1, x0) 9.50/3.38 f38_in(x0, x1) 9.50/3.38 U9(f42_out1, x0, x1) 9.50/3.38 U10(f21_out1, x0, x1) 9.50/3.38 f196_in(x0, x1, x2) 9.50/3.38 U11(f198_out1, x0, x1, x2) 9.50/3.38 U12(f23_out1, x0, x1, x2) 9.50/3.38 9.50/3.38 We have to consider all minimal (P,Q,R)-chains. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (121) QReductionProof (EQUIVALENT) 9.50/3.38 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 9.50/3.38 9.50/3.38 f2_in(x0) 9.50/3.38 U1(f12_out1, x0) 9.50/3.38 f21_in([]) 9.50/3.38 f21_in(.(x0, .(x1, []))) 9.50/3.38 U2(f38_out1, .(x0, .(x1, []))) 9.50/3.38 f57_in(x0) 9.50/3.38 U3(f57_out1, x0) 9.50/3.38 f23_in([]) 9.50/3.38 f23_in(.(x0, [])) 9.50/3.38 f23_in(.(x0, .(x1, x2))) 9.50/3.38 U4(f196_out1, .(x0, .(x1, x2))) 9.50/3.38 f42_in(x0) 9.50/3.38 U6(f57_out1, x0) 9.50/3.38 f12_in(x0) 9.50/3.38 U7(f21_out1, x0) 9.50/3.38 U8(f23_out1, x0) 9.50/3.38 f38_in(x0, x1) 9.50/3.38 U9(f42_out1, x0, x1) 9.50/3.38 U10(f21_out1, x0, x1) 9.50/3.38 f196_in(x0, x1, x2) 9.50/3.38 U11(f198_out1, x0, x1, x2) 9.50/3.38 U12(f23_out1, x0, x1, x2) 9.50/3.38 9.50/3.38 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (122) 9.50/3.38 Obligation: 9.50/3.38 Q DP problem: 9.50/3.38 The TRS P consists of the following rules: 9.50/3.38 9.50/3.38 F23_IN(.(T98, .(T99, T100))) -> F196_IN(T98, T99, T100) 9.50/3.38 F196_IN(T98, T99, T100) -> U11^1(f198_in(T98, T99), T98, T99, T100) 9.50/3.38 U11^1(f198_out1, T98, T99, T100) -> F23_IN(.(T99, T100)) 9.50/3.38 9.50/3.38 The TRS R consists of the following rules: 9.50/3.38 9.50/3.38 f198_in(s(T113), s(T114)) -> U5(f198_in(T113, T114), s(T113), s(T114)) 9.50/3.38 f198_in(0, s(T121)) -> f198_out1 9.50/3.38 f198_in(0, 0) -> f198_out1 9.50/3.38 U5(f198_out1, s(T113), s(T114)) -> f198_out1 9.50/3.38 9.50/3.38 The set Q consists of the following terms: 9.50/3.38 9.50/3.38 f198_in(s(x0), s(x1)) 9.50/3.38 U5(f198_out1, s(x0), s(x1)) 9.50/3.38 f198_in(0, s(x0)) 9.50/3.38 f198_in(0, 0) 9.50/3.38 9.50/3.38 We have to consider all minimal (P,Q,R)-chains. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (123) QDPOrderProof (EQUIVALENT) 9.50/3.38 We use the reduction pair processor [LPAR04,JAR06]. 9.50/3.38 9.50/3.38 9.50/3.38 The following pairs can be oriented strictly and are deleted. 9.50/3.38 9.50/3.38 U11^1(f198_out1, T98, T99, T100) -> F23_IN(.(T99, T100)) 9.50/3.38 The remaining pairs can at least be oriented weakly. 9.50/3.38 Used ordering: Polynomial Order [NEGPOLO,POLO] with Interpretation: 9.50/3.38 9.50/3.38 POL( U11^1_4(x_1, ..., x_4) ) = 2x_1 + 2x_3 + 2x_4 + 2 9.50/3.38 POL( f198_in_2(x_1, x_2) ) = x_1 9.50/3.38 POL( s_1(x_1) ) = 2x_1 9.50/3.38 POL( U5_3(x_1, ..., x_3) ) = max{0, 2x_1 - 2} 9.50/3.38 POL( 0 ) = 2 9.50/3.38 POL( f198_out1 ) = 2 9.50/3.38 POL( F23_IN_1(x_1) ) = x_1 + 2 9.50/3.38 POL( ._2(x_1, x_2) ) = 2x_1 + 2x_2 9.50/3.38 POL( F196_IN_3(x_1, ..., x_3) ) = 2x_1 + 2x_2 + 2x_3 + 2 9.50/3.38 9.50/3.38 The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented: 9.50/3.38 9.50/3.38 f198_in(s(T113), s(T114)) -> U5(f198_in(T113, T114), s(T113), s(T114)) 9.50/3.38 f198_in(0, s(T121)) -> f198_out1 9.50/3.38 f198_in(0, 0) -> f198_out1 9.50/3.38 U5(f198_out1, s(T113), s(T114)) -> f198_out1 9.50/3.38 9.50/3.38 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (124) 9.50/3.38 Obligation: 9.50/3.38 Q DP problem: 9.50/3.38 The TRS P consists of the following rules: 9.50/3.38 9.50/3.38 F23_IN(.(T98, .(T99, T100))) -> F196_IN(T98, T99, T100) 9.50/3.38 F196_IN(T98, T99, T100) -> U11^1(f198_in(T98, T99), T98, T99, T100) 9.50/3.38 9.50/3.38 The TRS R consists of the following rules: 9.50/3.38 9.50/3.38 f198_in(s(T113), s(T114)) -> U5(f198_in(T113, T114), s(T113), s(T114)) 9.50/3.38 f198_in(0, s(T121)) -> f198_out1 9.50/3.38 f198_in(0, 0) -> f198_out1 9.50/3.38 U5(f198_out1, s(T113), s(T114)) -> f198_out1 9.50/3.38 9.50/3.38 The set Q consists of the following terms: 9.50/3.38 9.50/3.38 f198_in(s(x0), s(x1)) 9.50/3.38 U5(f198_out1, s(x0), s(x1)) 9.50/3.38 f198_in(0, s(x0)) 9.50/3.38 f198_in(0, 0) 9.50/3.38 9.50/3.38 We have to consider all minimal (P,Q,R)-chains. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (125) DependencyGraphProof (EQUIVALENT) 9.50/3.38 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 2 less nodes. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (126) 9.50/3.38 TRUE 9.50/3.38 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (127) 9.50/3.38 Obligation: 9.50/3.38 Q DP problem: 9.50/3.38 The TRS P consists of the following rules: 9.50/3.38 9.50/3.38 F57_IN(T79) -> F57_IN(T79) 9.50/3.38 9.50/3.38 The TRS R consists of the following rules: 9.50/3.38 9.50/3.38 f2_in(T9) -> U1(f12_in(T9), T9) 9.50/3.38 U1(f12_out1, T9) -> f2_out1 9.50/3.38 f21_in([]) -> f21_out1 9.50/3.38 f21_in(.(T21, .(T22, []))) -> U2(f38_in(T21, T22), .(T21, .(T22, []))) 9.50/3.38 U2(f38_out1, .(T21, .(T22, []))) -> f21_out1 9.50/3.38 f57_in(T71) -> f57_out1 9.50/3.38 f57_in(T79) -> U3(f57_in(T79), T79) 9.50/3.38 U3(f57_out1, T79) -> f57_out1 9.50/3.38 f23_in([]) -> f23_out1 9.50/3.38 f23_in(.(T91, [])) -> f23_out1 9.50/3.38 f23_in(.(T98, .(T99, T100))) -> U4(f196_in(T98, T99, T100), .(T98, .(T99, T100))) 9.50/3.38 U4(f196_out1, .(T98, .(T99, T100))) -> f23_out1 9.50/3.38 f198_in(s(T113), s(T114)) -> U5(f198_in(T113, T114), s(T113), s(T114)) 9.50/3.38 U5(f198_out1, s(T113), s(T114)) -> f198_out1 9.50/3.38 f198_in(0, s(T121)) -> f198_out1 9.50/3.38 f198_in(0, 0) -> f198_out1 9.50/3.38 f42_in(T42) -> f42_out1 9.50/3.38 f42_in(T55) -> U6(f57_in(T55), T55) 9.50/3.38 U6(f57_out1, T55) -> f42_out1 9.50/3.38 f12_in(T9) -> U7(f21_in(T9), T9) 9.50/3.38 U7(f21_out1, T9) -> U8(f23_in(T9), T9) 9.50/3.38 U8(f23_out1, T9) -> f12_out1 9.50/3.38 f38_in(T21, T22) -> U9(f42_in(T21), T21, T22) 9.50/3.38 U9(f42_out1, T21, T22) -> U10(f21_in(T22), T21, T22) 9.50/3.38 U10(f21_out1, T21, T22) -> f38_out1 9.50/3.38 f196_in(T98, T99, T100) -> U11(f198_in(T98, T99), T98, T99, T100) 9.50/3.38 U11(f198_out1, T98, T99, T100) -> U12(f23_in(.(T99, T100)), T98, T99, T100) 9.50/3.38 U12(f23_out1, T98, T99, T100) -> f196_out1 9.50/3.38 9.50/3.38 Q is empty. 9.50/3.38 We have to consider all minimal (P,Q,R)-chains. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (128) MNOCProof (EQUIVALENT) 9.50/3.38 We use the modular non-overlap check [LPAR04] to enlarge Q to all left-hand sides of R. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (129) 9.50/3.38 Obligation: 9.50/3.38 Q DP problem: 9.50/3.38 The TRS P consists of the following rules: 9.50/3.38 9.50/3.38 F57_IN(T79) -> F57_IN(T79) 9.50/3.38 9.50/3.38 The TRS R consists of the following rules: 9.50/3.38 9.50/3.38 f2_in(T9) -> U1(f12_in(T9), T9) 9.50/3.38 U1(f12_out1, T9) -> f2_out1 9.50/3.38 f21_in([]) -> f21_out1 9.50/3.38 f21_in(.(T21, .(T22, []))) -> U2(f38_in(T21, T22), .(T21, .(T22, []))) 9.50/3.38 U2(f38_out1, .(T21, .(T22, []))) -> f21_out1 9.50/3.38 f57_in(T71) -> f57_out1 9.50/3.38 f57_in(T79) -> U3(f57_in(T79), T79) 9.50/3.38 U3(f57_out1, T79) -> f57_out1 9.50/3.38 f23_in([]) -> f23_out1 9.50/3.38 f23_in(.(T91, [])) -> f23_out1 9.50/3.38 f23_in(.(T98, .(T99, T100))) -> U4(f196_in(T98, T99, T100), .(T98, .(T99, T100))) 9.50/3.38 U4(f196_out1, .(T98, .(T99, T100))) -> f23_out1 9.50/3.38 f198_in(s(T113), s(T114)) -> U5(f198_in(T113, T114), s(T113), s(T114)) 9.50/3.38 U5(f198_out1, s(T113), s(T114)) -> f198_out1 9.50/3.38 f198_in(0, s(T121)) -> f198_out1 9.50/3.38 f198_in(0, 0) -> f198_out1 9.50/3.38 f42_in(T42) -> f42_out1 9.50/3.38 f42_in(T55) -> U6(f57_in(T55), T55) 9.50/3.38 U6(f57_out1, T55) -> f42_out1 9.50/3.38 f12_in(T9) -> U7(f21_in(T9), T9) 9.50/3.38 U7(f21_out1, T9) -> U8(f23_in(T9), T9) 9.50/3.38 U8(f23_out1, T9) -> f12_out1 9.50/3.38 f38_in(T21, T22) -> U9(f42_in(T21), T21, T22) 9.50/3.38 U9(f42_out1, T21, T22) -> U10(f21_in(T22), T21, T22) 9.50/3.38 U10(f21_out1, T21, T22) -> f38_out1 9.50/3.38 f196_in(T98, T99, T100) -> U11(f198_in(T98, T99), T98, T99, T100) 9.50/3.38 U11(f198_out1, T98, T99, T100) -> U12(f23_in(.(T99, T100)), T98, T99, T100) 9.50/3.38 U12(f23_out1, T98, T99, T100) -> f196_out1 9.50/3.38 9.50/3.38 The set Q consists of the following terms: 9.50/3.38 9.50/3.38 f2_in(x0) 9.50/3.38 U1(f12_out1, x0) 9.50/3.38 f21_in([]) 9.50/3.38 f21_in(.(x0, .(x1, []))) 9.50/3.38 U2(f38_out1, .(x0, .(x1, []))) 9.50/3.38 f57_in(x0) 9.50/3.38 U3(f57_out1, x0) 9.50/3.38 f23_in([]) 9.50/3.38 f23_in(.(x0, [])) 9.50/3.38 f23_in(.(x0, .(x1, x2))) 9.50/3.38 U4(f196_out1, .(x0, .(x1, x2))) 9.50/3.38 f198_in(s(x0), s(x1)) 9.50/3.38 U5(f198_out1, s(x0), s(x1)) 9.50/3.38 f198_in(0, s(x0)) 9.50/3.38 f198_in(0, 0) 9.50/3.38 f42_in(x0) 9.50/3.38 U6(f57_out1, x0) 9.50/3.38 f12_in(x0) 9.50/3.38 U7(f21_out1, x0) 9.50/3.38 U8(f23_out1, x0) 9.50/3.38 f38_in(x0, x1) 9.50/3.38 U9(f42_out1, x0, x1) 9.50/3.38 U10(f21_out1, x0, x1) 9.50/3.38 f196_in(x0, x1, x2) 9.50/3.38 U11(f198_out1, x0, x1, x2) 9.50/3.38 U12(f23_out1, x0, x1, x2) 9.50/3.38 9.50/3.38 We have to consider all minimal (P,Q,R)-chains. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (130) UsableRulesProof (EQUIVALENT) 9.50/3.38 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. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (131) 9.50/3.38 Obligation: 9.50/3.38 Q DP problem: 9.50/3.38 The TRS P consists of the following rules: 9.50/3.38 9.50/3.38 F57_IN(T79) -> F57_IN(T79) 9.50/3.38 9.50/3.38 R is empty. 9.50/3.38 The set Q consists of the following terms: 9.50/3.38 9.50/3.38 f2_in(x0) 9.50/3.38 U1(f12_out1, x0) 9.50/3.38 f21_in([]) 9.50/3.38 f21_in(.(x0, .(x1, []))) 9.50/3.38 U2(f38_out1, .(x0, .(x1, []))) 9.50/3.38 f57_in(x0) 9.50/3.38 U3(f57_out1, x0) 9.50/3.38 f23_in([]) 9.50/3.38 f23_in(.(x0, [])) 9.50/3.38 f23_in(.(x0, .(x1, x2))) 9.50/3.38 U4(f196_out1, .(x0, .(x1, x2))) 9.50/3.38 f198_in(s(x0), s(x1)) 9.50/3.38 U5(f198_out1, s(x0), s(x1)) 9.50/3.38 f198_in(0, s(x0)) 9.50/3.38 f198_in(0, 0) 9.50/3.38 f42_in(x0) 9.50/3.38 U6(f57_out1, x0) 9.50/3.38 f12_in(x0) 9.50/3.38 U7(f21_out1, x0) 9.50/3.38 U8(f23_out1, x0) 9.50/3.38 f38_in(x0, x1) 9.50/3.38 U9(f42_out1, x0, x1) 9.50/3.38 U10(f21_out1, x0, x1) 9.50/3.38 f196_in(x0, x1, x2) 9.50/3.38 U11(f198_out1, x0, x1, x2) 9.50/3.38 U12(f23_out1, x0, x1, x2) 9.50/3.38 9.50/3.38 We have to consider all minimal (P,Q,R)-chains. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (132) QReductionProof (EQUIVALENT) 9.50/3.38 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 9.50/3.38 9.50/3.38 f2_in(x0) 9.50/3.38 U1(f12_out1, x0) 9.50/3.38 f21_in([]) 9.50/3.38 f21_in(.(x0, .(x1, []))) 9.50/3.38 U2(f38_out1, .(x0, .(x1, []))) 9.50/3.38 f57_in(x0) 9.50/3.38 U3(f57_out1, x0) 9.50/3.38 f23_in([]) 9.50/3.38 f23_in(.(x0, [])) 9.50/3.38 f23_in(.(x0, .(x1, x2))) 9.50/3.38 U4(f196_out1, .(x0, .(x1, x2))) 9.50/3.38 f198_in(s(x0), s(x1)) 9.50/3.38 U5(f198_out1, s(x0), s(x1)) 9.50/3.38 f198_in(0, s(x0)) 9.50/3.38 f198_in(0, 0) 9.50/3.38 f42_in(x0) 9.50/3.38 U6(f57_out1, x0) 9.50/3.38 f12_in(x0) 9.50/3.38 U7(f21_out1, x0) 9.50/3.38 U8(f23_out1, x0) 9.50/3.38 f38_in(x0, x1) 9.50/3.38 U9(f42_out1, x0, x1) 9.50/3.38 U10(f21_out1, x0, x1) 9.50/3.38 f196_in(x0, x1, x2) 9.50/3.38 U11(f198_out1, x0, x1, x2) 9.50/3.38 U12(f23_out1, x0, x1, x2) 9.50/3.38 9.50/3.38 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (133) 9.50/3.38 Obligation: 9.50/3.38 Q DP problem: 9.50/3.38 The TRS P consists of the following rules: 9.50/3.38 9.50/3.38 F57_IN(T79) -> F57_IN(T79) 9.50/3.38 9.50/3.38 R is empty. 9.50/3.38 Q is empty. 9.50/3.38 We have to consider all minimal (P,Q,R)-chains. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (134) NonTerminationLoopProof (COMPLETE) 9.50/3.38 We used the non-termination processor [FROCOS05] to show that the DP problem is infinite. 9.50/3.38 Found a loop by semiunifying a rule from P directly. 9.50/3.38 9.50/3.38 s = F57_IN(T79) evaluates to t =F57_IN(T79) 9.50/3.38 9.50/3.38 Thus s starts an infinite chain as s semiunifies with t with the following substitutions: 9.50/3.38 * Matcher: [ ] 9.50/3.38 * Semiunifier: [ ] 9.50/3.38 9.50/3.38 -------------------------------------------------------------------------------- 9.50/3.38 Rewriting sequence 9.50/3.38 9.50/3.38 The DP semiunifies directly so there is only one rewrite step from F57_IN(T79) to F57_IN(T79). 9.50/3.38 9.50/3.38 9.50/3.38 9.50/3.38 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (135) 9.50/3.38 NO 9.50/3.38 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (136) 9.50/3.38 Obligation: 9.50/3.38 Q DP problem: 9.50/3.38 The TRS P consists of the following rules: 9.50/3.38 9.50/3.38 F21_IN(.(T21, .(T22, []))) -> F38_IN(T21, T22) 9.50/3.38 F38_IN(T21, T22) -> U9^1(f42_in(T21), T21, T22) 9.50/3.38 U9^1(f42_out1, T21, T22) -> F21_IN(T22) 9.50/3.38 9.50/3.38 The TRS R consists of the following rules: 9.50/3.38 9.50/3.38 f2_in(T9) -> U1(f12_in(T9), T9) 9.50/3.38 U1(f12_out1, T9) -> f2_out1 9.50/3.38 f21_in([]) -> f21_out1 9.50/3.38 f21_in(.(T21, .(T22, []))) -> U2(f38_in(T21, T22), .(T21, .(T22, []))) 9.50/3.38 U2(f38_out1, .(T21, .(T22, []))) -> f21_out1 9.50/3.38 f57_in(T71) -> f57_out1 9.50/3.38 f57_in(T79) -> U3(f57_in(T79), T79) 9.50/3.38 U3(f57_out1, T79) -> f57_out1 9.50/3.38 f23_in([]) -> f23_out1 9.50/3.38 f23_in(.(T91, [])) -> f23_out1 9.50/3.38 f23_in(.(T98, .(T99, T100))) -> U4(f196_in(T98, T99, T100), .(T98, .(T99, T100))) 9.50/3.38 U4(f196_out1, .(T98, .(T99, T100))) -> f23_out1 9.50/3.38 f198_in(s(T113), s(T114)) -> U5(f198_in(T113, T114), s(T113), s(T114)) 9.50/3.38 U5(f198_out1, s(T113), s(T114)) -> f198_out1 9.50/3.38 f198_in(0, s(T121)) -> f198_out1 9.50/3.38 f198_in(0, 0) -> f198_out1 9.50/3.38 f42_in(T42) -> f42_out1 9.50/3.38 f42_in(T55) -> U6(f57_in(T55), T55) 9.50/3.38 U6(f57_out1, T55) -> f42_out1 9.50/3.38 f12_in(T9) -> U7(f21_in(T9), T9) 9.50/3.38 U7(f21_out1, T9) -> U8(f23_in(T9), T9) 9.50/3.38 U8(f23_out1, T9) -> f12_out1 9.50/3.38 f38_in(T21, T22) -> U9(f42_in(T21), T21, T22) 9.50/3.38 U9(f42_out1, T21, T22) -> U10(f21_in(T22), T21, T22) 9.50/3.38 U10(f21_out1, T21, T22) -> f38_out1 9.50/3.38 f196_in(T98, T99, T100) -> U11(f198_in(T98, T99), T98, T99, T100) 9.50/3.38 U11(f198_out1, T98, T99, T100) -> U12(f23_in(.(T99, T100)), T98, T99, T100) 9.50/3.38 U12(f23_out1, T98, T99, T100) -> f196_out1 9.50/3.38 9.50/3.38 Q is empty. 9.50/3.38 We have to consider all minimal (P,Q,R)-chains. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (137) MNOCProof (EQUIVALENT) 9.50/3.38 We use the modular non-overlap check [LPAR04] to enlarge Q to all left-hand sides of R. 9.50/3.38 ---------------------------------------- 9.50/3.38 9.50/3.38 (138) 9.50/3.38 Obligation: 9.50/3.38 Q DP problem: 9.50/3.38 The TRS P consists of the following rules: 9.50/3.38 9.50/3.38 F21_IN(.(T21, .(T22, []))) -> F38_IN(T21, T22) 9.50/3.38 F38_IN(T21, T22) -> U9^1(f42_in(T21), T21, T22) 9.50/3.38 U9^1(f42_out1, T21, T22) -> F21_IN(T22) 9.50/3.38 9.50/3.38 The TRS R consists of the following rules: 9.50/3.38 9.50/3.38 f2_in(T9) -> U1(f12_in(T9), T9) 9.50/3.38 U1(f12_out1, T9) -> f2_out1 9.50/3.38 f21_in([]) -> f21_out1 9.50/3.38 f21_in(.(T21, .(T22, []))) -> U2(f38_in(T21, T22), .(T21, .(T22, []))) 9.50/3.38 U2(f38_out1, .(T21, .(T22, []))) -> f21_out1 9.50/3.38 f57_in(T71) -> f57_out1 9.50/3.38 f57_in(T79) -> U3(f57_in(T79), T79) 9.50/3.38 U3(f57_out1, T79) -> f57_out1 9.50/3.38 f23_in([]) -> f23_out1 9.50/3.38 f23_in(.(T91, [])) -> f23_out1 9.50/3.38 f23_in(.(T98, .(T99, T100))) -> U4(f196_in(T98, T99, T100), .(T98, .(T99, T100))) 9.50/3.38 U4(f196_out1, .(T98, .(T99, T100))) -> f23_out1 9.50/3.38 f198_in(s(T113), s(T114)) -> U5(f198_in(T113, T114), s(T113), s(T114)) 9.50/3.38 U5(f198_out1, s(T113), s(T114)) -> f198_out1 9.50/3.38 f198_in(0, s(T121)) -> f198_out1 9.50/3.38 f198_in(0, 0) -> f198_out1 9.50/3.38 f42_in(T42) -> f42_out1 9.50/3.38 f42_in(T55) -> U6(f57_in(T55), T55) 9.50/3.38 U6(f57_out1, T55) -> f42_out1 9.50/3.38 f12_in(T9) -> U7(f21_in(T9), T9) 9.50/3.38 U7(f21_out1, T9) -> U8(f23_in(T9), T9) 9.50/3.38 U8(f23_out1, T9) -> f12_out1 9.50/3.38 f38_in(T21, T22) -> U9(f42_in(T21), T21, T22) 9.50/3.38 U9(f42_out1, T21, T22) -> U10(f21_in(T22), T21, T22) 9.50/3.38 U10(f21_out1, T21, T22) -> f38_out1 9.50/3.38 f196_in(T98, T99, T100) -> U11(f198_in(T98, T99), T98, T99, T100) 9.50/3.38 U11(f198_out1, T98, T99, T100) -> U12(f23_in(.(T99, T100)), T98, T99, T100) 9.50/3.38 U12(f23_out1, T98, T99, T100) -> f196_out1 9.50/3.38 9.50/3.38 The set Q consists of the following terms: 9.50/3.38 9.50/3.38 f2_in(x0) 9.50/3.38 U1(f12_out1, x0) 9.50/3.39 f21_in([]) 9.50/3.39 f21_in(.(x0, .(x1, []))) 9.50/3.39 U2(f38_out1, .(x0, .(x1, []))) 9.50/3.39 f57_in(x0) 9.50/3.39 U3(f57_out1, x0) 9.50/3.39 f23_in([]) 9.50/3.39 f23_in(.(x0, [])) 9.50/3.39 f23_in(.(x0, .(x1, x2))) 9.50/3.39 U4(f196_out1, .(x0, .(x1, x2))) 9.50/3.39 f198_in(s(x0), s(x1)) 9.50/3.39 U5(f198_out1, s(x0), s(x1)) 9.50/3.39 f198_in(0, s(x0)) 9.50/3.39 f198_in(0, 0) 9.50/3.39 f42_in(x0) 9.50/3.39 U6(f57_out1, x0) 9.50/3.39 f12_in(x0) 9.50/3.39 U7(f21_out1, x0) 9.50/3.39 U8(f23_out1, x0) 9.50/3.39 f38_in(x0, x1) 9.50/3.39 U9(f42_out1, x0, x1) 9.50/3.39 U10(f21_out1, x0, x1) 9.50/3.39 f196_in(x0, x1, x2) 9.50/3.39 U11(f198_out1, x0, x1, x2) 9.50/3.39 U12(f23_out1, x0, x1, x2) 9.50/3.39 9.50/3.39 We have to consider all minimal (P,Q,R)-chains. 9.50/3.39 ---------------------------------------- 9.50/3.39 9.50/3.39 (139) UsableRulesProof (EQUIVALENT) 9.50/3.39 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. 9.50/3.39 ---------------------------------------- 9.50/3.39 9.50/3.39 (140) 9.50/3.39 Obligation: 9.50/3.39 Q DP problem: 9.50/3.39 The TRS P consists of the following rules: 9.50/3.39 9.50/3.39 F21_IN(.(T21, .(T22, []))) -> F38_IN(T21, T22) 9.50/3.39 F38_IN(T21, T22) -> U9^1(f42_in(T21), T21, T22) 9.50/3.39 U9^1(f42_out1, T21, T22) -> F21_IN(T22) 9.50/3.39 9.50/3.39 The TRS R consists of the following rules: 9.50/3.39 9.50/3.39 f42_in(T42) -> f42_out1 9.50/3.39 f42_in(T55) -> U6(f57_in(T55), T55) 9.50/3.39 f57_in(T71) -> f57_out1 9.50/3.39 f57_in(T79) -> U3(f57_in(T79), T79) 9.50/3.39 U6(f57_out1, T55) -> f42_out1 9.50/3.39 U3(f57_out1, T79) -> f57_out1 9.50/3.39 9.50/3.39 The set Q consists of the following terms: 9.50/3.39 9.50/3.39 f2_in(x0) 9.50/3.39 U1(f12_out1, x0) 9.50/3.39 f21_in([]) 9.50/3.39 f21_in(.(x0, .(x1, []))) 9.50/3.39 U2(f38_out1, .(x0, .(x1, []))) 9.50/3.39 f57_in(x0) 9.50/3.39 U3(f57_out1, x0) 9.50/3.39 f23_in([]) 9.50/3.39 f23_in(.(x0, [])) 9.50/3.39 f23_in(.(x0, .(x1, x2))) 9.50/3.39 U4(f196_out1, .(x0, .(x1, x2))) 9.50/3.39 f198_in(s(x0), s(x1)) 9.50/3.39 U5(f198_out1, s(x0), s(x1)) 9.50/3.39 f198_in(0, s(x0)) 9.50/3.39 f198_in(0, 0) 9.50/3.39 f42_in(x0) 9.50/3.39 U6(f57_out1, x0) 9.50/3.39 f12_in(x0) 9.50/3.39 U7(f21_out1, x0) 9.50/3.39 U8(f23_out1, x0) 9.50/3.39 f38_in(x0, x1) 9.50/3.39 U9(f42_out1, x0, x1) 9.50/3.39 U10(f21_out1, x0, x1) 9.50/3.39 f196_in(x0, x1, x2) 9.50/3.39 U11(f198_out1, x0, x1, x2) 9.50/3.39 U12(f23_out1, x0, x1, x2) 9.50/3.39 9.50/3.39 We have to consider all minimal (P,Q,R)-chains. 9.50/3.39 ---------------------------------------- 9.50/3.39 9.50/3.39 (141) QReductionProof (EQUIVALENT) 9.50/3.39 We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN]. 9.50/3.39 9.50/3.39 f2_in(x0) 9.50/3.39 U1(f12_out1, x0) 9.50/3.39 f21_in([]) 9.50/3.39 f21_in(.(x0, .(x1, []))) 9.50/3.39 U2(f38_out1, .(x0, .(x1, []))) 9.50/3.39 f23_in([]) 9.50/3.39 f23_in(.(x0, [])) 9.50/3.39 f23_in(.(x0, .(x1, x2))) 9.50/3.39 U4(f196_out1, .(x0, .(x1, x2))) 9.50/3.39 f198_in(s(x0), s(x1)) 9.50/3.39 U5(f198_out1, s(x0), s(x1)) 9.50/3.39 f198_in(0, s(x0)) 9.50/3.39 f198_in(0, 0) 9.50/3.39 f12_in(x0) 9.50/3.39 U7(f21_out1, x0) 9.50/3.39 U8(f23_out1, x0) 9.50/3.39 f38_in(x0, x1) 9.50/3.39 U9(f42_out1, x0, x1) 9.50/3.39 U10(f21_out1, x0, x1) 9.50/3.39 f196_in(x0, x1, x2) 9.50/3.39 U11(f198_out1, x0, x1, x2) 9.50/3.39 U12(f23_out1, x0, x1, x2) 9.50/3.39 9.50/3.39 9.50/3.39 ---------------------------------------- 9.50/3.39 9.50/3.39 (142) 9.50/3.39 Obligation: 9.50/3.39 Q DP problem: 9.50/3.39 The TRS P consists of the following rules: 9.50/3.39 9.50/3.39 F21_IN(.(T21, .(T22, []))) -> F38_IN(T21, T22) 9.50/3.39 F38_IN(T21, T22) -> U9^1(f42_in(T21), T21, T22) 9.50/3.39 U9^1(f42_out1, T21, T22) -> F21_IN(T22) 9.50/3.39 9.50/3.39 The TRS R consists of the following rules: 9.50/3.39 9.50/3.39 f42_in(T42) -> f42_out1 9.50/3.39 f42_in(T55) -> U6(f57_in(T55), T55) 9.50/3.39 f57_in(T71) -> f57_out1 9.50/3.39 f57_in(T79) -> U3(f57_in(T79), T79) 9.50/3.39 U6(f57_out1, T55) -> f42_out1 9.50/3.39 U3(f57_out1, T79) -> f57_out1 9.50/3.39 9.50/3.39 The set Q consists of the following terms: 9.50/3.39 9.50/3.39 f57_in(x0) 9.50/3.39 U3(f57_out1, x0) 9.50/3.39 f42_in(x0) 9.50/3.39 U6(f57_out1, x0) 9.50/3.39 9.50/3.39 We have to consider all minimal (P,Q,R)-chains. 9.50/3.39 ---------------------------------------- 9.50/3.39 9.50/3.39 (143) QDPSizeChangeProof (EQUIVALENT) 9.50/3.39 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. 9.50/3.39 9.50/3.39 From the DPs we obtained the following set of size-change graphs: 9.50/3.39 *F38_IN(T21, T22) -> U9^1(f42_in(T21), T21, T22) 9.50/3.39 The graph contains the following edges 1 >= 2, 2 >= 3 9.50/3.39 9.50/3.39 9.50/3.39 *U9^1(f42_out1, T21, T22) -> F21_IN(T22) 9.50/3.39 The graph contains the following edges 3 >= 1 9.50/3.39 9.50/3.39 9.50/3.39 *F21_IN(.(T21, .(T22, []))) -> F38_IN(T21, T22) 9.50/3.39 The graph contains the following edges 1 > 1, 1 > 2 9.50/3.39 9.50/3.39 9.50/3.39 ---------------------------------------- 9.50/3.39 9.50/3.39 (144) 9.50/3.39 YES 9.50/3.39 9.50/3.39 ---------------------------------------- 9.50/3.39 9.50/3.39 (145) PrologToDTProblemTransformerProof (SOUND) 9.50/3.39 Built DT problem from termination graph DT10. 9.50/3.39 9.50/3.39 { 9.50/3.39 "root": 1, 9.50/3.39 "program": { 9.50/3.39 "directives": [], 9.50/3.39 "clauses": [ 9.50/3.39 [ 9.50/3.39 "(slowsort X Y)", 9.50/3.39 "(',' (perm X Y) (sorted Y))" 9.50/3.39 ], 9.50/3.39 [ 9.50/3.39 "(sorted ([]))", 9.50/3.39 null 9.50/3.39 ], 9.50/3.39 [ 9.50/3.39 "(sorted (. X ([])))", 9.50/3.39 null 9.50/3.39 ], 9.50/3.39 [ 9.50/3.39 "(sorted (. X (. Y Z)))", 9.50/3.39 "(',' (le X Y) (sorted (. Y Z)))" 9.50/3.39 ], 9.50/3.39 [ 9.50/3.39 "(perm ([]) ([]))", 9.50/3.39 null 9.50/3.39 ], 9.50/3.39 [ 9.50/3.39 "(perm (. X (. Y ([]))) (. U (. V ([]))))", 9.50/3.39 "(',' (delete U (. X Y) Z) (perm Z V))" 9.50/3.39 ], 9.50/3.39 [ 9.50/3.39 "(delete X (. X Y) Y)", 9.50/3.39 null 9.50/3.39 ], 9.50/3.39 [ 9.50/3.39 "(delete X (. Y Z) W)", 9.50/3.39 "(delete X Z W)" 9.50/3.39 ], 9.50/3.39 [ 9.50/3.39 "(le (s X) (s Y))", 9.50/3.39 "(le X Y)" 9.50/3.39 ], 9.50/3.39 [ 9.50/3.39 "(le (0) (s X))", 9.50/3.39 null 9.50/3.39 ], 9.50/3.39 [ 9.50/3.39 "(le (0) (0))", 9.50/3.39 null 9.50/3.39 ] 9.50/3.39 ] 9.50/3.39 }, 9.50/3.39 "graph": { 9.50/3.39 "nodes": { 9.50/3.39 "193": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": 3, 9.50/3.39 "scope": 3, 9.50/3.39 "term": "(sorted ([]))" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "type": "Nodes", 9.50/3.39 "395": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(delete T18 (. T20 T21) X22)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T18"], 9.50/3.39 "free": ["X22"], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "396": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(',' (perm T26 T19) (sorted (. T18 (. T19 ([])))))" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [ 9.50/3.39 "T18", 9.50/3.39 "T19" 9.50/3.39 ], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "430": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "431": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "432": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(delete T76 T79 X88)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T76"], 9.50/3.39 "free": ["X88"], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "433": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "434": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(perm T26 T19)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T19"], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "435": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(sorted (. T18 (. T19 ([]))))" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [ 9.50/3.39 "T18", 9.50/3.39 "T19" 9.50/3.39 ], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "436": { 9.50/3.39 "goal": [ 9.50/3.39 { 9.50/3.39 "clause": 4, 9.50/3.39 "scope": 6, 9.50/3.39 "term": "(perm T26 T19)" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "clause": 5, 9.50/3.39 "scope": 6, 9.50/3.39 "term": "(perm T26 T19)" 9.50/3.39 } 9.50/3.39 ], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T19"], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "437": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": 4, 9.50/3.39 "scope": 6, 9.50/3.39 "term": "(perm T26 T19)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T19"], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "438": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": 5, 9.50/3.39 "scope": 6, 9.50/3.39 "term": "(perm T26 T19)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T19"], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "439": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(true)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "10": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": 5, 9.50/3.39 "scope": 2, 9.50/3.39 "term": "(',' (perm T7 T6) (sorted T6))" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T6"], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "13": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(sorted ([]))" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "14": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "15": { 9.50/3.39 "goal": [ 9.50/3.39 { 9.50/3.39 "clause": 1, 9.50/3.39 "scope": 3, 9.50/3.39 "term": "(sorted ([]))" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "clause": 2, 9.50/3.39 "scope": 3, 9.50/3.39 "term": "(sorted ([]))" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "clause": 3, 9.50/3.39 "scope": 3, 9.50/3.39 "term": "(sorted ([]))" 9.50/3.39 } 9.50/3.39 ], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "16": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": 1, 9.50/3.39 "scope": 3, 9.50/3.39 "term": "(sorted ([]))" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "17": { 9.50/3.39 "goal": [ 9.50/3.39 { 9.50/3.39 "clause": 2, 9.50/3.39 "scope": 3, 9.50/3.39 "term": "(sorted ([]))" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "clause": 3, 9.50/3.39 "scope": 3, 9.50/3.39 "term": "(sorted ([]))" 9.50/3.39 } 9.50/3.39 ], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "18": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(true)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "19": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "440": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "1": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(slowsort T1 T2)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T2"], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "320": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "441": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "365": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(',' (',' (delete T18 (. T20 T21) X22) (perm X22 T19)) (sorted (. T18 (. T19 ([])))))" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [ 9.50/3.39 "T18", 9.50/3.39 "T19" 9.50/3.39 ], 9.50/3.39 "free": ["X22"], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "4": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": 0, 9.50/3.39 "scope": 1, 9.50/3.39 "term": "(slowsort T1 T2)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T2"], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "368": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "402": { 9.50/3.39 "goal": [ 9.50/3.39 { 9.50/3.39 "clause": 6, 9.50/3.39 "scope": 4, 9.50/3.39 "term": "(delete T18 (. T20 T21) X22)" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "clause": 7, 9.50/3.39 "scope": 4, 9.50/3.39 "term": "(delete T18 (. T20 T21) X22)" 9.50/3.39 } 9.50/3.39 ], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T18"], 9.50/3.39 "free": ["X22"], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "567": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(',' (le T114 T115) (sorted (. T115 ([]))))" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [ 9.50/3.39 "T114", 9.50/3.39 "T115" 9.50/3.39 ], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "7": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(',' (perm T7 T6) (sorted T6))" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T6"], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "403": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": 6, 9.50/3.39 "scope": 4, 9.50/3.39 "term": "(delete T18 (. T20 T21) X22)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T18"], 9.50/3.39 "free": ["X22"], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "568": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(le T114 T115)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [ 9.50/3.39 "T114", 9.50/3.39 "T115" 9.50/3.39 ], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "8": { 9.50/3.39 "goal": [ 9.50/3.39 { 9.50/3.39 "clause": 4, 9.50/3.39 "scope": 2, 9.50/3.39 "term": "(',' (perm T7 T6) (sorted T6))" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "clause": 5, 9.50/3.39 "scope": 2, 9.50/3.39 "term": "(',' (perm T7 T6) (sorted T6))" 9.50/3.39 } 9.50/3.39 ], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T6"], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "404": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": 7, 9.50/3.39 "scope": 4, 9.50/3.39 "term": "(delete T18 (. T20 T21) X22)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T18"], 9.50/3.39 "free": ["X22"], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "569": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(sorted (. T115 ([])))" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T115"], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "9": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": 4, 9.50/3.39 "scope": 2, 9.50/3.39 "term": "(',' (perm T7 T6) (sorted T6))" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T6"], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "570": { 9.50/3.39 "goal": [ 9.50/3.39 { 9.50/3.39 "clause": 8, 9.50/3.39 "scope": 8, 9.50/3.39 "term": "(le T114 T115)" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "clause": 9, 9.50/3.39 "scope": 8, 9.50/3.39 "term": "(le T114 T115)" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "clause": 10, 9.50/3.39 "scope": 8, 9.50/3.39 "term": "(le T114 T115)" 9.50/3.39 } 9.50/3.39 ], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [ 9.50/3.39 "T114", 9.50/3.39 "T115" 9.50/3.39 ], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "571": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": 8, 9.50/3.39 "scope": 8, 9.50/3.39 "term": "(le T114 T115)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [ 9.50/3.39 "T114", 9.50/3.39 "T115" 9.50/3.39 ], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "572": { 9.50/3.39 "goal": [ 9.50/3.39 { 9.50/3.39 "clause": 9, 9.50/3.39 "scope": 8, 9.50/3.39 "term": "(le T114 T115)" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "clause": 10, 9.50/3.39 "scope": 8, 9.50/3.39 "term": "(le T114 T115)" 9.50/3.39 } 9.50/3.39 ], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [ 9.50/3.39 "T114", 9.50/3.39 "T115" 9.50/3.39 ], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "573": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(le T128 T129)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [ 9.50/3.39 "T128", 9.50/3.39 "T129" 9.50/3.39 ], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "574": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "498": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(',' (delete T94 (. T96 T97) X106) (perm X106 T95))" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [ 9.50/3.39 "T94", 9.50/3.39 "T95" 9.50/3.39 ], 9.50/3.39 "free": ["X106"], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "575": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": 9, 9.50/3.39 "scope": 8, 9.50/3.39 "term": "(le T114 T115)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [ 9.50/3.39 "T114", 9.50/3.39 "T115" 9.50/3.39 ], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "499": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "576": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": 10, 9.50/3.39 "scope": 8, 9.50/3.39 "term": "(le T114 T115)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [ 9.50/3.39 "T114", 9.50/3.39 "T115" 9.50/3.39 ], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "577": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(true)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "578": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "579": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "580": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(true)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "581": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "582": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "583": { 9.50/3.39 "goal": [ 9.50/3.39 { 9.50/3.39 "clause": 1, 9.50/3.39 "scope": 9, 9.50/3.39 "term": "(sorted (. T115 ([])))" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "clause": 2, 9.50/3.39 "scope": 9, 9.50/3.39 "term": "(sorted (. T115 ([])))" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "clause": 3, 9.50/3.39 "scope": 9, 9.50/3.39 "term": "(sorted (. T115 ([])))" 9.50/3.39 } 9.50/3.39 ], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T115"], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "584": { 9.50/3.39 "goal": [ 9.50/3.39 { 9.50/3.39 "clause": 2, 9.50/3.39 "scope": 9, 9.50/3.39 "term": "(sorted (. T115 ([])))" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "clause": 3, 9.50/3.39 "scope": 9, 9.50/3.39 "term": "(sorted (. T115 ([])))" 9.50/3.39 } 9.50/3.39 ], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T115"], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "585": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": 2, 9.50/3.39 "scope": 9, 9.50/3.39 "term": "(sorted (. T115 ([])))" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T115"], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "586": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": 3, 9.50/3.39 "scope": 9, 9.50/3.39 "term": "(sorted (. T115 ([])))" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T115"], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "422": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(true)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "587": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(true)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "423": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "500": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(delete T94 (. T96 T97) X106)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T94"], 9.50/3.39 "free": ["X106"], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "588": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "424": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "501": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(perm T102 T95)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T95"], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "589": { 9.50/3.39 "goal": [], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "425": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(delete T52 T55 X59)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T52"], 9.50/3.39 "free": ["X59"], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "502": { 9.50/3.39 "goal": [ 9.50/3.39 { 9.50/3.39 "clause": 1, 9.50/3.39 "scope": 7, 9.50/3.39 "term": "(sorted (. T18 (. T19 ([]))))" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "clause": 2, 9.50/3.39 "scope": 7, 9.50/3.39 "term": "(sorted (. T18 (. T19 ([]))))" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "clause": 3, 9.50/3.39 "scope": 7, 9.50/3.39 "term": "(sorted (. T18 (. T19 ([]))))" 9.50/3.39 } 9.50/3.39 ], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [ 9.50/3.39 "T18", 9.50/3.39 "T19" 9.50/3.39 ], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "426": { 9.50/3.39 "goal": [ 9.50/3.39 { 9.50/3.39 "clause": 6, 9.50/3.39 "scope": 5, 9.50/3.39 "term": "(delete T52 T55 X59)" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "clause": 7, 9.50/3.39 "scope": 5, 9.50/3.39 "term": "(delete T52 T55 X59)" 9.50/3.39 } 9.50/3.39 ], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T52"], 9.50/3.39 "free": ["X59"], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "503": { 9.50/3.39 "goal": [ 9.50/3.39 { 9.50/3.39 "clause": 2, 9.50/3.39 "scope": 7, 9.50/3.39 "term": "(sorted (. T18 (. T19 ([]))))" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "clause": 3, 9.50/3.39 "scope": 7, 9.50/3.39 "term": "(sorted (. T18 (. T19 ([]))))" 9.50/3.39 } 9.50/3.39 ], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [ 9.50/3.39 "T18", 9.50/3.39 "T19" 9.50/3.39 ], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "427": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": 6, 9.50/3.39 "scope": 5, 9.50/3.39 "term": "(delete T52 T55 X59)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T52"], 9.50/3.39 "free": ["X59"], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "504": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": 3, 9.50/3.39 "scope": 7, 9.50/3.39 "term": "(sorted (. T18 (. T19 ([]))))" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [ 9.50/3.39 "T18", 9.50/3.39 "T19" 9.50/3.39 ], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "428": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": 7, 9.50/3.39 "scope": 5, 9.50/3.39 "term": "(delete T52 T55 X59)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": ["T52"], 9.50/3.39 "free": ["X59"], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "429": { 9.50/3.39 "goal": [{ 9.50/3.39 "clause": -1, 9.50/3.39 "scope": -1, 9.50/3.39 "term": "(true)" 9.50/3.39 }], 9.50/3.39 "kb": { 9.50/3.39 "nonunifying": [], 9.50/3.39 "intvars": {}, 9.50/3.39 "arithmetic": { 9.50/3.39 "type": "PlainIntegerRelationState", 9.50/3.39 "relations": [] 9.50/3.39 }, 9.50/3.39 "ground": [], 9.50/3.39 "free": [], 9.50/3.39 "exprvars": [] 9.50/3.39 } 9.50/3.39 } 9.50/3.39 }, 9.50/3.39 "edges": [ 9.50/3.39 { 9.50/3.39 "from": 1, 9.50/3.39 "to": 4, 9.50/3.39 "label": "CASE" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 4, 9.50/3.39 "to": 7, 9.50/3.39 "label": "ONLY EVAL with clause\nslowsort(X3, X4) :- ','(perm(X3, X4), sorted(X4)).\nand substitutionT1 -> T7,\nX3 -> T7,\nT2 -> T6,\nX4 -> T6,\nT5 -> T7" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 7, 9.50/3.39 "to": 8, 9.50/3.39 "label": "CASE" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 8, 9.50/3.39 "to": 9, 9.50/3.39 "label": "PARALLEL" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 8, 9.50/3.39 "to": 10, 9.50/3.39 "label": "PARALLEL" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 9, 9.50/3.39 "to": 13, 9.50/3.39 "label": "EVAL with clause\nperm([], []).\nand substitutionT7 -> [],\nT6 -> []" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 9, 9.50/3.39 "to": 14, 9.50/3.39 "label": "EVAL-BACKTRACK" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 10, 9.50/3.39 "to": 365, 9.50/3.39 "label": "EVAL with clause\nperm(.(X18, .(X19, [])), .(X20, .(X21, []))) :- ','(delete(X20, .(X18, X19), X22), perm(X22, X21)).\nand substitutionX18 -> T20,\nX19 -> T21,\nT7 -> .(T20, .(T21, [])),\nX20 -> T18,\nX21 -> T19,\nT6 -> .(T18, .(T19, [])),\nT16 -> T20,\nT17 -> T21" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 10, 9.50/3.39 "to": 368, 9.50/3.39 "label": "EVAL-BACKTRACK" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 13, 9.50/3.39 "to": 15, 9.50/3.39 "label": "CASE" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 15, 9.50/3.39 "to": 16, 9.50/3.39 "label": "PARALLEL" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 15, 9.50/3.39 "to": 17, 9.50/3.39 "label": "PARALLEL" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 16, 9.50/3.39 "to": 18, 9.50/3.39 "label": "ONLY EVAL with clause\nsorted([]).\nand substitution" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 17, 9.50/3.39 "to": 193, 9.50/3.39 "label": "BACKTRACK\nfor clause: sorted(.(X, []))because of non-unification" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 18, 9.50/3.39 "to": 19, 9.50/3.39 "label": "SUCCESS" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 193, 9.50/3.39 "to": 320, 9.50/3.39 "label": "BACKTRACK\nfor clause: sorted(.(X, .(Y, Z))) :- ','(le(X, Y), sorted(.(Y, Z)))because of non-unification" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 365, 9.50/3.39 "to": 395, 9.50/3.39 "label": "SPLIT 1" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 365, 9.50/3.39 "to": 396, 9.50/3.39 "label": "SPLIT 2\nnew knowledge:\nT18 is ground\nreplacements:X22 -> T26" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 395, 9.50/3.39 "to": 402, 9.50/3.39 "label": "CASE" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 396, 9.50/3.39 "to": 434, 9.50/3.39 "label": "SPLIT 1" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 396, 9.50/3.39 "to": 435, 9.50/3.39 "label": "SPLIT 2\nnew knowledge:\nT19 is ground" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 402, 9.50/3.39 "to": 403, 9.50/3.39 "label": "PARALLEL" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 402, 9.50/3.39 "to": 404, 9.50/3.39 "label": "PARALLEL" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 403, 9.50/3.39 "to": 422, 9.50/3.39 "label": "EVAL with clause\ndelete(X39, .(X39, X40), X40).\nand substitutionT18 -> T39,\nX39 -> T39,\nT20 -> T39,\nT21 -> T40,\nX40 -> T40,\nX22 -> T40" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 403, 9.50/3.39 "to": 423, 9.50/3.39 "label": "EVAL-BACKTRACK" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 404, 9.50/3.39 "to": 425, 9.50/3.39 "label": "ONLY EVAL with clause\ndelete(X55, .(X56, X57), X58) :- delete(X55, X57, X58).\nand substitutionT18 -> T52,\nX55 -> T52,\nT20 -> T53,\nX56 -> T53,\nT21 -> T55,\nX57 -> T55,\nX22 -> X59,\nX58 -> X59,\nT54 -> T55" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 422, 9.50/3.39 "to": 424, 9.50/3.39 "label": "SUCCESS" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 425, 9.50/3.39 "to": 426, 9.50/3.39 "label": "CASE" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 426, 9.50/3.39 "to": 427, 9.50/3.39 "label": "PARALLEL" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 426, 9.50/3.39 "to": 428, 9.50/3.39 "label": "PARALLEL" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 427, 9.50/3.39 "to": 429, 9.50/3.39 "label": "EVAL with clause\ndelete(X72, .(X72, X73), X73).\nand substitutionT52 -> T68,\nX72 -> T68,\nX73 -> T69,\nT55 -> .(T68, T69),\nX59 -> T69" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 427, 9.50/3.39 "to": 430, 9.50/3.39 "label": "EVAL-BACKTRACK" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 428, 9.50/3.39 "to": 432, 9.50/3.39 "label": "EVAL with clause\ndelete(X84, .(X85, X86), X87) :- delete(X84, X86, X87).\nand substitutionT52 -> T76,\nX84 -> T76,\nX85 -> T77,\nX86 -> T79,\nT55 -> .(T77, T79),\nX59 -> X88,\nX87 -> X88,\nT78 -> T79" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 428, 9.50/3.39 "to": 433, 9.50/3.39 "label": "EVAL-BACKTRACK" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 429, 9.50/3.39 "to": 431, 9.50/3.39 "label": "SUCCESS" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 432, 9.50/3.39 "to": 425, 9.50/3.39 "label": "INSTANCE with matching:\nT52 -> T76\nT55 -> T79\nX59 -> X88" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 434, 9.50/3.39 "to": 436, 9.50/3.39 "label": "CASE" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 435, 9.50/3.39 "to": 502, 9.50/3.39 "label": "CASE" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 436, 9.50/3.39 "to": 437, 9.50/3.39 "label": "PARALLEL" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 436, 9.50/3.39 "to": 438, 9.50/3.39 "label": "PARALLEL" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 437, 9.50/3.39 "to": 439, 9.50/3.39 "label": "EVAL with clause\nperm([], []).\nand substitutionT26 -> [],\nT19 -> []" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 437, 9.50/3.39 "to": 440, 9.50/3.39 "label": "EVAL-BACKTRACK" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 438, 9.50/3.39 "to": 498, 9.50/3.39 "label": "EVAL with clause\nperm(.(X102, .(X103, [])), .(X104, .(X105, []))) :- ','(delete(X104, .(X102, X103), X106), perm(X106, X105)).\nand substitutionX102 -> T96,\nX103 -> T97,\nT26 -> .(T96, .(T97, [])),\nX104 -> T94,\nX105 -> T95,\nT19 -> .(T94, .(T95, [])),\nT92 -> T96,\nT93 -> T97" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 438, 9.50/3.39 "to": 499, 9.50/3.39 "label": "EVAL-BACKTRACK" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 439, 9.50/3.39 "to": 441, 9.50/3.39 "label": "SUCCESS" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 498, 9.50/3.39 "to": 500, 9.50/3.39 "label": "SPLIT 1" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 498, 9.50/3.39 "to": 501, 9.50/3.39 "label": "SPLIT 2\nnew knowledge:\nT94 is ground\nreplacements:X106 -> T102" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 500, 9.50/3.39 "to": 395, 9.50/3.39 "label": "INSTANCE with matching:\nT18 -> T94\nT20 -> T96\nT21 -> T97\nX22 -> X106" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 501, 9.50/3.39 "to": 434, 9.50/3.39 "label": "INSTANCE with matching:\nT26 -> T102\nT19 -> T95" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 502, 9.50/3.39 "to": 503, 9.50/3.39 "label": "BACKTRACK\nfor clause: sorted([])because of non-unification" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 503, 9.50/3.39 "to": 504, 9.50/3.39 "label": "BACKTRACK\nfor clause: sorted(.(X, []))because of non-unification" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 504, 9.50/3.39 "to": 567, 9.50/3.39 "label": "ONLY EVAL with clause\nsorted(.(X124, .(X125, X126))) :- ','(le(X124, X125), sorted(.(X125, X126))).\nand substitutionT18 -> T114,\nX124 -> T114,\nT19 -> T115,\nX125 -> T115,\nX126 -> []" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 567, 9.50/3.39 "to": 568, 9.50/3.39 "label": "SPLIT 1" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 567, 9.50/3.39 "to": 569, 9.50/3.39 "label": "SPLIT 2\nnew knowledge:\nT114 is ground\nT115 is ground" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 568, 9.50/3.39 "to": 570, 9.50/3.39 "label": "CASE" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 569, 9.50/3.39 "to": 583, 9.50/3.39 "label": "CASE" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 570, 9.50/3.39 "to": 571, 9.50/3.39 "label": "PARALLEL" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 570, 9.50/3.39 "to": 572, 9.50/3.39 "label": "PARALLEL" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 571, 9.50/3.39 "to": 573, 9.50/3.39 "label": "EVAL with clause\nle(s(X139), s(X140)) :- le(X139, X140).\nand substitutionX139 -> T128,\nT114 -> s(T128),\nX140 -> T129,\nT115 -> s(T129)" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 571, 9.50/3.39 "to": 574, 9.50/3.39 "label": "EVAL-BACKTRACK" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 572, 9.50/3.39 "to": 575, 9.50/3.39 "label": "PARALLEL" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 572, 9.50/3.39 "to": 576, 9.50/3.39 "label": "PARALLEL" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 573, 9.50/3.39 "to": 568, 9.50/3.39 "label": "INSTANCE with matching:\nT114 -> T128\nT115 -> T129" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 575, 9.50/3.39 "to": 577, 9.50/3.39 "label": "EVAL with clause\nle(0, s(X147)).\nand substitutionT114 -> 0,\nX147 -> T136,\nT115 -> s(T136)" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 575, 9.50/3.39 "to": 578, 9.50/3.39 "label": "EVAL-BACKTRACK" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 576, 9.50/3.39 "to": 580, 9.50/3.39 "label": "EVAL with clause\nle(0, 0).\nand substitutionT114 -> 0,\nT115 -> 0" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 576, 9.50/3.39 "to": 581, 9.50/3.39 "label": "EVAL-BACKTRACK" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 577, 9.50/3.39 "to": 579, 9.50/3.39 "label": "SUCCESS" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 580, 9.50/3.39 "to": 582, 9.50/3.39 "label": "SUCCESS" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 583, 9.50/3.39 "to": 584, 9.50/3.39 "label": "BACKTRACK\nfor clause: sorted([])because of non-unification" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 584, 9.50/3.39 "to": 585, 9.50/3.39 "label": "PARALLEL" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 584, 9.50/3.39 "to": 586, 9.50/3.39 "label": "PARALLEL" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 585, 9.50/3.39 "to": 587, 9.50/3.39 "label": "ONLY EVAL with clause\nsorted(.(X152, [])).\nand substitutionT115 -> T141,\nX152 -> T141" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 586, 9.50/3.39 "to": 589, 9.50/3.39 "label": "BACKTRACK\nfor clause: sorted(.(X, .(Y, Z))) :- ','(le(X, Y), sorted(.(Y, Z)))because of non-unification" 9.50/3.39 }, 9.50/3.39 { 9.50/3.39 "from": 587, 9.50/3.39 "to": 588, 9.50/3.39 "label": "SUCCESS" 9.50/3.39 } 9.50/3.39 ], 9.50/3.39 "type": "Graph" 9.50/3.39 } 9.50/3.39 } 9.50/3.39 9.50/3.39 ---------------------------------------- 9.50/3.39 9.50/3.39 (146) 9.50/3.39 Obligation: 9.50/3.39 Triples: 9.50/3.39 9.50/3.39 deleteA(X1, .(X2, X3), X4) :- deleteA(X1, X3, X4). 9.50/3.39 deleteB(X1, X2, X3, X4) :- deleteA(X1, X3, X4). 9.50/3.39 permC(.(X1, .(X2, [])), .(X3, .(X4, []))) :- deleteB(X3, X1, X2, X5). 9.50/3.39 permC(.(X1, .(X2, [])), .(X3, .(X4, []))) :- ','(deletecB(X3, X1, X2, X5), permC(X5, X4)). 9.50/3.39 leD(s(X1), s(X2)) :- leD(X1, X2). 9.50/3.39 slowsortE(.(X1, .(X2, [])), .(X3, .(X4, []))) :- deleteB(X3, X1, X2, X5). 9.50/3.39 slowsortE(.(X1, .(X2, [])), .(X3, .(X4, []))) :- ','(deletecB(X3, X1, X2, X5), permC(X5, X4)). 9.50/3.39 slowsortE(.(X1, .(X2, [])), .(X3, .(X4, []))) :- ','(deletecB(X3, X1, X2, X5), ','(permcC(X5, X4), leD(X3, X4))). 9.50/3.39 9.50/3.39 Clauses: 9.50/3.39 9.50/3.39 deletecA(X1, .(X1, X2), X2). 9.50/3.39 deletecA(X1, .(X2, X3), X4) :- deletecA(X1, X3, X4). 9.50/3.39 deletecB(X1, X1, X2, X2). 9.50/3.39 deletecB(X1, X2, X3, X4) :- deletecA(X1, X3, X4). 9.50/3.39 permcC([], []). 9.50/3.39 permcC(.(X1, .(X2, [])), .(X3, .(X4, []))) :- ','(deletecB(X3, X1, X2, X5), permcC(X5, X4)). 9.50/3.39 lecD(s(X1), s(X2)) :- lecD(X1, X2). 9.50/3.39 lecD(0, s(X1)). 9.50/3.39 lecD(0, 0). 9.50/3.39 9.50/3.39 Afs: 9.50/3.39 9.50/3.39 slowsortE(x1, x2) = slowsortE(x2) 9.50/3.39 9.50/3.39 9.50/3.39 ---------------------------------------- 9.50/3.39 9.50/3.39 (147) TriplesToPiDPProof (SOUND) 9.50/3.39 We use the technique of [DT09]. With regard to the inferred argument filtering the predicates were used in the following modes: 9.50/3.39 9.50/3.39 slowsortE_in_2: (f,b) 9.50/3.39 9.50/3.39 deleteB_in_4: (b,f,f,f) 9.50/3.39 9.50/3.39 deleteA_in_3: (b,f,f) 9.50/3.39 9.50/3.39 deletecB_in_4: (b,f,f,f) 9.50/3.39 9.50/3.39 deletecA_in_3: (b,f,f) 9.50/3.39 9.50/3.39 permC_in_2: (f,b) 9.50/3.39 9.50/3.39 permcC_in_2: (f,b) 9.50/3.39 9.50/3.39 leD_in_2: (b,b) 9.50/3.39 9.50/3.39 Transforming TRIPLES into the following Term Rewriting System: 9.50/3.39 9.50/3.39 Pi DP problem: 9.50/3.39 The TRS P consists of the following rules: 9.50/3.39 9.50/3.39 SLOWSORTE_IN_AG(.(X1, .(X2, [])), .(X3, .(X4, []))) -> U7_AG(X1, X2, X3, X4, deleteB_in_gaaa(X3, X1, X2, X5)) 9.50/3.39 SLOWSORTE_IN_AG(.(X1, .(X2, [])), .(X3, .(X4, []))) -> DELETEB_IN_GAAA(X3, X1, X2, X5) 9.50/3.39 DELETEB_IN_GAAA(X1, X2, X3, X4) -> U2_GAAA(X1, X2, X3, X4, deleteA_in_gaa(X1, X3, X4)) 9.50/3.39 DELETEB_IN_GAAA(X1, X2, X3, X4) -> DELETEA_IN_GAA(X1, X3, X4) 9.50/3.39 DELETEA_IN_GAA(X1, .(X2, X3), X4) -> U1_GAA(X1, X2, X3, X4, deleteA_in_gaa(X1, X3, X4)) 9.50/3.39 DELETEA_IN_GAA(X1, .(X2, X3), X4) -> DELETEA_IN_GAA(X1, X3, X4) 9.50/3.39 SLOWSORTE_IN_AG(.(X1, .(X2, [])), .(X3, .(X4, []))) -> U8_AG(X1, X2, X3, X4, deletecB_in_gaaa(X3, X1, X2, X5)) 9.50/3.39 U8_AG(X1, X2, X3, X4, deletecB_out_gaaa(X3, X1, X2, X5)) -> U9_AG(X1, X2, X3, X4, permC_in_ag(X5, X4)) 9.50/3.39 U8_AG(X1, X2, X3, X4, deletecB_out_gaaa(X3, X1, X2, X5)) -> PERMC_IN_AG(X5, X4) 9.50/3.39 PERMC_IN_AG(.(X1, .(X2, [])), .(X3, .(X4, []))) -> U3_AG(X1, X2, X3, X4, deleteB_in_gaaa(X3, X1, X2, X5)) 9.50/3.39 PERMC_IN_AG(.(X1, .(X2, [])), .(X3, .(X4, []))) -> DELETEB_IN_GAAA(X3, X1, X2, X5) 9.50/3.39 PERMC_IN_AG(.(X1, .(X2, [])), .(X3, .(X4, []))) -> U4_AG(X1, X2, X3, X4, deletecB_in_gaaa(X3, X1, X2, X5)) 9.50/3.39 U4_AG(X1, X2, X3, X4, deletecB_out_gaaa(X3, X1, X2, X5)) -> U5_AG(X1, X2, X3, X4, permC_in_ag(X5, X4)) 9.50/3.39 U4_AG(X1, X2, X3, X4, deletecB_out_gaaa(X3, X1, X2, X5)) -> PERMC_IN_AG(X5, X4) 9.50/3.39 U8_AG(X1, X2, X3, X4, deletecB_out_gaaa(X3, X1, X2, X5)) -> U10_AG(X1, X2, X3, X4, permcC_in_ag(X5, X4)) 9.50/3.39 U10_AG(X1, X2, X3, X4, permcC_out_ag(X5, X4)) -> U11_AG(X1, X2, X3, X4, leD_in_gg(X3, X4)) 9.50/3.39 U10_AG(X1, X2, X3, X4, permcC_out_ag(X5, X4)) -> LED_IN_GG(X3, X4) 9.50/3.39 LED_IN_GG(s(X1), s(X2)) -> U6_GG(X1, X2, leD_in_gg(X1, X2)) 9.50/3.39 LED_IN_GG(s(X1), s(X2)) -> LED_IN_GG(X1, X2) 9.50/3.39 9.50/3.39 The TRS R consists of the following rules: 9.50/3.39 9.50/3.39 deletecB_in_gaaa(X1, X1, X2, X2) -> deletecB_out_gaaa(X1, X1, X2, X2) 9.50/3.39 deletecB_in_gaaa(X1, X2, X3, X4) -> U14_gaaa(X1, X2, X3, X4, deletecA_in_gaa(X1, X3, X4)) 9.50/3.39 deletecA_in_gaa(X1, .(X1, X2), X2) -> deletecA_out_gaa(X1, .(X1, X2), X2) 9.50/3.39 deletecA_in_gaa(X1, .(X2, X3), X4) -> U13_gaa(X1, X2, X3, X4, deletecA_in_gaa(X1, X3, X4)) 9.50/3.39 U13_gaa(X1, X2, X3, X4, deletecA_out_gaa(X1, X3, X4)) -> deletecA_out_gaa(X1, .(X2, X3), X4) 9.50/3.39 U14_gaaa(X1, X2, X3, X4, deletecA_out_gaa(X1, X3, X4)) -> deletecB_out_gaaa(X1, X2, X3, X4) 9.50/3.39 permcC_in_ag([], []) -> permcC_out_ag([], []) 9.50/3.39 permcC_in_ag(.(X1, .(X2, [])), .(X3, .(X4, []))) -> U15_ag(X1, X2, X3, X4, deletecB_in_gaaa(X3, X1, X2, X5)) 9.50/3.39 U15_ag(X1, X2, X3, X4, deletecB_out_gaaa(X3, X1, X2, X5)) -> U16_ag(X1, X2, X3, X4, permcC_in_ag(X5, X4)) 9.50/3.39 U16_ag(X1, X2, X3, X4, permcC_out_ag(X5, X4)) -> permcC_out_ag(.(X1, .(X2, [])), .(X3, .(X4, []))) 9.50/3.39 9.50/3.39 The argument filtering Pi contains the following mapping: 9.50/3.39 .(x1, x2) = .(x1, x2) 9.50/3.39 9.50/3.39 [] = [] 9.50/3.39 9.50/3.39 deleteB_in_gaaa(x1, x2, x3, x4) = deleteB_in_gaaa(x1) 9.50/3.39 9.50/3.39 deleteA_in_gaa(x1, x2, x3) = deleteA_in_gaa(x1) 9.50/3.39 9.50/3.39 deletecB_in_gaaa(x1, x2, x3, x4) = deletecB_in_gaaa(x1) 9.50/3.39 9.50/3.39 deletecB_out_gaaa(x1, x2, x3, x4) = deletecB_out_gaaa(x1) 9.50/3.39 9.50/3.39 U14_gaaa(x1, x2, x3, x4, x5) = U14_gaaa(x1, x5) 9.50/3.39 9.50/3.39 deletecA_in_gaa(x1, x2, x3) = deletecA_in_gaa(x1) 9.50/3.39 9.50/3.39 deletecA_out_gaa(x1, x2, x3) = deletecA_out_gaa(x1) 9.50/3.39 9.50/3.39 U13_gaa(x1, x2, x3, x4, x5) = U13_gaa(x1, x5) 9.50/3.39 9.50/3.39 permC_in_ag(x1, x2) = permC_in_ag(x2) 9.50/3.39 9.50/3.39 permcC_in_ag(x1, x2) = permcC_in_ag(x2) 9.50/3.39 9.50/3.39 permcC_out_ag(x1, x2) = permcC_out_ag(x2) 9.50/3.39 9.50/3.39 U15_ag(x1, x2, x3, x4, x5) = U15_ag(x3, x4, x5) 9.50/3.39 9.50/3.39 U16_ag(x1, x2, x3, x4, x5) = U16_ag(x3, x4, x5) 9.50/3.39 9.50/3.39 leD_in_gg(x1, x2) = leD_in_gg(x1, x2) 9.50/3.39 9.50/3.39 s(x1) = s(x1) 9.50/3.39 9.50/3.39 SLOWSORTE_IN_AG(x1, x2) = SLOWSORTE_IN_AG(x2) 9.50/3.39 9.50/3.39 U7_AG(x1, x2, x3, x4, x5) = U7_AG(x3, x4, x5) 9.50/3.39 9.50/3.39 DELETEB_IN_GAAA(x1, x2, x3, x4) = DELETEB_IN_GAAA(x1) 9.50/3.39 9.50/3.39 U2_GAAA(x1, x2, x3, x4, x5) = U2_GAAA(x1, x5) 9.50/3.39 9.50/3.39 DELETEA_IN_GAA(x1, x2, x3) = DELETEA_IN_GAA(x1) 9.50/3.39 9.50/3.39 U1_GAA(x1, x2, x3, x4, x5) = U1_GAA(x1, x5) 9.50/3.39 9.50/3.39 U8_AG(x1, x2, x3, x4, x5) = U8_AG(x3, x4, x5) 9.50/3.40 9.50/3.40 U9_AG(x1, x2, x3, x4, x5) = U9_AG(x3, x4, x5) 9.50/3.40 9.50/3.40 PERMC_IN_AG(x1, x2) = PERMC_IN_AG(x2) 9.50/3.40 9.50/3.40 U3_AG(x1, x2, x3, x4, x5) = U3_AG(x3, x4, x5) 9.50/3.40 9.50/3.40 U4_AG(x1, x2, x3, x4, x5) = U4_AG(x3, x4, x5) 9.50/3.40 9.50/3.40 U5_AG(x1, x2, x3, x4, x5) = U5_AG(x3, x4, x5) 9.50/3.40 9.50/3.40 U10_AG(x1, x2, x3, x4, x5) = U10_AG(x3, x4, x5) 9.50/3.40 9.50/3.40 U11_AG(x1, x2, x3, x4, x5) = U11_AG(x3, x4, x5) 9.50/3.40 9.50/3.40 LED_IN_GG(x1, x2) = LED_IN_GG(x1, x2) 9.50/3.40 9.50/3.40 U6_GG(x1, x2, x3) = U6_GG(x1, x2, x3) 9.50/3.40 9.50/3.40 9.50/3.40 We have to consider all (P,R,Pi)-chains 9.50/3.40 9.50/3.40 9.50/3.40 Infinitary Constructor Rewriting Termination of PiDP implies Termination of TRIPLES 9.50/3.40 9.50/3.40 9.50/3.40 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (148) 9.50/3.40 Obligation: 9.50/3.40 Pi DP problem: 9.50/3.40 The TRS P consists of the following rules: 9.50/3.40 9.50/3.40 SLOWSORTE_IN_AG(.(X1, .(X2, [])), .(X3, .(X4, []))) -> U7_AG(X1, X2, X3, X4, deleteB_in_gaaa(X3, X1, X2, X5)) 9.50/3.40 SLOWSORTE_IN_AG(.(X1, .(X2, [])), .(X3, .(X4, []))) -> DELETEB_IN_GAAA(X3, X1, X2, X5) 9.50/3.40 DELETEB_IN_GAAA(X1, X2, X3, X4) -> U2_GAAA(X1, X2, X3, X4, deleteA_in_gaa(X1, X3, X4)) 9.50/3.40 DELETEB_IN_GAAA(X1, X2, X3, X4) -> DELETEA_IN_GAA(X1, X3, X4) 9.50/3.40 DELETEA_IN_GAA(X1, .(X2, X3), X4) -> U1_GAA(X1, X2, X3, X4, deleteA_in_gaa(X1, X3, X4)) 9.50/3.40 DELETEA_IN_GAA(X1, .(X2, X3), X4) -> DELETEA_IN_GAA(X1, X3, X4) 9.50/3.40 SLOWSORTE_IN_AG(.(X1, .(X2, [])), .(X3, .(X4, []))) -> U8_AG(X1, X2, X3, X4, deletecB_in_gaaa(X3, X1, X2, X5)) 9.50/3.40 U8_AG(X1, X2, X3, X4, deletecB_out_gaaa(X3, X1, X2, X5)) -> U9_AG(X1, X2, X3, X4, permC_in_ag(X5, X4)) 9.50/3.40 U8_AG(X1, X2, X3, X4, deletecB_out_gaaa(X3, X1, X2, X5)) -> PERMC_IN_AG(X5, X4) 9.50/3.40 PERMC_IN_AG(.(X1, .(X2, [])), .(X3, .(X4, []))) -> U3_AG(X1, X2, X3, X4, deleteB_in_gaaa(X3, X1, X2, X5)) 9.50/3.40 PERMC_IN_AG(.(X1, .(X2, [])), .(X3, .(X4, []))) -> DELETEB_IN_GAAA(X3, X1, X2, X5) 9.50/3.40 PERMC_IN_AG(.(X1, .(X2, [])), .(X3, .(X4, []))) -> U4_AG(X1, X2, X3, X4, deletecB_in_gaaa(X3, X1, X2, X5)) 9.50/3.40 U4_AG(X1, X2, X3, X4, deletecB_out_gaaa(X3, X1, X2, X5)) -> U5_AG(X1, X2, X3, X4, permC_in_ag(X5, X4)) 9.50/3.40 U4_AG(X1, X2, X3, X4, deletecB_out_gaaa(X3, X1, X2, X5)) -> PERMC_IN_AG(X5, X4) 9.50/3.40 U8_AG(X1, X2, X3, X4, deletecB_out_gaaa(X3, X1, X2, X5)) -> U10_AG(X1, X2, X3, X4, permcC_in_ag(X5, X4)) 9.50/3.40 U10_AG(X1, X2, X3, X4, permcC_out_ag(X5, X4)) -> U11_AG(X1, X2, X3, X4, leD_in_gg(X3, X4)) 9.50/3.40 U10_AG(X1, X2, X3, X4, permcC_out_ag(X5, X4)) -> LED_IN_GG(X3, X4) 9.50/3.40 LED_IN_GG(s(X1), s(X2)) -> U6_GG(X1, X2, leD_in_gg(X1, X2)) 9.50/3.40 LED_IN_GG(s(X1), s(X2)) -> LED_IN_GG(X1, X2) 9.50/3.40 9.50/3.40 The TRS R consists of the following rules: 9.50/3.40 9.50/3.40 deletecB_in_gaaa(X1, X1, X2, X2) -> deletecB_out_gaaa(X1, X1, X2, X2) 9.50/3.40 deletecB_in_gaaa(X1, X2, X3, X4) -> U14_gaaa(X1, X2, X3, X4, deletecA_in_gaa(X1, X3, X4)) 9.50/3.40 deletecA_in_gaa(X1, .(X1, X2), X2) -> deletecA_out_gaa(X1, .(X1, X2), X2) 9.50/3.40 deletecA_in_gaa(X1, .(X2, X3), X4) -> U13_gaa(X1, X2, X3, X4, deletecA_in_gaa(X1, X3, X4)) 9.50/3.40 U13_gaa(X1, X2, X3, X4, deletecA_out_gaa(X1, X3, X4)) -> deletecA_out_gaa(X1, .(X2, X3), X4) 9.50/3.40 U14_gaaa(X1, X2, X3, X4, deletecA_out_gaa(X1, X3, X4)) -> deletecB_out_gaaa(X1, X2, X3, X4) 9.50/3.40 permcC_in_ag([], []) -> permcC_out_ag([], []) 9.50/3.40 permcC_in_ag(.(X1, .(X2, [])), .(X3, .(X4, []))) -> U15_ag(X1, X2, X3, X4, deletecB_in_gaaa(X3, X1, X2, X5)) 9.50/3.40 U15_ag(X1, X2, X3, X4, deletecB_out_gaaa(X3, X1, X2, X5)) -> U16_ag(X1, X2, X3, X4, permcC_in_ag(X5, X4)) 9.50/3.40 U16_ag(X1, X2, X3, X4, permcC_out_ag(X5, X4)) -> permcC_out_ag(.(X1, .(X2, [])), .(X3, .(X4, []))) 9.50/3.40 9.50/3.40 The argument filtering Pi contains the following mapping: 9.50/3.40 .(x1, x2) = .(x1, x2) 9.50/3.40 9.50/3.40 [] = [] 9.50/3.40 9.50/3.40 deleteB_in_gaaa(x1, x2, x3, x4) = deleteB_in_gaaa(x1) 9.50/3.40 9.50/3.40 deleteA_in_gaa(x1, x2, x3) = deleteA_in_gaa(x1) 9.50/3.40 9.50/3.40 deletecB_in_gaaa(x1, x2, x3, x4) = deletecB_in_gaaa(x1) 9.50/3.40 9.50/3.40 deletecB_out_gaaa(x1, x2, x3, x4) = deletecB_out_gaaa(x1) 9.50/3.40 9.50/3.40 U14_gaaa(x1, x2, x3, x4, x5) = U14_gaaa(x1, x5) 9.50/3.40 9.50/3.40 deletecA_in_gaa(x1, x2, x3) = deletecA_in_gaa(x1) 9.50/3.40 9.50/3.40 deletecA_out_gaa(x1, x2, x3) = deletecA_out_gaa(x1) 9.50/3.40 9.50/3.40 U13_gaa(x1, x2, x3, x4, x5) = U13_gaa(x1, x5) 9.50/3.40 9.50/3.40 permC_in_ag(x1, x2) = permC_in_ag(x2) 9.50/3.40 9.50/3.40 permcC_in_ag(x1, x2) = permcC_in_ag(x2) 9.50/3.40 9.50/3.40 permcC_out_ag(x1, x2) = permcC_out_ag(x2) 9.50/3.40 9.50/3.40 U15_ag(x1, x2, x3, x4, x5) = U15_ag(x3, x4, x5) 9.50/3.40 9.50/3.40 U16_ag(x1, x2, x3, x4, x5) = U16_ag(x3, x4, x5) 9.50/3.40 9.50/3.40 leD_in_gg(x1, x2) = leD_in_gg(x1, x2) 9.50/3.40 9.50/3.40 s(x1) = s(x1) 9.50/3.40 9.50/3.40 SLOWSORTE_IN_AG(x1, x2) = SLOWSORTE_IN_AG(x2) 9.50/3.40 9.50/3.40 U7_AG(x1, x2, x3, x4, x5) = U7_AG(x3, x4, x5) 9.50/3.40 9.50/3.40 DELETEB_IN_GAAA(x1, x2, x3, x4) = DELETEB_IN_GAAA(x1) 9.50/3.40 9.50/3.40 U2_GAAA(x1, x2, x3, x4, x5) = U2_GAAA(x1, x5) 9.50/3.40 9.50/3.40 DELETEA_IN_GAA(x1, x2, x3) = DELETEA_IN_GAA(x1) 9.50/3.40 9.50/3.40 U1_GAA(x1, x2, x3, x4, x5) = U1_GAA(x1, x5) 9.50/3.40 9.50/3.40 U8_AG(x1, x2, x3, x4, x5) = U8_AG(x3, x4, x5) 9.50/3.40 9.50/3.40 U9_AG(x1, x2, x3, x4, x5) = U9_AG(x3, x4, x5) 9.50/3.40 9.50/3.40 PERMC_IN_AG(x1, x2) = PERMC_IN_AG(x2) 9.50/3.40 9.50/3.40 U3_AG(x1, x2, x3, x4, x5) = U3_AG(x3, x4, x5) 9.50/3.40 9.50/3.40 U4_AG(x1, x2, x3, x4, x5) = U4_AG(x3, x4, x5) 9.50/3.40 9.50/3.40 U5_AG(x1, x2, x3, x4, x5) = U5_AG(x3, x4, x5) 9.50/3.40 9.50/3.40 U10_AG(x1, x2, x3, x4, x5) = U10_AG(x3, x4, x5) 9.50/3.40 9.50/3.40 U11_AG(x1, x2, x3, x4, x5) = U11_AG(x3, x4, x5) 9.50/3.40 9.50/3.40 LED_IN_GG(x1, x2) = LED_IN_GG(x1, x2) 9.50/3.40 9.50/3.40 U6_GG(x1, x2, x3) = U6_GG(x1, x2, x3) 9.50/3.40 9.50/3.40 9.50/3.40 We have to consider all (P,R,Pi)-chains 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (149) DependencyGraphProof (EQUIVALENT) 9.50/3.40 The approximation of the Dependency Graph [LOPSTR] contains 3 SCCs with 15 less nodes. 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (150) 9.50/3.40 Complex Obligation (AND) 9.50/3.40 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (151) 9.50/3.40 Obligation: 9.50/3.40 Pi DP problem: 9.50/3.40 The TRS P consists of the following rules: 9.50/3.40 9.50/3.40 LED_IN_GG(s(X1), s(X2)) -> LED_IN_GG(X1, X2) 9.50/3.40 9.50/3.40 The TRS R consists of the following rules: 9.50/3.40 9.50/3.40 deletecB_in_gaaa(X1, X1, X2, X2) -> deletecB_out_gaaa(X1, X1, X2, X2) 9.50/3.40 deletecB_in_gaaa(X1, X2, X3, X4) -> U14_gaaa(X1, X2, X3, X4, deletecA_in_gaa(X1, X3, X4)) 9.50/3.40 deletecA_in_gaa(X1, .(X1, X2), X2) -> deletecA_out_gaa(X1, .(X1, X2), X2) 9.50/3.40 deletecA_in_gaa(X1, .(X2, X3), X4) -> U13_gaa(X1, X2, X3, X4, deletecA_in_gaa(X1, X3, X4)) 9.50/3.40 U13_gaa(X1, X2, X3, X4, deletecA_out_gaa(X1, X3, X4)) -> deletecA_out_gaa(X1, .(X2, X3), X4) 9.50/3.40 U14_gaaa(X1, X2, X3, X4, deletecA_out_gaa(X1, X3, X4)) -> deletecB_out_gaaa(X1, X2, X3, X4) 9.50/3.40 permcC_in_ag([], []) -> permcC_out_ag([], []) 9.50/3.40 permcC_in_ag(.(X1, .(X2, [])), .(X3, .(X4, []))) -> U15_ag(X1, X2, X3, X4, deletecB_in_gaaa(X3, X1, X2, X5)) 9.50/3.40 U15_ag(X1, X2, X3, X4, deletecB_out_gaaa(X3, X1, X2, X5)) -> U16_ag(X1, X2, X3, X4, permcC_in_ag(X5, X4)) 9.50/3.40 U16_ag(X1, X2, X3, X4, permcC_out_ag(X5, X4)) -> permcC_out_ag(.(X1, .(X2, [])), .(X3, .(X4, []))) 9.50/3.40 9.50/3.40 The argument filtering Pi contains the following mapping: 9.50/3.40 .(x1, x2) = .(x1, x2) 9.50/3.40 9.50/3.40 [] = [] 9.50/3.40 9.50/3.40 deletecB_in_gaaa(x1, x2, x3, x4) = deletecB_in_gaaa(x1) 9.50/3.40 9.50/3.40 deletecB_out_gaaa(x1, x2, x3, x4) = deletecB_out_gaaa(x1) 9.50/3.40 9.50/3.40 U14_gaaa(x1, x2, x3, x4, x5) = U14_gaaa(x1, x5) 9.50/3.40 9.50/3.40 deletecA_in_gaa(x1, x2, x3) = deletecA_in_gaa(x1) 9.50/3.40 9.50/3.40 deletecA_out_gaa(x1, x2, x3) = deletecA_out_gaa(x1) 9.50/3.40 9.50/3.40 U13_gaa(x1, x2, x3, x4, x5) = U13_gaa(x1, x5) 9.50/3.40 9.50/3.40 permcC_in_ag(x1, x2) = permcC_in_ag(x2) 9.50/3.40 9.50/3.40 permcC_out_ag(x1, x2) = permcC_out_ag(x2) 9.50/3.40 9.50/3.40 U15_ag(x1, x2, x3, x4, x5) = U15_ag(x3, x4, x5) 9.50/3.40 9.50/3.40 U16_ag(x1, x2, x3, x4, x5) = U16_ag(x3, x4, x5) 9.50/3.40 9.50/3.40 s(x1) = s(x1) 9.50/3.40 9.50/3.40 LED_IN_GG(x1, x2) = LED_IN_GG(x1, x2) 9.50/3.40 9.50/3.40 9.50/3.40 We have to consider all (P,R,Pi)-chains 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (152) UsableRulesProof (EQUIVALENT) 9.50/3.40 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (153) 9.50/3.40 Obligation: 9.50/3.40 Pi DP problem: 9.50/3.40 The TRS P consists of the following rules: 9.50/3.40 9.50/3.40 LED_IN_GG(s(X1), s(X2)) -> LED_IN_GG(X1, X2) 9.50/3.40 9.50/3.40 R is empty. 9.50/3.40 Pi is empty. 9.50/3.40 We have to consider all (P,R,Pi)-chains 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (154) PiDPToQDPProof (EQUIVALENT) 9.50/3.40 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (155) 9.50/3.40 Obligation: 9.50/3.40 Q DP problem: 9.50/3.40 The TRS P consists of the following rules: 9.50/3.40 9.50/3.40 LED_IN_GG(s(X1), s(X2)) -> LED_IN_GG(X1, X2) 9.50/3.40 9.50/3.40 R is empty. 9.50/3.40 Q is empty. 9.50/3.40 We have to consider all (P,Q,R)-chains. 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (156) QDPSizeChangeProof (EQUIVALENT) 9.50/3.40 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. 9.50/3.40 9.50/3.40 From the DPs we obtained the following set of size-change graphs: 9.50/3.40 *LED_IN_GG(s(X1), s(X2)) -> LED_IN_GG(X1, X2) 9.50/3.40 The graph contains the following edges 1 > 1, 2 > 2 9.50/3.40 9.50/3.40 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (157) 9.50/3.40 YES 9.50/3.40 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (158) 9.50/3.40 Obligation: 9.50/3.40 Pi DP problem: 9.50/3.40 The TRS P consists of the following rules: 9.50/3.40 9.50/3.40 DELETEA_IN_GAA(X1, .(X2, X3), X4) -> DELETEA_IN_GAA(X1, X3, X4) 9.50/3.40 9.50/3.40 The TRS R consists of the following rules: 9.50/3.40 9.50/3.40 deletecB_in_gaaa(X1, X1, X2, X2) -> deletecB_out_gaaa(X1, X1, X2, X2) 9.50/3.40 deletecB_in_gaaa(X1, X2, X3, X4) -> U14_gaaa(X1, X2, X3, X4, deletecA_in_gaa(X1, X3, X4)) 9.50/3.40 deletecA_in_gaa(X1, .(X1, X2), X2) -> deletecA_out_gaa(X1, .(X1, X2), X2) 9.50/3.40 deletecA_in_gaa(X1, .(X2, X3), X4) -> U13_gaa(X1, X2, X3, X4, deletecA_in_gaa(X1, X3, X4)) 9.50/3.40 U13_gaa(X1, X2, X3, X4, deletecA_out_gaa(X1, X3, X4)) -> deletecA_out_gaa(X1, .(X2, X3), X4) 9.50/3.40 U14_gaaa(X1, X2, X3, X4, deletecA_out_gaa(X1, X3, X4)) -> deletecB_out_gaaa(X1, X2, X3, X4) 9.50/3.40 permcC_in_ag([], []) -> permcC_out_ag([], []) 9.50/3.40 permcC_in_ag(.(X1, .(X2, [])), .(X3, .(X4, []))) -> U15_ag(X1, X2, X3, X4, deletecB_in_gaaa(X3, X1, X2, X5)) 9.50/3.40 U15_ag(X1, X2, X3, X4, deletecB_out_gaaa(X3, X1, X2, X5)) -> U16_ag(X1, X2, X3, X4, permcC_in_ag(X5, X4)) 9.50/3.40 U16_ag(X1, X2, X3, X4, permcC_out_ag(X5, X4)) -> permcC_out_ag(.(X1, .(X2, [])), .(X3, .(X4, []))) 9.50/3.40 9.50/3.40 The argument filtering Pi contains the following mapping: 9.50/3.40 .(x1, x2) = .(x1, x2) 9.50/3.40 9.50/3.40 [] = [] 9.50/3.40 9.50/3.40 deletecB_in_gaaa(x1, x2, x3, x4) = deletecB_in_gaaa(x1) 9.50/3.40 9.50/3.40 deletecB_out_gaaa(x1, x2, x3, x4) = deletecB_out_gaaa(x1) 9.50/3.40 9.50/3.40 U14_gaaa(x1, x2, x3, x4, x5) = U14_gaaa(x1, x5) 9.50/3.40 9.50/3.40 deletecA_in_gaa(x1, x2, x3) = deletecA_in_gaa(x1) 9.50/3.40 9.50/3.40 deletecA_out_gaa(x1, x2, x3) = deletecA_out_gaa(x1) 9.50/3.40 9.50/3.40 U13_gaa(x1, x2, x3, x4, x5) = U13_gaa(x1, x5) 9.50/3.40 9.50/3.40 permcC_in_ag(x1, x2) = permcC_in_ag(x2) 9.50/3.40 9.50/3.40 permcC_out_ag(x1, x2) = permcC_out_ag(x2) 9.50/3.40 9.50/3.40 U15_ag(x1, x2, x3, x4, x5) = U15_ag(x3, x4, x5) 9.50/3.40 9.50/3.40 U16_ag(x1, x2, x3, x4, x5) = U16_ag(x3, x4, x5) 9.50/3.40 9.50/3.40 DELETEA_IN_GAA(x1, x2, x3) = DELETEA_IN_GAA(x1) 9.50/3.40 9.50/3.40 9.50/3.40 We have to consider all (P,R,Pi)-chains 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (159) UsableRulesProof (EQUIVALENT) 9.50/3.40 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (160) 9.50/3.40 Obligation: 9.50/3.40 Pi DP problem: 9.50/3.40 The TRS P consists of the following rules: 9.50/3.40 9.50/3.40 DELETEA_IN_GAA(X1, .(X2, X3), X4) -> DELETEA_IN_GAA(X1, X3, X4) 9.50/3.40 9.50/3.40 R is empty. 9.50/3.40 The argument filtering Pi contains the following mapping: 9.50/3.40 .(x1, x2) = .(x1, x2) 9.50/3.40 9.50/3.40 DELETEA_IN_GAA(x1, x2, x3) = DELETEA_IN_GAA(x1) 9.50/3.40 9.50/3.40 9.50/3.40 We have to consider all (P,R,Pi)-chains 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (161) PiDPToQDPProof (SOUND) 9.50/3.40 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (162) 9.50/3.40 Obligation: 9.50/3.40 Q DP problem: 9.50/3.40 The TRS P consists of the following rules: 9.50/3.40 9.50/3.40 DELETEA_IN_GAA(X1) -> DELETEA_IN_GAA(X1) 9.50/3.40 9.50/3.40 R is empty. 9.50/3.40 Q is empty. 9.50/3.40 We have to consider all (P,Q,R)-chains. 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (163) NonTerminationLoopProof (COMPLETE) 9.50/3.40 We used the non-termination processor [FROCOS05] to show that the DP problem is infinite. 9.50/3.40 Found a loop by semiunifying a rule from P directly. 9.50/3.40 9.50/3.40 s = DELETEA_IN_GAA(X1) evaluates to t =DELETEA_IN_GAA(X1) 9.50/3.40 9.50/3.40 Thus s starts an infinite chain as s semiunifies with t with the following substitutions: 9.50/3.40 * Matcher: [ ] 9.50/3.40 * Semiunifier: [ ] 9.50/3.40 9.50/3.40 -------------------------------------------------------------------------------- 9.50/3.40 Rewriting sequence 9.50/3.40 9.50/3.40 The DP semiunifies directly so there is only one rewrite step from DELETEA_IN_GAA(X1) to DELETEA_IN_GAA(X1). 9.50/3.40 9.50/3.40 9.50/3.40 9.50/3.40 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (164) 9.50/3.40 NO 9.50/3.40 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (165) 9.50/3.40 Obligation: 9.50/3.40 Pi DP problem: 9.50/3.40 The TRS P consists of the following rules: 9.50/3.40 9.50/3.40 PERMC_IN_AG(.(X1, .(X2, [])), .(X3, .(X4, []))) -> U4_AG(X1, X2, X3, X4, deletecB_in_gaaa(X3, X1, X2, X5)) 9.50/3.40 U4_AG(X1, X2, X3, X4, deletecB_out_gaaa(X3, X1, X2, X5)) -> PERMC_IN_AG(X5, X4) 9.50/3.40 9.50/3.40 The TRS R consists of the following rules: 9.50/3.40 9.50/3.40 deletecB_in_gaaa(X1, X1, X2, X2) -> deletecB_out_gaaa(X1, X1, X2, X2) 9.50/3.40 deletecB_in_gaaa(X1, X2, X3, X4) -> U14_gaaa(X1, X2, X3, X4, deletecA_in_gaa(X1, X3, X4)) 9.50/3.40 deletecA_in_gaa(X1, .(X1, X2), X2) -> deletecA_out_gaa(X1, .(X1, X2), X2) 9.50/3.40 deletecA_in_gaa(X1, .(X2, X3), X4) -> U13_gaa(X1, X2, X3, X4, deletecA_in_gaa(X1, X3, X4)) 9.50/3.40 U13_gaa(X1, X2, X3, X4, deletecA_out_gaa(X1, X3, X4)) -> deletecA_out_gaa(X1, .(X2, X3), X4) 9.50/3.40 U14_gaaa(X1, X2, X3, X4, deletecA_out_gaa(X1, X3, X4)) -> deletecB_out_gaaa(X1, X2, X3, X4) 9.50/3.40 permcC_in_ag([], []) -> permcC_out_ag([], []) 9.50/3.40 permcC_in_ag(.(X1, .(X2, [])), .(X3, .(X4, []))) -> U15_ag(X1, X2, X3, X4, deletecB_in_gaaa(X3, X1, X2, X5)) 9.50/3.40 U15_ag(X1, X2, X3, X4, deletecB_out_gaaa(X3, X1, X2, X5)) -> U16_ag(X1, X2, X3, X4, permcC_in_ag(X5, X4)) 9.50/3.40 U16_ag(X1, X2, X3, X4, permcC_out_ag(X5, X4)) -> permcC_out_ag(.(X1, .(X2, [])), .(X3, .(X4, []))) 9.50/3.40 9.50/3.40 The argument filtering Pi contains the following mapping: 9.50/3.40 .(x1, x2) = .(x1, x2) 9.50/3.40 9.50/3.40 [] = [] 9.50/3.40 9.50/3.40 deletecB_in_gaaa(x1, x2, x3, x4) = deletecB_in_gaaa(x1) 9.50/3.40 9.50/3.40 deletecB_out_gaaa(x1, x2, x3, x4) = deletecB_out_gaaa(x1) 9.50/3.40 9.50/3.40 U14_gaaa(x1, x2, x3, x4, x5) = U14_gaaa(x1, x5) 9.50/3.40 9.50/3.40 deletecA_in_gaa(x1, x2, x3) = deletecA_in_gaa(x1) 9.50/3.40 9.50/3.40 deletecA_out_gaa(x1, x2, x3) = deletecA_out_gaa(x1) 9.50/3.40 9.50/3.40 U13_gaa(x1, x2, x3, x4, x5) = U13_gaa(x1, x5) 9.50/3.40 9.50/3.40 permcC_in_ag(x1, x2) = permcC_in_ag(x2) 9.50/3.40 9.50/3.40 permcC_out_ag(x1, x2) = permcC_out_ag(x2) 9.50/3.40 9.50/3.40 U15_ag(x1, x2, x3, x4, x5) = U15_ag(x3, x4, x5) 9.50/3.40 9.50/3.40 U16_ag(x1, x2, x3, x4, x5) = U16_ag(x3, x4, x5) 9.50/3.40 9.50/3.40 PERMC_IN_AG(x1, x2) = PERMC_IN_AG(x2) 9.50/3.40 9.50/3.40 U4_AG(x1, x2, x3, x4, x5) = U4_AG(x3, x4, x5) 9.50/3.40 9.50/3.40 9.50/3.40 We have to consider all (P,R,Pi)-chains 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (166) UsableRulesProof (EQUIVALENT) 9.50/3.40 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (167) 9.50/3.40 Obligation: 9.50/3.40 Pi DP problem: 9.50/3.40 The TRS P consists of the following rules: 9.50/3.40 9.50/3.40 PERMC_IN_AG(.(X1, .(X2, [])), .(X3, .(X4, []))) -> U4_AG(X1, X2, X3, X4, deletecB_in_gaaa(X3, X1, X2, X5)) 9.50/3.40 U4_AG(X1, X2, X3, X4, deletecB_out_gaaa(X3, X1, X2, X5)) -> PERMC_IN_AG(X5, X4) 9.50/3.40 9.50/3.40 The TRS R consists of the following rules: 9.50/3.40 9.50/3.40 deletecB_in_gaaa(X1, X1, X2, X2) -> deletecB_out_gaaa(X1, X1, X2, X2) 9.50/3.40 deletecB_in_gaaa(X1, X2, X3, X4) -> U14_gaaa(X1, X2, X3, X4, deletecA_in_gaa(X1, X3, X4)) 9.50/3.40 U14_gaaa(X1, X2, X3, X4, deletecA_out_gaa(X1, X3, X4)) -> deletecB_out_gaaa(X1, X2, X3, X4) 9.50/3.40 deletecA_in_gaa(X1, .(X1, X2), X2) -> deletecA_out_gaa(X1, .(X1, X2), X2) 9.50/3.40 deletecA_in_gaa(X1, .(X2, X3), X4) -> U13_gaa(X1, X2, X3, X4, deletecA_in_gaa(X1, X3, X4)) 9.50/3.40 U13_gaa(X1, X2, X3, X4, deletecA_out_gaa(X1, X3, X4)) -> deletecA_out_gaa(X1, .(X2, X3), X4) 9.50/3.40 9.50/3.40 The argument filtering Pi contains the following mapping: 9.50/3.40 .(x1, x2) = .(x1, x2) 9.50/3.40 9.50/3.40 [] = [] 9.50/3.40 9.50/3.40 deletecB_in_gaaa(x1, x2, x3, x4) = deletecB_in_gaaa(x1) 9.50/3.40 9.50/3.40 deletecB_out_gaaa(x1, x2, x3, x4) = deletecB_out_gaaa(x1) 9.50/3.40 9.50/3.40 U14_gaaa(x1, x2, x3, x4, x5) = U14_gaaa(x1, x5) 9.50/3.40 9.50/3.40 deletecA_in_gaa(x1, x2, x3) = deletecA_in_gaa(x1) 9.50/3.40 9.50/3.40 deletecA_out_gaa(x1, x2, x3) = deletecA_out_gaa(x1) 9.50/3.40 9.50/3.40 U13_gaa(x1, x2, x3, x4, x5) = U13_gaa(x1, x5) 9.50/3.40 9.50/3.40 PERMC_IN_AG(x1, x2) = PERMC_IN_AG(x2) 9.50/3.40 9.50/3.40 U4_AG(x1, x2, x3, x4, x5) = U4_AG(x3, x4, x5) 9.50/3.40 9.50/3.40 9.50/3.40 We have to consider all (P,R,Pi)-chains 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (168) PiDPToQDPProof (SOUND) 9.50/3.40 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (169) 9.50/3.40 Obligation: 9.50/3.40 Q DP problem: 9.50/3.40 The TRS P consists of the following rules: 9.50/3.40 9.50/3.40 PERMC_IN_AG(.(X3, .(X4, []))) -> U4_AG(X3, X4, deletecB_in_gaaa(X3)) 9.50/3.40 U4_AG(X3, X4, deletecB_out_gaaa(X3)) -> PERMC_IN_AG(X4) 9.50/3.40 9.50/3.40 The TRS R consists of the following rules: 9.50/3.40 9.50/3.40 deletecB_in_gaaa(X1) -> deletecB_out_gaaa(X1) 9.50/3.40 deletecB_in_gaaa(X1) -> U14_gaaa(X1, deletecA_in_gaa(X1)) 9.50/3.40 U14_gaaa(X1, deletecA_out_gaa(X1)) -> deletecB_out_gaaa(X1) 9.50/3.40 deletecA_in_gaa(X1) -> deletecA_out_gaa(X1) 9.50/3.40 deletecA_in_gaa(X1) -> U13_gaa(X1, deletecA_in_gaa(X1)) 9.50/3.40 U13_gaa(X1, deletecA_out_gaa(X1)) -> deletecA_out_gaa(X1) 9.50/3.40 9.50/3.40 The set Q consists of the following terms: 9.50/3.40 9.50/3.40 deletecB_in_gaaa(x0) 9.50/3.40 U14_gaaa(x0, x1) 9.50/3.40 deletecA_in_gaa(x0) 9.50/3.40 U13_gaa(x0, x1) 9.50/3.40 9.50/3.40 We have to consider all (P,Q,R)-chains. 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (170) QDPSizeChangeProof (EQUIVALENT) 9.50/3.40 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. 9.50/3.40 9.50/3.40 From the DPs we obtained the following set of size-change graphs: 9.50/3.40 *U4_AG(X3, X4, deletecB_out_gaaa(X3)) -> PERMC_IN_AG(X4) 9.50/3.40 The graph contains the following edges 2 >= 1 9.50/3.40 9.50/3.40 9.50/3.40 *PERMC_IN_AG(.(X3, .(X4, []))) -> U4_AG(X3, X4, deletecB_in_gaaa(X3)) 9.50/3.40 The graph contains the following edges 1 > 1, 1 > 2 9.50/3.40 9.50/3.40 9.50/3.40 ---------------------------------------- 9.50/3.40 9.50/3.40 (171) 9.50/3.40 YES 9.64/3.44 EOF