10.92/3.59 MAYBE 10.92/3.63 proof of /export/starexec/sandbox/benchmark/theBenchmark.pl 10.92/3.63 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 10.92/3.63 10.92/3.63 10.92/3.63 Left Termination of the query pattern 10.92/3.63 10.92/3.63 in_order(a,g) 10.92/3.63 10.92/3.63 w.r.t. the given Prolog program could not be shown: 10.92/3.63 10.92/3.63 (0) Prolog 10.92/3.63 (1) PrologToPiTRSProof [SOUND, 0 ms] 10.92/3.63 (2) PiTRS 10.92/3.63 (3) DependencyPairsProof [EQUIVALENT, 27 ms] 10.92/3.63 (4) PiDP 10.92/3.63 (5) DependencyGraphProof [EQUIVALENT, 0 ms] 10.92/3.63 (6) AND 10.92/3.63 (7) PiDP 10.92/3.63 (8) UsableRulesProof [EQUIVALENT, 0 ms] 10.92/3.63 (9) PiDP 10.92/3.63 (10) PiDPToQDPProof [SOUND, 0 ms] 10.92/3.63 (11) QDP 10.92/3.63 (12) QDPSizeChangeProof [EQUIVALENT, 0 ms] 10.92/3.63 (13) YES 10.92/3.63 (14) PiDP 10.92/3.63 (15) UsableRulesProof [EQUIVALENT, 0 ms] 10.92/3.63 (16) PiDP 10.92/3.63 (17) PiDPToQDPProof [SOUND, 0 ms] 10.92/3.63 (18) QDP 10.92/3.63 (19) QDPSizeChangeProof [EQUIVALENT, 0 ms] 10.92/3.63 (20) YES 10.92/3.63 (21) PiDP 10.92/3.63 (22) UsableRulesProof [EQUIVALENT, 0 ms] 10.92/3.63 (23) PiDP 10.92/3.63 (24) PiDPToQDPProof [SOUND, 0 ms] 10.92/3.63 (25) QDP 10.92/3.63 (26) PrologToPiTRSProof [SOUND, 0 ms] 10.92/3.63 (27) PiTRS 10.92/3.63 (28) DependencyPairsProof [EQUIVALENT, 8 ms] 10.92/3.63 (29) PiDP 10.92/3.63 (30) DependencyGraphProof [EQUIVALENT, 0 ms] 10.92/3.63 (31) AND 10.92/3.63 (32) PiDP 10.92/3.63 (33) UsableRulesProof [EQUIVALENT, 0 ms] 10.92/3.63 (34) PiDP 10.92/3.63 (35) PiDPToQDPProof [SOUND, 0 ms] 10.92/3.63 (36) QDP 10.92/3.63 (37) QDPSizeChangeProof [EQUIVALENT, 0 ms] 10.92/3.63 (38) YES 10.92/3.63 (39) PiDP 10.92/3.63 (40) UsableRulesProof [EQUIVALENT, 0 ms] 10.92/3.63 (41) PiDP 10.92/3.63 (42) PiDPToQDPProof [SOUND, 0 ms] 10.92/3.63 (43) QDP 10.92/3.63 (44) QDPSizeChangeProof [EQUIVALENT, 0 ms] 10.92/3.63 (45) YES 10.92/3.63 (46) PiDP 10.92/3.63 (47) UsableRulesProof [EQUIVALENT, 0 ms] 10.92/3.63 (48) PiDP 10.92/3.63 (49) PiDPToQDPProof [SOUND, 0 ms] 10.92/3.63 (50) QDP 10.92/3.63 (51) PrologToTRSTransformerProof [SOUND, 33 ms] 10.92/3.63 (52) QTRS 10.92/3.63 (53) QTRSRRRProof [EQUIVALENT, 239 ms] 10.92/3.63 (54) QTRS 10.92/3.63 (55) DependencyPairsProof [EQUIVALENT, 0 ms] 10.92/3.63 (56) QDP 10.92/3.63 (57) DependencyGraphProof [EQUIVALENT, 1 ms] 10.92/3.63 (58) AND 10.92/3.63 (59) QDP 10.92/3.63 (60) UsableRulesProof [EQUIVALENT, 0 ms] 10.92/3.63 (61) QDP 10.92/3.63 (62) QDP 10.92/3.63 (63) PrologToDTProblemTransformerProof [SOUND, 67 ms] 10.92/3.63 (64) TRIPLES 10.92/3.63 (65) TriplesToPiDPProof [SOUND, 20 ms] 10.92/3.63 (66) PiDP 10.92/3.63 (67) DependencyGraphProof [EQUIVALENT, 0 ms] 10.92/3.63 (68) AND 10.92/3.63 (69) PiDP 10.92/3.63 (70) UsableRulesProof [EQUIVALENT, 0 ms] 10.92/3.63 (71) PiDP 10.92/3.63 (72) PiDPToQDPProof [SOUND, 0 ms] 10.92/3.63 (73) QDP 10.92/3.63 (74) QDPSizeChangeProof [EQUIVALENT, 0 ms] 10.92/3.63 (75) YES 10.92/3.63 (76) PiDP 10.92/3.63 (77) UsableRulesProof [EQUIVALENT, 0 ms] 10.92/3.63 (78) PiDP 10.92/3.63 (79) PiDPToQDPProof [SOUND, 0 ms] 10.92/3.63 (80) QDP 10.92/3.63 (81) QDPSizeChangeProof [EQUIVALENT, 0 ms] 10.92/3.63 (82) YES 10.92/3.63 (83) PiDP 10.92/3.63 (84) PiDPToQDPProof [SOUND, 0 ms] 10.92/3.63 (85) QDP 10.92/3.63 (86) PrologToIRSwTTransformerProof [SOUND, 27 ms] 10.92/3.63 (87) AND 10.92/3.63 (88) IRSwT 10.92/3.63 (89) IRSwTSimpleDependencyGraphProof [EQUIVALENT, 0 ms] 10.92/3.63 (90) TRUE 10.92/3.63 (91) IRSwT 10.92/3.63 (92) IRSwTSimpleDependencyGraphProof [EQUIVALENT, 0 ms] 10.92/3.63 (93) TRUE 10.92/3.63 (94) IRSwT 10.92/3.63 (95) IRSwTSimpleDependencyGraphProof [EQUIVALENT, 0 ms] 10.92/3.63 (96) IRSwT 10.92/3.63 (97) IntTRSCompressionProof [EQUIVALENT, 20 ms] 10.92/3.63 (98) IRSwT 10.92/3.63 (99) IRSFormatTransformerProof [EQUIVALENT, 0 ms] 10.92/3.63 (100) IRSwT 10.92/3.63 (101) IRSwTTerminationDigraphProof [EQUIVALENT, 6 ms] 10.92/3.63 (102) IRSwT 10.92/3.63 (103) FilterProof [EQUIVALENT, 0 ms] 10.92/3.63 (104) IntTRS 10.92/3.63 (105) IntTRSPeriodicNontermProof [COMPLETE, 5 ms] 10.92/3.63 (106) NO 10.92/3.63 10.92/3.63 10.92/3.63 ---------------------------------------- 10.92/3.63 10.92/3.63 (0) 10.92/3.63 Obligation: 10.92/3.63 Clauses: 10.92/3.63 10.92/3.63 in_order(void, []). 10.92/3.63 in_order(tree(X, Left, Right), Xs) :- ','(in_order(Left, Ls), ','(in_order(Right, Rs), app(Ls, .(X, Rs), Xs))). 10.92/3.63 app([], X, X). 10.92/3.63 app(.(X, Xs), Ys, .(X, Zs)) :- app(Xs, Ys, Zs). 10.92/3.63 10.92/3.63 10.92/3.63 Query: in_order(a,g) 10.92/3.63 ---------------------------------------- 10.92/3.63 10.92/3.63 (1) PrologToPiTRSProof (SOUND) 10.92/3.63 We use the technique of [TOCL09]. With regard to the inferred argument filtering the predicates were used in the following modes: 10.92/3.63 10.92/3.63 in_order_in_2: (f,b) (f,f) 10.92/3.63 10.92/3.63 app_in_3: (b,b,f) (b,b,b) 10.92/3.63 10.92/3.63 Transforming Prolog into the following Term Rewriting System: 10.92/3.63 10.92/3.63 Pi-finite rewrite system: 10.92/3.63 The TRS R consists of the following rules: 10.92/3.63 10.92/3.63 in_order_in_ag(void, []) -> in_order_out_ag(void, []) 10.92/3.63 in_order_in_ag(tree(X, Left, Right), Xs) -> U1_ag(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.63 in_order_in_aa(void, []) -> in_order_out_aa(void, []) 10.92/3.63 in_order_in_aa(tree(X, Left, Right), Xs) -> U1_aa(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.63 U1_aa(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_aa(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.63 U2_aa(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.63 app_in_gga([], X, X) -> app_out_gga([], X, X) 10.92/3.63 app_in_gga(.(X, Xs), Ys, .(X, Zs)) -> U4_gga(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.63 U4_gga(X, Xs, Ys, Zs, app_out_gga(Xs, Ys, Zs)) -> app_out_gga(.(X, Xs), Ys, .(X, Zs)) 10.92/3.63 U3_aa(X, Left, Right, Xs, app_out_gga(Ls, .(X, Rs), Xs)) -> in_order_out_aa(tree(X, Left, Right), Xs) 10.92/3.63 U1_ag(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_ag(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.63 U2_ag(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_ag(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.63 app_in_ggg([], X, X) -> app_out_ggg([], X, X) 10.92/3.63 app_in_ggg(.(X, Xs), Ys, .(X, Zs)) -> U4_ggg(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.63 U4_ggg(X, Xs, Ys, Zs, app_out_ggg(Xs, Ys, Zs)) -> app_out_ggg(.(X, Xs), Ys, .(X, Zs)) 10.92/3.63 U3_ag(X, Left, Right, Xs, app_out_ggg(Ls, .(X, Rs), Xs)) -> in_order_out_ag(tree(X, Left, Right), Xs) 10.92/3.63 10.92/3.63 The argument filtering Pi contains the following mapping: 10.92/3.63 in_order_in_ag(x1, x2) = in_order_in_ag(x2) 10.92/3.63 10.92/3.63 [] = [] 10.92/3.63 10.92/3.63 in_order_out_ag(x1, x2) = in_order_out_ag(x1) 10.92/3.63 10.92/3.63 U1_ag(x1, x2, x3, x4, x5) = U1_ag(x4, x5) 10.92/3.63 10.92/3.63 in_order_in_aa(x1, x2) = in_order_in_aa 10.92/3.63 10.92/3.63 in_order_out_aa(x1, x2) = in_order_out_aa(x1, x2) 10.92/3.63 10.92/3.63 U1_aa(x1, x2, x3, x4, x5) = U1_aa(x5) 10.92/3.63 10.92/3.63 U2_aa(x1, x2, x3, x4, x5, x6) = U2_aa(x2, x5, x6) 10.92/3.63 10.92/3.63 U3_aa(x1, x2, x3, x4, x5) = U3_aa(x2, x3, x5) 10.92/3.63 10.92/3.63 app_in_gga(x1, x2, x3) = app_in_gga(x1, x2) 10.92/3.63 10.92/3.63 .(x1, x2) = .(x2) 10.92/3.63 10.92/3.63 app_out_gga(x1, x2, x3) = app_out_gga(x3) 10.92/3.63 10.92/3.63 U4_gga(x1, x2, x3, x4, x5) = U4_gga(x5) 10.92/3.63 10.92/3.63 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.63 10.92/3.63 U2_ag(x1, x2, x3, x4, x5, x6) = U2_ag(x2, x4, x5, x6) 10.92/3.63 10.92/3.63 U3_ag(x1, x2, x3, x4, x5) = U3_ag(x2, x3, x5) 10.92/3.63 10.92/3.63 app_in_ggg(x1, x2, x3) = app_in_ggg(x1, x2, x3) 10.92/3.63 10.92/3.63 app_out_ggg(x1, x2, x3) = app_out_ggg 10.92/3.63 10.92/3.63 U4_ggg(x1, x2, x3, x4, x5) = U4_ggg(x5) 10.92/3.63 10.92/3.63 10.92/3.63 10.92/3.63 10.92/3.63 10.92/3.63 Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog 10.92/3.63 10.92/3.63 10.92/3.63 10.92/3.63 ---------------------------------------- 10.92/3.63 10.92/3.63 (2) 10.92/3.63 Obligation: 10.92/3.63 Pi-finite rewrite system: 10.92/3.63 The TRS R consists of the following rules: 10.92/3.63 10.92/3.63 in_order_in_ag(void, []) -> in_order_out_ag(void, []) 10.92/3.63 in_order_in_ag(tree(X, Left, Right), Xs) -> U1_ag(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.63 in_order_in_aa(void, []) -> in_order_out_aa(void, []) 10.92/3.63 in_order_in_aa(tree(X, Left, Right), Xs) -> U1_aa(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.63 U1_aa(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_aa(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.63 U2_aa(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.63 app_in_gga([], X, X) -> app_out_gga([], X, X) 10.92/3.63 app_in_gga(.(X, Xs), Ys, .(X, Zs)) -> U4_gga(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.63 U4_gga(X, Xs, Ys, Zs, app_out_gga(Xs, Ys, Zs)) -> app_out_gga(.(X, Xs), Ys, .(X, Zs)) 10.92/3.63 U3_aa(X, Left, Right, Xs, app_out_gga(Ls, .(X, Rs), Xs)) -> in_order_out_aa(tree(X, Left, Right), Xs) 10.92/3.63 U1_ag(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_ag(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.63 U2_ag(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_ag(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.63 app_in_ggg([], X, X) -> app_out_ggg([], X, X) 10.92/3.63 app_in_ggg(.(X, Xs), Ys, .(X, Zs)) -> U4_ggg(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.63 U4_ggg(X, Xs, Ys, Zs, app_out_ggg(Xs, Ys, Zs)) -> app_out_ggg(.(X, Xs), Ys, .(X, Zs)) 10.92/3.63 U3_ag(X, Left, Right, Xs, app_out_ggg(Ls, .(X, Rs), Xs)) -> in_order_out_ag(tree(X, Left, Right), Xs) 10.92/3.63 10.92/3.63 The argument filtering Pi contains the following mapping: 10.92/3.63 in_order_in_ag(x1, x2) = in_order_in_ag(x2) 10.92/3.63 10.92/3.63 [] = [] 10.92/3.63 10.92/3.63 in_order_out_ag(x1, x2) = in_order_out_ag(x1) 10.92/3.63 10.92/3.63 U1_ag(x1, x2, x3, x4, x5) = U1_ag(x4, x5) 10.92/3.63 10.92/3.63 in_order_in_aa(x1, x2) = in_order_in_aa 10.92/3.63 10.92/3.63 in_order_out_aa(x1, x2) = in_order_out_aa(x1, x2) 10.92/3.63 10.92/3.63 U1_aa(x1, x2, x3, x4, x5) = U1_aa(x5) 10.92/3.63 10.92/3.63 U2_aa(x1, x2, x3, x4, x5, x6) = U2_aa(x2, x5, x6) 10.92/3.63 10.92/3.63 U3_aa(x1, x2, x3, x4, x5) = U3_aa(x2, x3, x5) 10.92/3.63 10.92/3.63 app_in_gga(x1, x2, x3) = app_in_gga(x1, x2) 10.92/3.63 10.92/3.63 .(x1, x2) = .(x2) 10.92/3.63 10.92/3.63 app_out_gga(x1, x2, x3) = app_out_gga(x3) 10.92/3.63 10.92/3.63 U4_gga(x1, x2, x3, x4, x5) = U4_gga(x5) 10.92/3.63 10.92/3.63 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.63 10.92/3.63 U2_ag(x1, x2, x3, x4, x5, x6) = U2_ag(x2, x4, x5, x6) 10.92/3.63 10.92/3.63 U3_ag(x1, x2, x3, x4, x5) = U3_ag(x2, x3, x5) 10.92/3.63 10.92/3.63 app_in_ggg(x1, x2, x3) = app_in_ggg(x1, x2, x3) 10.92/3.63 10.92/3.63 app_out_ggg(x1, x2, x3) = app_out_ggg 10.92/3.63 10.92/3.63 U4_ggg(x1, x2, x3, x4, x5) = U4_ggg(x5) 10.92/3.64 10.92/3.64 10.92/3.64 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (3) DependencyPairsProof (EQUIVALENT) 10.92/3.64 Using Dependency Pairs [AG00,LOPSTR] we result in the following initial DP problem: 10.92/3.64 Pi DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 IN_ORDER_IN_AG(tree(X, Left, Right), Xs) -> U1_AG(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 IN_ORDER_IN_AG(tree(X, Left, Right), Xs) -> IN_ORDER_IN_AA(Left, Ls) 10.92/3.64 IN_ORDER_IN_AA(tree(X, Left, Right), Xs) -> U1_AA(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 IN_ORDER_IN_AA(tree(X, Left, Right), Xs) -> IN_ORDER_IN_AA(Left, Ls) 10.92/3.64 U1_AA(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_AA(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U1_AA(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> IN_ORDER_IN_AA(Right, Rs) 10.92/3.64 U2_AA(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_AA(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.64 U2_AA(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> APP_IN_GGA(Ls, .(X, Rs), Xs) 10.92/3.64 APP_IN_GGA(.(X, Xs), Ys, .(X, Zs)) -> U4_GGA(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.64 APP_IN_GGA(.(X, Xs), Ys, .(X, Zs)) -> APP_IN_GGA(Xs, Ys, Zs) 10.92/3.64 U1_AG(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_AG(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U1_AG(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> IN_ORDER_IN_AA(Right, Rs) 10.92/3.64 U2_AG(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_AG(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.64 U2_AG(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> APP_IN_GGG(Ls, .(X, Rs), Xs) 10.92/3.64 APP_IN_GGG(.(X, Xs), Ys, .(X, Zs)) -> U4_GGG(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.64 APP_IN_GGG(.(X, Xs), Ys, .(X, Zs)) -> APP_IN_GGG(Xs, Ys, Zs) 10.92/3.64 10.92/3.64 The TRS R consists of the following rules: 10.92/3.64 10.92/3.64 in_order_in_ag(void, []) -> in_order_out_ag(void, []) 10.92/3.64 in_order_in_ag(tree(X, Left, Right), Xs) -> U1_ag(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 in_order_in_aa(void, []) -> in_order_out_aa(void, []) 10.92/3.64 in_order_in_aa(tree(X, Left, Right), Xs) -> U1_aa(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 U1_aa(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_aa(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_aa(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_gga([], X, X) -> app_out_gga([], X, X) 10.92/3.64 app_in_gga(.(X, Xs), Ys, .(X, Zs)) -> U4_gga(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.64 U4_gga(X, Xs, Ys, Zs, app_out_gga(Xs, Ys, Zs)) -> app_out_gga(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_aa(X, Left, Right, Xs, app_out_gga(Ls, .(X, Rs), Xs)) -> in_order_out_aa(tree(X, Left, Right), Xs) 10.92/3.64 U1_ag(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_ag(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_ag(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_ag(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_ggg([], X, X) -> app_out_ggg([], X, X) 10.92/3.64 app_in_ggg(.(X, Xs), Ys, .(X, Zs)) -> U4_ggg(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.64 U4_ggg(X, Xs, Ys, Zs, app_out_ggg(Xs, Ys, Zs)) -> app_out_ggg(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_ag(X, Left, Right, Xs, app_out_ggg(Ls, .(X, Rs), Xs)) -> in_order_out_ag(tree(X, Left, Right), Xs) 10.92/3.64 10.92/3.64 The argument filtering Pi contains the following mapping: 10.92/3.64 in_order_in_ag(x1, x2) = in_order_in_ag(x2) 10.92/3.64 10.92/3.64 [] = [] 10.92/3.64 10.92/3.64 in_order_out_ag(x1, x2) = in_order_out_ag(x1) 10.92/3.64 10.92/3.64 U1_ag(x1, x2, x3, x4, x5) = U1_ag(x4, x5) 10.92/3.64 10.92/3.64 in_order_in_aa(x1, x2) = in_order_in_aa 10.92/3.64 10.92/3.64 in_order_out_aa(x1, x2) = in_order_out_aa(x1, x2) 10.92/3.64 10.92/3.64 U1_aa(x1, x2, x3, x4, x5) = U1_aa(x5) 10.92/3.64 10.92/3.64 U2_aa(x1, x2, x3, x4, x5, x6) = U2_aa(x2, x5, x6) 10.92/3.64 10.92/3.64 U3_aa(x1, x2, x3, x4, x5) = U3_aa(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_gga(x1, x2, x3) = app_in_gga(x1, x2) 10.92/3.64 10.92/3.64 .(x1, x2) = .(x2) 10.92/3.64 10.92/3.64 app_out_gga(x1, x2, x3) = app_out_gga(x3) 10.92/3.64 10.92/3.64 U4_gga(x1, x2, x3, x4, x5) = U4_gga(x5) 10.92/3.64 10.92/3.64 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.64 10.92/3.64 U2_ag(x1, x2, x3, x4, x5, x6) = U2_ag(x2, x4, x5, x6) 10.92/3.64 10.92/3.64 U3_ag(x1, x2, x3, x4, x5) = U3_ag(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_ggg(x1, x2, x3) = app_in_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 app_out_ggg(x1, x2, x3) = app_out_ggg 10.92/3.64 10.92/3.64 U4_ggg(x1, x2, x3, x4, x5) = U4_ggg(x5) 10.92/3.64 10.92/3.64 IN_ORDER_IN_AG(x1, x2) = IN_ORDER_IN_AG(x2) 10.92/3.64 10.92/3.64 U1_AG(x1, x2, x3, x4, x5) = U1_AG(x4, x5) 10.92/3.64 10.92/3.64 IN_ORDER_IN_AA(x1, x2) = IN_ORDER_IN_AA 10.92/3.64 10.92/3.64 U1_AA(x1, x2, x3, x4, x5) = U1_AA(x5) 10.92/3.64 10.92/3.64 U2_AA(x1, x2, x3, x4, x5, x6) = U2_AA(x2, x5, x6) 10.92/3.64 10.92/3.64 U3_AA(x1, x2, x3, x4, x5) = U3_AA(x2, x3, x5) 10.92/3.64 10.92/3.64 APP_IN_GGA(x1, x2, x3) = APP_IN_GGA(x1, x2) 10.92/3.64 10.92/3.64 U4_GGA(x1, x2, x3, x4, x5) = U4_GGA(x5) 10.92/3.64 10.92/3.64 U2_AG(x1, x2, x3, x4, x5, x6) = U2_AG(x2, x4, x5, x6) 10.92/3.64 10.92/3.64 U3_AG(x1, x2, x3, x4, x5) = U3_AG(x2, x3, x5) 10.92/3.64 10.92/3.64 APP_IN_GGG(x1, x2, x3) = APP_IN_GGG(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_GGG(x1, x2, x3, x4, x5) = U4_GGG(x5) 10.92/3.64 10.92/3.64 10.92/3.64 We have to consider all (P,R,Pi)-chains 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (4) 10.92/3.64 Obligation: 10.92/3.64 Pi DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 IN_ORDER_IN_AG(tree(X, Left, Right), Xs) -> U1_AG(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 IN_ORDER_IN_AG(tree(X, Left, Right), Xs) -> IN_ORDER_IN_AA(Left, Ls) 10.92/3.64 IN_ORDER_IN_AA(tree(X, Left, Right), Xs) -> U1_AA(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 IN_ORDER_IN_AA(tree(X, Left, Right), Xs) -> IN_ORDER_IN_AA(Left, Ls) 10.92/3.64 U1_AA(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_AA(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U1_AA(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> IN_ORDER_IN_AA(Right, Rs) 10.92/3.64 U2_AA(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_AA(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.64 U2_AA(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> APP_IN_GGA(Ls, .(X, Rs), Xs) 10.92/3.64 APP_IN_GGA(.(X, Xs), Ys, .(X, Zs)) -> U4_GGA(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.64 APP_IN_GGA(.(X, Xs), Ys, .(X, Zs)) -> APP_IN_GGA(Xs, Ys, Zs) 10.92/3.64 U1_AG(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_AG(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U1_AG(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> IN_ORDER_IN_AA(Right, Rs) 10.92/3.64 U2_AG(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_AG(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.64 U2_AG(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> APP_IN_GGG(Ls, .(X, Rs), Xs) 10.92/3.64 APP_IN_GGG(.(X, Xs), Ys, .(X, Zs)) -> U4_GGG(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.64 APP_IN_GGG(.(X, Xs), Ys, .(X, Zs)) -> APP_IN_GGG(Xs, Ys, Zs) 10.92/3.64 10.92/3.64 The TRS R consists of the following rules: 10.92/3.64 10.92/3.64 in_order_in_ag(void, []) -> in_order_out_ag(void, []) 10.92/3.64 in_order_in_ag(tree(X, Left, Right), Xs) -> U1_ag(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 in_order_in_aa(void, []) -> in_order_out_aa(void, []) 10.92/3.64 in_order_in_aa(tree(X, Left, Right), Xs) -> U1_aa(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 U1_aa(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_aa(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_aa(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_gga([], X, X) -> app_out_gga([], X, X) 10.92/3.64 app_in_gga(.(X, Xs), Ys, .(X, Zs)) -> U4_gga(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.64 U4_gga(X, Xs, Ys, Zs, app_out_gga(Xs, Ys, Zs)) -> app_out_gga(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_aa(X, Left, Right, Xs, app_out_gga(Ls, .(X, Rs), Xs)) -> in_order_out_aa(tree(X, Left, Right), Xs) 10.92/3.64 U1_ag(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_ag(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_ag(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_ag(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_ggg([], X, X) -> app_out_ggg([], X, X) 10.92/3.64 app_in_ggg(.(X, Xs), Ys, .(X, Zs)) -> U4_ggg(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.64 U4_ggg(X, Xs, Ys, Zs, app_out_ggg(Xs, Ys, Zs)) -> app_out_ggg(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_ag(X, Left, Right, Xs, app_out_ggg(Ls, .(X, Rs), Xs)) -> in_order_out_ag(tree(X, Left, Right), Xs) 10.92/3.64 10.92/3.64 The argument filtering Pi contains the following mapping: 10.92/3.64 in_order_in_ag(x1, x2) = in_order_in_ag(x2) 10.92/3.64 10.92/3.64 [] = [] 10.92/3.64 10.92/3.64 in_order_out_ag(x1, x2) = in_order_out_ag(x1) 10.92/3.64 10.92/3.64 U1_ag(x1, x2, x3, x4, x5) = U1_ag(x4, x5) 10.92/3.64 10.92/3.64 in_order_in_aa(x1, x2) = in_order_in_aa 10.92/3.64 10.92/3.64 in_order_out_aa(x1, x2) = in_order_out_aa(x1, x2) 10.92/3.64 10.92/3.64 U1_aa(x1, x2, x3, x4, x5) = U1_aa(x5) 10.92/3.64 10.92/3.64 U2_aa(x1, x2, x3, x4, x5, x6) = U2_aa(x2, x5, x6) 10.92/3.64 10.92/3.64 U3_aa(x1, x2, x3, x4, x5) = U3_aa(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_gga(x1, x2, x3) = app_in_gga(x1, x2) 10.92/3.64 10.92/3.64 .(x1, x2) = .(x2) 10.92/3.64 10.92/3.64 app_out_gga(x1, x2, x3) = app_out_gga(x3) 10.92/3.64 10.92/3.64 U4_gga(x1, x2, x3, x4, x5) = U4_gga(x5) 10.92/3.64 10.92/3.64 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.64 10.92/3.64 U2_ag(x1, x2, x3, x4, x5, x6) = U2_ag(x2, x4, x5, x6) 10.92/3.64 10.92/3.64 U3_ag(x1, x2, x3, x4, x5) = U3_ag(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_ggg(x1, x2, x3) = app_in_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 app_out_ggg(x1, x2, x3) = app_out_ggg 10.92/3.64 10.92/3.64 U4_ggg(x1, x2, x3, x4, x5) = U4_ggg(x5) 10.92/3.64 10.92/3.64 IN_ORDER_IN_AG(x1, x2) = IN_ORDER_IN_AG(x2) 10.92/3.64 10.92/3.64 U1_AG(x1, x2, x3, x4, x5) = U1_AG(x4, x5) 10.92/3.64 10.92/3.64 IN_ORDER_IN_AA(x1, x2) = IN_ORDER_IN_AA 10.92/3.64 10.92/3.64 U1_AA(x1, x2, x3, x4, x5) = U1_AA(x5) 10.92/3.64 10.92/3.64 U2_AA(x1, x2, x3, x4, x5, x6) = U2_AA(x2, x5, x6) 10.92/3.64 10.92/3.64 U3_AA(x1, x2, x3, x4, x5) = U3_AA(x2, x3, x5) 10.92/3.64 10.92/3.64 APP_IN_GGA(x1, x2, x3) = APP_IN_GGA(x1, x2) 10.92/3.64 10.92/3.64 U4_GGA(x1, x2, x3, x4, x5) = U4_GGA(x5) 10.92/3.64 10.92/3.64 U2_AG(x1, x2, x3, x4, x5, x6) = U2_AG(x2, x4, x5, x6) 10.92/3.64 10.92/3.64 U3_AG(x1, x2, x3, x4, x5) = U3_AG(x2, x3, x5) 10.92/3.64 10.92/3.64 APP_IN_GGG(x1, x2, x3) = APP_IN_GGG(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_GGG(x1, x2, x3, x4, x5) = U4_GGG(x5) 10.92/3.64 10.92/3.64 10.92/3.64 We have to consider all (P,R,Pi)-chains 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (5) DependencyGraphProof (EQUIVALENT) 10.92/3.64 The approximation of the Dependency Graph [LOPSTR] contains 3 SCCs with 11 less nodes. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (6) 10.92/3.64 Complex Obligation (AND) 10.92/3.64 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (7) 10.92/3.64 Obligation: 10.92/3.64 Pi DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 APP_IN_GGG(.(X, Xs), Ys, .(X, Zs)) -> APP_IN_GGG(Xs, Ys, Zs) 10.92/3.64 10.92/3.64 The TRS R consists of the following rules: 10.92/3.64 10.92/3.64 in_order_in_ag(void, []) -> in_order_out_ag(void, []) 10.92/3.64 in_order_in_ag(tree(X, Left, Right), Xs) -> U1_ag(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 in_order_in_aa(void, []) -> in_order_out_aa(void, []) 10.92/3.64 in_order_in_aa(tree(X, Left, Right), Xs) -> U1_aa(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 U1_aa(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_aa(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_aa(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_gga([], X, X) -> app_out_gga([], X, X) 10.92/3.64 app_in_gga(.(X, Xs), Ys, .(X, Zs)) -> U4_gga(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.64 U4_gga(X, Xs, Ys, Zs, app_out_gga(Xs, Ys, Zs)) -> app_out_gga(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_aa(X, Left, Right, Xs, app_out_gga(Ls, .(X, Rs), Xs)) -> in_order_out_aa(tree(X, Left, Right), Xs) 10.92/3.64 U1_ag(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_ag(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_ag(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_ag(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_ggg([], X, X) -> app_out_ggg([], X, X) 10.92/3.64 app_in_ggg(.(X, Xs), Ys, .(X, Zs)) -> U4_ggg(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.64 U4_ggg(X, Xs, Ys, Zs, app_out_ggg(Xs, Ys, Zs)) -> app_out_ggg(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_ag(X, Left, Right, Xs, app_out_ggg(Ls, .(X, Rs), Xs)) -> in_order_out_ag(tree(X, Left, Right), Xs) 10.92/3.64 10.92/3.64 The argument filtering Pi contains the following mapping: 10.92/3.64 in_order_in_ag(x1, x2) = in_order_in_ag(x2) 10.92/3.64 10.92/3.64 [] = [] 10.92/3.64 10.92/3.64 in_order_out_ag(x1, x2) = in_order_out_ag(x1) 10.92/3.64 10.92/3.64 U1_ag(x1, x2, x3, x4, x5) = U1_ag(x4, x5) 10.92/3.64 10.92/3.64 in_order_in_aa(x1, x2) = in_order_in_aa 10.92/3.64 10.92/3.64 in_order_out_aa(x1, x2) = in_order_out_aa(x1, x2) 10.92/3.64 10.92/3.64 U1_aa(x1, x2, x3, x4, x5) = U1_aa(x5) 10.92/3.64 10.92/3.64 U2_aa(x1, x2, x3, x4, x5, x6) = U2_aa(x2, x5, x6) 10.92/3.64 10.92/3.64 U3_aa(x1, x2, x3, x4, x5) = U3_aa(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_gga(x1, x2, x3) = app_in_gga(x1, x2) 10.92/3.64 10.92/3.64 .(x1, x2) = .(x2) 10.92/3.64 10.92/3.64 app_out_gga(x1, x2, x3) = app_out_gga(x3) 10.92/3.64 10.92/3.64 U4_gga(x1, x2, x3, x4, x5) = U4_gga(x5) 10.92/3.64 10.92/3.64 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.64 10.92/3.64 U2_ag(x1, x2, x3, x4, x5, x6) = U2_ag(x2, x4, x5, x6) 10.92/3.64 10.92/3.64 U3_ag(x1, x2, x3, x4, x5) = U3_ag(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_ggg(x1, x2, x3) = app_in_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 app_out_ggg(x1, x2, x3) = app_out_ggg 10.92/3.64 10.92/3.64 U4_ggg(x1, x2, x3, x4, x5) = U4_ggg(x5) 10.92/3.64 10.92/3.64 APP_IN_GGG(x1, x2, x3) = APP_IN_GGG(x1, x2, x3) 10.92/3.64 10.92/3.64 10.92/3.64 We have to consider all (P,R,Pi)-chains 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (8) UsableRulesProof (EQUIVALENT) 10.92/3.64 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (9) 10.92/3.64 Obligation: 10.92/3.64 Pi DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 APP_IN_GGG(.(X, Xs), Ys, .(X, Zs)) -> APP_IN_GGG(Xs, Ys, Zs) 10.92/3.64 10.92/3.64 R is empty. 10.92/3.64 The argument filtering Pi contains the following mapping: 10.92/3.64 .(x1, x2) = .(x2) 10.92/3.64 10.92/3.64 APP_IN_GGG(x1, x2, x3) = APP_IN_GGG(x1, x2, x3) 10.92/3.64 10.92/3.64 10.92/3.64 We have to consider all (P,R,Pi)-chains 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (10) PiDPToQDPProof (SOUND) 10.92/3.64 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (11) 10.92/3.64 Obligation: 10.92/3.64 Q DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 APP_IN_GGG(.(Xs), Ys, .(Zs)) -> APP_IN_GGG(Xs, Ys, Zs) 10.92/3.64 10.92/3.64 R is empty. 10.92/3.64 Q is empty. 10.92/3.64 We have to consider all (P,Q,R)-chains. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (12) QDPSizeChangeProof (EQUIVALENT) 10.92/3.64 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. 10.92/3.64 10.92/3.64 From the DPs we obtained the following set of size-change graphs: 10.92/3.64 *APP_IN_GGG(.(Xs), Ys, .(Zs)) -> APP_IN_GGG(Xs, Ys, Zs) 10.92/3.64 The graph contains the following edges 1 > 1, 2 >= 2, 3 > 3 10.92/3.64 10.92/3.64 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (13) 10.92/3.64 YES 10.92/3.64 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (14) 10.92/3.64 Obligation: 10.92/3.64 Pi DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 APP_IN_GGA(.(X, Xs), Ys, .(X, Zs)) -> APP_IN_GGA(Xs, Ys, Zs) 10.92/3.64 10.92/3.64 The TRS R consists of the following rules: 10.92/3.64 10.92/3.64 in_order_in_ag(void, []) -> in_order_out_ag(void, []) 10.92/3.64 in_order_in_ag(tree(X, Left, Right), Xs) -> U1_ag(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 in_order_in_aa(void, []) -> in_order_out_aa(void, []) 10.92/3.64 in_order_in_aa(tree(X, Left, Right), Xs) -> U1_aa(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 U1_aa(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_aa(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_aa(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_gga([], X, X) -> app_out_gga([], X, X) 10.92/3.64 app_in_gga(.(X, Xs), Ys, .(X, Zs)) -> U4_gga(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.64 U4_gga(X, Xs, Ys, Zs, app_out_gga(Xs, Ys, Zs)) -> app_out_gga(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_aa(X, Left, Right, Xs, app_out_gga(Ls, .(X, Rs), Xs)) -> in_order_out_aa(tree(X, Left, Right), Xs) 10.92/3.64 U1_ag(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_ag(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_ag(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_ag(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_ggg([], X, X) -> app_out_ggg([], X, X) 10.92/3.64 app_in_ggg(.(X, Xs), Ys, .(X, Zs)) -> U4_ggg(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.64 U4_ggg(X, Xs, Ys, Zs, app_out_ggg(Xs, Ys, Zs)) -> app_out_ggg(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_ag(X, Left, Right, Xs, app_out_ggg(Ls, .(X, Rs), Xs)) -> in_order_out_ag(tree(X, Left, Right), Xs) 10.92/3.64 10.92/3.64 The argument filtering Pi contains the following mapping: 10.92/3.64 in_order_in_ag(x1, x2) = in_order_in_ag(x2) 10.92/3.64 10.92/3.64 [] = [] 10.92/3.64 10.92/3.64 in_order_out_ag(x1, x2) = in_order_out_ag(x1) 10.92/3.64 10.92/3.64 U1_ag(x1, x2, x3, x4, x5) = U1_ag(x4, x5) 10.92/3.64 10.92/3.64 in_order_in_aa(x1, x2) = in_order_in_aa 10.92/3.64 10.92/3.64 in_order_out_aa(x1, x2) = in_order_out_aa(x1, x2) 10.92/3.64 10.92/3.64 U1_aa(x1, x2, x3, x4, x5) = U1_aa(x5) 10.92/3.64 10.92/3.64 U2_aa(x1, x2, x3, x4, x5, x6) = U2_aa(x2, x5, x6) 10.92/3.64 10.92/3.64 U3_aa(x1, x2, x3, x4, x5) = U3_aa(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_gga(x1, x2, x3) = app_in_gga(x1, x2) 10.92/3.64 10.92/3.64 .(x1, x2) = .(x2) 10.92/3.64 10.92/3.64 app_out_gga(x1, x2, x3) = app_out_gga(x3) 10.92/3.64 10.92/3.64 U4_gga(x1, x2, x3, x4, x5) = U4_gga(x5) 10.92/3.64 10.92/3.64 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.64 10.92/3.64 U2_ag(x1, x2, x3, x4, x5, x6) = U2_ag(x2, x4, x5, x6) 10.92/3.64 10.92/3.64 U3_ag(x1, x2, x3, x4, x5) = U3_ag(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_ggg(x1, x2, x3) = app_in_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 app_out_ggg(x1, x2, x3) = app_out_ggg 10.92/3.64 10.92/3.64 U4_ggg(x1, x2, x3, x4, x5) = U4_ggg(x5) 10.92/3.64 10.92/3.64 APP_IN_GGA(x1, x2, x3) = APP_IN_GGA(x1, x2) 10.92/3.64 10.92/3.64 10.92/3.64 We have to consider all (P,R,Pi)-chains 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (15) UsableRulesProof (EQUIVALENT) 10.92/3.64 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (16) 10.92/3.64 Obligation: 10.92/3.64 Pi DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 APP_IN_GGA(.(X, Xs), Ys, .(X, Zs)) -> APP_IN_GGA(Xs, Ys, Zs) 10.92/3.64 10.92/3.64 R is empty. 10.92/3.64 The argument filtering Pi contains the following mapping: 10.92/3.64 .(x1, x2) = .(x2) 10.92/3.64 10.92/3.64 APP_IN_GGA(x1, x2, x3) = APP_IN_GGA(x1, x2) 10.92/3.64 10.92/3.64 10.92/3.64 We have to consider all (P,R,Pi)-chains 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (17) PiDPToQDPProof (SOUND) 10.92/3.64 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (18) 10.92/3.64 Obligation: 10.92/3.64 Q DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 APP_IN_GGA(.(Xs), Ys) -> APP_IN_GGA(Xs, Ys) 10.92/3.64 10.92/3.64 R is empty. 10.92/3.64 Q is empty. 10.92/3.64 We have to consider all (P,Q,R)-chains. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (19) QDPSizeChangeProof (EQUIVALENT) 10.92/3.64 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. 10.92/3.64 10.92/3.64 From the DPs we obtained the following set of size-change graphs: 10.92/3.64 *APP_IN_GGA(.(Xs), Ys) -> APP_IN_GGA(Xs, Ys) 10.92/3.64 The graph contains the following edges 1 > 1, 2 >= 2 10.92/3.64 10.92/3.64 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (20) 10.92/3.64 YES 10.92/3.64 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (21) 10.92/3.64 Obligation: 10.92/3.64 Pi DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 U1_AA(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> IN_ORDER_IN_AA(Right, Rs) 10.92/3.64 IN_ORDER_IN_AA(tree(X, Left, Right), Xs) -> U1_AA(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 IN_ORDER_IN_AA(tree(X, Left, Right), Xs) -> IN_ORDER_IN_AA(Left, Ls) 10.92/3.64 10.92/3.64 The TRS R consists of the following rules: 10.92/3.64 10.92/3.64 in_order_in_ag(void, []) -> in_order_out_ag(void, []) 10.92/3.64 in_order_in_ag(tree(X, Left, Right), Xs) -> U1_ag(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 in_order_in_aa(void, []) -> in_order_out_aa(void, []) 10.92/3.64 in_order_in_aa(tree(X, Left, Right), Xs) -> U1_aa(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 U1_aa(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_aa(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_aa(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_gga([], X, X) -> app_out_gga([], X, X) 10.92/3.64 app_in_gga(.(X, Xs), Ys, .(X, Zs)) -> U4_gga(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.64 U4_gga(X, Xs, Ys, Zs, app_out_gga(Xs, Ys, Zs)) -> app_out_gga(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_aa(X, Left, Right, Xs, app_out_gga(Ls, .(X, Rs), Xs)) -> in_order_out_aa(tree(X, Left, Right), Xs) 10.92/3.64 U1_ag(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_ag(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_ag(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_ag(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_ggg([], X, X) -> app_out_ggg([], X, X) 10.92/3.64 app_in_ggg(.(X, Xs), Ys, .(X, Zs)) -> U4_ggg(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.64 U4_ggg(X, Xs, Ys, Zs, app_out_ggg(Xs, Ys, Zs)) -> app_out_ggg(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_ag(X, Left, Right, Xs, app_out_ggg(Ls, .(X, Rs), Xs)) -> in_order_out_ag(tree(X, Left, Right), Xs) 10.92/3.64 10.92/3.64 The argument filtering Pi contains the following mapping: 10.92/3.64 in_order_in_ag(x1, x2) = in_order_in_ag(x2) 10.92/3.64 10.92/3.64 [] = [] 10.92/3.64 10.92/3.64 in_order_out_ag(x1, x2) = in_order_out_ag(x1) 10.92/3.64 10.92/3.64 U1_ag(x1, x2, x3, x4, x5) = U1_ag(x4, x5) 10.92/3.64 10.92/3.64 in_order_in_aa(x1, x2) = in_order_in_aa 10.92/3.64 10.92/3.64 in_order_out_aa(x1, x2) = in_order_out_aa(x1, x2) 10.92/3.64 10.92/3.64 U1_aa(x1, x2, x3, x4, x5) = U1_aa(x5) 10.92/3.64 10.92/3.64 U2_aa(x1, x2, x3, x4, x5, x6) = U2_aa(x2, x5, x6) 10.92/3.64 10.92/3.64 U3_aa(x1, x2, x3, x4, x5) = U3_aa(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_gga(x1, x2, x3) = app_in_gga(x1, x2) 10.92/3.64 10.92/3.64 .(x1, x2) = .(x2) 10.92/3.64 10.92/3.64 app_out_gga(x1, x2, x3) = app_out_gga(x3) 10.92/3.64 10.92/3.64 U4_gga(x1, x2, x3, x4, x5) = U4_gga(x5) 10.92/3.64 10.92/3.64 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.64 10.92/3.64 U2_ag(x1, x2, x3, x4, x5, x6) = U2_ag(x2, x4, x5, x6) 10.92/3.64 10.92/3.64 U3_ag(x1, x2, x3, x4, x5) = U3_ag(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_ggg(x1, x2, x3) = app_in_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 app_out_ggg(x1, x2, x3) = app_out_ggg 10.92/3.64 10.92/3.64 U4_ggg(x1, x2, x3, x4, x5) = U4_ggg(x5) 10.92/3.64 10.92/3.64 IN_ORDER_IN_AA(x1, x2) = IN_ORDER_IN_AA 10.92/3.64 10.92/3.64 U1_AA(x1, x2, x3, x4, x5) = U1_AA(x5) 10.92/3.64 10.92/3.64 10.92/3.64 We have to consider all (P,R,Pi)-chains 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (22) UsableRulesProof (EQUIVALENT) 10.92/3.64 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (23) 10.92/3.64 Obligation: 10.92/3.64 Pi DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 U1_AA(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> IN_ORDER_IN_AA(Right, Rs) 10.92/3.64 IN_ORDER_IN_AA(tree(X, Left, Right), Xs) -> U1_AA(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 IN_ORDER_IN_AA(tree(X, Left, Right), Xs) -> IN_ORDER_IN_AA(Left, Ls) 10.92/3.64 10.92/3.64 The TRS R consists of the following rules: 10.92/3.64 10.92/3.64 in_order_in_aa(void, []) -> in_order_out_aa(void, []) 10.92/3.64 in_order_in_aa(tree(X, Left, Right), Xs) -> U1_aa(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 U1_aa(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_aa(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_aa(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.64 U3_aa(X, Left, Right, Xs, app_out_gga(Ls, .(X, Rs), Xs)) -> in_order_out_aa(tree(X, Left, Right), Xs) 10.92/3.64 app_in_gga([], X, X) -> app_out_gga([], X, X) 10.92/3.64 app_in_gga(.(X, Xs), Ys, .(X, Zs)) -> U4_gga(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.64 U4_gga(X, Xs, Ys, Zs, app_out_gga(Xs, Ys, Zs)) -> app_out_gga(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 10.92/3.64 The argument filtering Pi contains the following mapping: 10.92/3.64 [] = [] 10.92/3.64 10.92/3.64 in_order_in_aa(x1, x2) = in_order_in_aa 10.92/3.64 10.92/3.64 in_order_out_aa(x1, x2) = in_order_out_aa(x1, x2) 10.92/3.64 10.92/3.64 U1_aa(x1, x2, x3, x4, x5) = U1_aa(x5) 10.92/3.64 10.92/3.64 U2_aa(x1, x2, x3, x4, x5, x6) = U2_aa(x2, x5, x6) 10.92/3.64 10.92/3.64 U3_aa(x1, x2, x3, x4, x5) = U3_aa(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_gga(x1, x2, x3) = app_in_gga(x1, x2) 10.92/3.64 10.92/3.64 .(x1, x2) = .(x2) 10.92/3.64 10.92/3.64 app_out_gga(x1, x2, x3) = app_out_gga(x3) 10.92/3.64 10.92/3.64 U4_gga(x1, x2, x3, x4, x5) = U4_gga(x5) 10.92/3.64 10.92/3.64 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.64 10.92/3.64 IN_ORDER_IN_AA(x1, x2) = IN_ORDER_IN_AA 10.92/3.64 10.92/3.64 U1_AA(x1, x2, x3, x4, x5) = U1_AA(x5) 10.92/3.64 10.92/3.64 10.92/3.64 We have to consider all (P,R,Pi)-chains 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (24) PiDPToQDPProof (SOUND) 10.92/3.64 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (25) 10.92/3.64 Obligation: 10.92/3.64 Q DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 U1_AA(in_order_out_aa(Left, Ls)) -> IN_ORDER_IN_AA 10.92/3.64 IN_ORDER_IN_AA -> U1_AA(in_order_in_aa) 10.92/3.64 IN_ORDER_IN_AA -> IN_ORDER_IN_AA 10.92/3.64 10.92/3.64 The TRS R consists of the following rules: 10.92/3.64 10.92/3.64 in_order_in_aa -> in_order_out_aa(void, []) 10.92/3.64 in_order_in_aa -> U1_aa(in_order_in_aa) 10.92/3.64 U1_aa(in_order_out_aa(Left, Ls)) -> U2_aa(Left, Ls, in_order_in_aa) 10.92/3.64 U2_aa(Left, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(Left, Right, app_in_gga(Ls, .(Rs))) 10.92/3.64 U3_aa(Left, Right, app_out_gga(Xs)) -> in_order_out_aa(tree(Left, Right), Xs) 10.92/3.64 app_in_gga([], X) -> app_out_gga(X) 10.92/3.64 app_in_gga(.(Xs), Ys) -> U4_gga(app_in_gga(Xs, Ys)) 10.92/3.64 U4_gga(app_out_gga(Zs)) -> app_out_gga(.(Zs)) 10.92/3.64 10.92/3.64 The set Q consists of the following terms: 10.92/3.64 10.92/3.64 in_order_in_aa 10.92/3.64 U1_aa(x0) 10.92/3.64 U2_aa(x0, x1, x2) 10.92/3.64 U3_aa(x0, x1, x2) 10.92/3.64 app_in_gga(x0, x1) 10.92/3.64 U4_gga(x0) 10.92/3.64 10.92/3.64 We have to consider all (P,Q,R)-chains. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (26) PrologToPiTRSProof (SOUND) 10.92/3.64 We use the technique of [TOCL09]. With regard to the inferred argument filtering the predicates were used in the following modes: 10.92/3.64 10.92/3.64 in_order_in_2: (f,b) (f,f) 10.92/3.64 10.92/3.64 app_in_3: (b,b,f) (b,b,b) 10.92/3.64 10.92/3.64 Transforming Prolog into the following Term Rewriting System: 10.92/3.64 10.92/3.64 Pi-finite rewrite system: 10.92/3.64 The TRS R consists of the following rules: 10.92/3.64 10.92/3.64 in_order_in_ag(void, []) -> in_order_out_ag(void, []) 10.92/3.64 in_order_in_ag(tree(X, Left, Right), Xs) -> U1_ag(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 in_order_in_aa(void, []) -> in_order_out_aa(void, []) 10.92/3.64 in_order_in_aa(tree(X, Left, Right), Xs) -> U1_aa(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 U1_aa(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_aa(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_aa(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_gga([], X, X) -> app_out_gga([], X, X) 10.92/3.64 app_in_gga(.(X, Xs), Ys, .(X, Zs)) -> U4_gga(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.64 U4_gga(X, Xs, Ys, Zs, app_out_gga(Xs, Ys, Zs)) -> app_out_gga(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_aa(X, Left, Right, Xs, app_out_gga(Ls, .(X, Rs), Xs)) -> in_order_out_aa(tree(X, Left, Right), Xs) 10.92/3.64 U1_ag(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_ag(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_ag(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_ag(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_ggg([], X, X) -> app_out_ggg([], X, X) 10.92/3.64 app_in_ggg(.(X, Xs), Ys, .(X, Zs)) -> U4_ggg(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.64 U4_ggg(X, Xs, Ys, Zs, app_out_ggg(Xs, Ys, Zs)) -> app_out_ggg(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_ag(X, Left, Right, Xs, app_out_ggg(Ls, .(X, Rs), Xs)) -> in_order_out_ag(tree(X, Left, Right), Xs) 10.92/3.64 10.92/3.64 The argument filtering Pi contains the following mapping: 10.92/3.64 in_order_in_ag(x1, x2) = in_order_in_ag(x2) 10.92/3.64 10.92/3.64 [] = [] 10.92/3.64 10.92/3.64 in_order_out_ag(x1, x2) = in_order_out_ag(x1, x2) 10.92/3.64 10.92/3.64 U1_ag(x1, x2, x3, x4, x5) = U1_ag(x4, x5) 10.92/3.64 10.92/3.64 in_order_in_aa(x1, x2) = in_order_in_aa 10.92/3.64 10.92/3.64 in_order_out_aa(x1, x2) = in_order_out_aa(x1, x2) 10.92/3.64 10.92/3.64 U1_aa(x1, x2, x3, x4, x5) = U1_aa(x5) 10.92/3.64 10.92/3.64 U2_aa(x1, x2, x3, x4, x5, x6) = U2_aa(x2, x5, x6) 10.92/3.64 10.92/3.64 U3_aa(x1, x2, x3, x4, x5) = U3_aa(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_gga(x1, x2, x3) = app_in_gga(x1, x2) 10.92/3.64 10.92/3.64 .(x1, x2) = .(x2) 10.92/3.64 10.92/3.64 app_out_gga(x1, x2, x3) = app_out_gga(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_gga(x1, x2, x3, x4, x5) = U4_gga(x2, x3, x5) 10.92/3.64 10.92/3.64 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.64 10.92/3.64 U2_ag(x1, x2, x3, x4, x5, x6) = U2_ag(x2, x4, x5, x6) 10.92/3.64 10.92/3.64 U3_ag(x1, x2, x3, x4, x5) = U3_ag(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 app_in_ggg(x1, x2, x3) = app_in_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 app_out_ggg(x1, x2, x3) = app_out_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_ggg(x1, x2, x3, x4, x5) = U4_ggg(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 10.92/3.64 10.92/3.64 10.92/3.64 10.92/3.64 Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog 10.92/3.64 10.92/3.64 10.92/3.64 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (27) 10.92/3.64 Obligation: 10.92/3.64 Pi-finite rewrite system: 10.92/3.64 The TRS R consists of the following rules: 10.92/3.64 10.92/3.64 in_order_in_ag(void, []) -> in_order_out_ag(void, []) 10.92/3.64 in_order_in_ag(tree(X, Left, Right), Xs) -> U1_ag(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 in_order_in_aa(void, []) -> in_order_out_aa(void, []) 10.92/3.64 in_order_in_aa(tree(X, Left, Right), Xs) -> U1_aa(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 U1_aa(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_aa(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_aa(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_gga([], X, X) -> app_out_gga([], X, X) 10.92/3.64 app_in_gga(.(X, Xs), Ys, .(X, Zs)) -> U4_gga(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.64 U4_gga(X, Xs, Ys, Zs, app_out_gga(Xs, Ys, Zs)) -> app_out_gga(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_aa(X, Left, Right, Xs, app_out_gga(Ls, .(X, Rs), Xs)) -> in_order_out_aa(tree(X, Left, Right), Xs) 10.92/3.64 U1_ag(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_ag(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_ag(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_ag(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_ggg([], X, X) -> app_out_ggg([], X, X) 10.92/3.64 app_in_ggg(.(X, Xs), Ys, .(X, Zs)) -> U4_ggg(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.64 U4_ggg(X, Xs, Ys, Zs, app_out_ggg(Xs, Ys, Zs)) -> app_out_ggg(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_ag(X, Left, Right, Xs, app_out_ggg(Ls, .(X, Rs), Xs)) -> in_order_out_ag(tree(X, Left, Right), Xs) 10.92/3.64 10.92/3.64 The argument filtering Pi contains the following mapping: 10.92/3.64 in_order_in_ag(x1, x2) = in_order_in_ag(x2) 10.92/3.64 10.92/3.64 [] = [] 10.92/3.64 10.92/3.64 in_order_out_ag(x1, x2) = in_order_out_ag(x1, x2) 10.92/3.64 10.92/3.64 U1_ag(x1, x2, x3, x4, x5) = U1_ag(x4, x5) 10.92/3.64 10.92/3.64 in_order_in_aa(x1, x2) = in_order_in_aa 10.92/3.64 10.92/3.64 in_order_out_aa(x1, x2) = in_order_out_aa(x1, x2) 10.92/3.64 10.92/3.64 U1_aa(x1, x2, x3, x4, x5) = U1_aa(x5) 10.92/3.64 10.92/3.64 U2_aa(x1, x2, x3, x4, x5, x6) = U2_aa(x2, x5, x6) 10.92/3.64 10.92/3.64 U3_aa(x1, x2, x3, x4, x5) = U3_aa(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_gga(x1, x2, x3) = app_in_gga(x1, x2) 10.92/3.64 10.92/3.64 .(x1, x2) = .(x2) 10.92/3.64 10.92/3.64 app_out_gga(x1, x2, x3) = app_out_gga(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_gga(x1, x2, x3, x4, x5) = U4_gga(x2, x3, x5) 10.92/3.64 10.92/3.64 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.64 10.92/3.64 U2_ag(x1, x2, x3, x4, x5, x6) = U2_ag(x2, x4, x5, x6) 10.92/3.64 10.92/3.64 U3_ag(x1, x2, x3, x4, x5) = U3_ag(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 app_in_ggg(x1, x2, x3) = app_in_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 app_out_ggg(x1, x2, x3) = app_out_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_ggg(x1, x2, x3, x4, x5) = U4_ggg(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 10.92/3.64 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (28) DependencyPairsProof (EQUIVALENT) 10.92/3.64 Using Dependency Pairs [AG00,LOPSTR] we result in the following initial DP problem: 10.92/3.64 Pi DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 IN_ORDER_IN_AG(tree(X, Left, Right), Xs) -> U1_AG(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 IN_ORDER_IN_AG(tree(X, Left, Right), Xs) -> IN_ORDER_IN_AA(Left, Ls) 10.92/3.64 IN_ORDER_IN_AA(tree(X, Left, Right), Xs) -> U1_AA(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 IN_ORDER_IN_AA(tree(X, Left, Right), Xs) -> IN_ORDER_IN_AA(Left, Ls) 10.92/3.64 U1_AA(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_AA(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U1_AA(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> IN_ORDER_IN_AA(Right, Rs) 10.92/3.64 U2_AA(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_AA(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.64 U2_AA(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> APP_IN_GGA(Ls, .(X, Rs), Xs) 10.92/3.64 APP_IN_GGA(.(X, Xs), Ys, .(X, Zs)) -> U4_GGA(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.64 APP_IN_GGA(.(X, Xs), Ys, .(X, Zs)) -> APP_IN_GGA(Xs, Ys, Zs) 10.92/3.64 U1_AG(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_AG(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U1_AG(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> IN_ORDER_IN_AA(Right, Rs) 10.92/3.64 U2_AG(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_AG(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.64 U2_AG(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> APP_IN_GGG(Ls, .(X, Rs), Xs) 10.92/3.64 APP_IN_GGG(.(X, Xs), Ys, .(X, Zs)) -> U4_GGG(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.64 APP_IN_GGG(.(X, Xs), Ys, .(X, Zs)) -> APP_IN_GGG(Xs, Ys, Zs) 10.92/3.64 10.92/3.64 The TRS R consists of the following rules: 10.92/3.64 10.92/3.64 in_order_in_ag(void, []) -> in_order_out_ag(void, []) 10.92/3.64 in_order_in_ag(tree(X, Left, Right), Xs) -> U1_ag(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 in_order_in_aa(void, []) -> in_order_out_aa(void, []) 10.92/3.64 in_order_in_aa(tree(X, Left, Right), Xs) -> U1_aa(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 U1_aa(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_aa(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_aa(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_gga([], X, X) -> app_out_gga([], X, X) 10.92/3.64 app_in_gga(.(X, Xs), Ys, .(X, Zs)) -> U4_gga(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.64 U4_gga(X, Xs, Ys, Zs, app_out_gga(Xs, Ys, Zs)) -> app_out_gga(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_aa(X, Left, Right, Xs, app_out_gga(Ls, .(X, Rs), Xs)) -> in_order_out_aa(tree(X, Left, Right), Xs) 10.92/3.64 U1_ag(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_ag(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_ag(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_ag(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_ggg([], X, X) -> app_out_ggg([], X, X) 10.92/3.64 app_in_ggg(.(X, Xs), Ys, .(X, Zs)) -> U4_ggg(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.64 U4_ggg(X, Xs, Ys, Zs, app_out_ggg(Xs, Ys, Zs)) -> app_out_ggg(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_ag(X, Left, Right, Xs, app_out_ggg(Ls, .(X, Rs), Xs)) -> in_order_out_ag(tree(X, Left, Right), Xs) 10.92/3.64 10.92/3.64 The argument filtering Pi contains the following mapping: 10.92/3.64 in_order_in_ag(x1, x2) = in_order_in_ag(x2) 10.92/3.64 10.92/3.64 [] = [] 10.92/3.64 10.92/3.64 in_order_out_ag(x1, x2) = in_order_out_ag(x1, x2) 10.92/3.64 10.92/3.64 U1_ag(x1, x2, x3, x4, x5) = U1_ag(x4, x5) 10.92/3.64 10.92/3.64 in_order_in_aa(x1, x2) = in_order_in_aa 10.92/3.64 10.92/3.64 in_order_out_aa(x1, x2) = in_order_out_aa(x1, x2) 10.92/3.64 10.92/3.64 U1_aa(x1, x2, x3, x4, x5) = U1_aa(x5) 10.92/3.64 10.92/3.64 U2_aa(x1, x2, x3, x4, x5, x6) = U2_aa(x2, x5, x6) 10.92/3.64 10.92/3.64 U3_aa(x1, x2, x3, x4, x5) = U3_aa(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_gga(x1, x2, x3) = app_in_gga(x1, x2) 10.92/3.64 10.92/3.64 .(x1, x2) = .(x2) 10.92/3.64 10.92/3.64 app_out_gga(x1, x2, x3) = app_out_gga(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_gga(x1, x2, x3, x4, x5) = U4_gga(x2, x3, x5) 10.92/3.64 10.92/3.64 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.64 10.92/3.64 U2_ag(x1, x2, x3, x4, x5, x6) = U2_ag(x2, x4, x5, x6) 10.92/3.64 10.92/3.64 U3_ag(x1, x2, x3, x4, x5) = U3_ag(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 app_in_ggg(x1, x2, x3) = app_in_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 app_out_ggg(x1, x2, x3) = app_out_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_ggg(x1, x2, x3, x4, x5) = U4_ggg(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 IN_ORDER_IN_AG(x1, x2) = IN_ORDER_IN_AG(x2) 10.92/3.64 10.92/3.64 U1_AG(x1, x2, x3, x4, x5) = U1_AG(x4, x5) 10.92/3.64 10.92/3.64 IN_ORDER_IN_AA(x1, x2) = IN_ORDER_IN_AA 10.92/3.64 10.92/3.64 U1_AA(x1, x2, x3, x4, x5) = U1_AA'(x5) 10.92/3.64 10.92/3.64 U2_AA(x1, x2, x3, x4, x5, x6) = U2_AA(x2, x5, x6) 10.92/3.64 10.92/3.64 U3_AA(x1, x2, x3, x4, x5) = U3_AA(x2, x3, x5) 10.92/3.64 10.92/3.64 APP_IN_GGA(x1, x2, x3) = APP_IN_GGA(x1, x2) 10.92/3.64 10.92/3.64 U4_GGA(x1, x2, x3, x4, x5) = U4_GGA(x2, x3, x5) 10.92/3.64 10.92/3.64 U2_AG(x1, x2, x3, x4, x5, x6) = U2_AG(x2, x4, x5, x6) 10.92/3.64 10.92/3.64 U3_AG(x1, x2, x3, x4, x5) = U3_AG(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 APP_IN_GGG(x1, x2, x3) = APP_IN_GGG(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_GGG(x1, x2, x3, x4, x5) = U4_GGG(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 10.92/3.64 We have to consider all (P,R,Pi)-chains 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (29) 10.92/3.64 Obligation: 10.92/3.64 Pi DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 IN_ORDER_IN_AG(tree(X, Left, Right), Xs) -> U1_AG(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 IN_ORDER_IN_AG(tree(X, Left, Right), Xs) -> IN_ORDER_IN_AA(Left, Ls) 10.92/3.64 IN_ORDER_IN_AA(tree(X, Left, Right), Xs) -> U1_AA(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 IN_ORDER_IN_AA(tree(X, Left, Right), Xs) -> IN_ORDER_IN_AA(Left, Ls) 10.92/3.64 U1_AA(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_AA(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U1_AA(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> IN_ORDER_IN_AA(Right, Rs) 10.92/3.64 U2_AA(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_AA(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.64 U2_AA(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> APP_IN_GGA(Ls, .(X, Rs), Xs) 10.92/3.64 APP_IN_GGA(.(X, Xs), Ys, .(X, Zs)) -> U4_GGA(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.64 APP_IN_GGA(.(X, Xs), Ys, .(X, Zs)) -> APP_IN_GGA(Xs, Ys, Zs) 10.92/3.64 U1_AG(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_AG(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U1_AG(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> IN_ORDER_IN_AA(Right, Rs) 10.92/3.64 U2_AG(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_AG(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.64 U2_AG(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> APP_IN_GGG(Ls, .(X, Rs), Xs) 10.92/3.64 APP_IN_GGG(.(X, Xs), Ys, .(X, Zs)) -> U4_GGG(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.64 APP_IN_GGG(.(X, Xs), Ys, .(X, Zs)) -> APP_IN_GGG(Xs, Ys, Zs) 10.92/3.64 10.92/3.64 The TRS R consists of the following rules: 10.92/3.64 10.92/3.64 in_order_in_ag(void, []) -> in_order_out_ag(void, []) 10.92/3.64 in_order_in_ag(tree(X, Left, Right), Xs) -> U1_ag(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 in_order_in_aa(void, []) -> in_order_out_aa(void, []) 10.92/3.64 in_order_in_aa(tree(X, Left, Right), Xs) -> U1_aa(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 U1_aa(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_aa(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_aa(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_gga([], X, X) -> app_out_gga([], X, X) 10.92/3.64 app_in_gga(.(X, Xs), Ys, .(X, Zs)) -> U4_gga(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.64 U4_gga(X, Xs, Ys, Zs, app_out_gga(Xs, Ys, Zs)) -> app_out_gga(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_aa(X, Left, Right, Xs, app_out_gga(Ls, .(X, Rs), Xs)) -> in_order_out_aa(tree(X, Left, Right), Xs) 10.92/3.64 U1_ag(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_ag(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_ag(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_ag(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_ggg([], X, X) -> app_out_ggg([], X, X) 10.92/3.64 app_in_ggg(.(X, Xs), Ys, .(X, Zs)) -> U4_ggg(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.64 U4_ggg(X, Xs, Ys, Zs, app_out_ggg(Xs, Ys, Zs)) -> app_out_ggg(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_ag(X, Left, Right, Xs, app_out_ggg(Ls, .(X, Rs), Xs)) -> in_order_out_ag(tree(X, Left, Right), Xs) 10.92/3.64 10.92/3.64 The argument filtering Pi contains the following mapping: 10.92/3.64 in_order_in_ag(x1, x2) = in_order_in_ag(x2) 10.92/3.64 10.92/3.64 [] = [] 10.92/3.64 10.92/3.64 in_order_out_ag(x1, x2) = in_order_out_ag(x1, x2) 10.92/3.64 10.92/3.64 U1_ag(x1, x2, x3, x4, x5) = U1_ag(x4, x5) 10.92/3.64 10.92/3.64 in_order_in_aa(x1, x2) = in_order_in_aa 10.92/3.64 10.92/3.64 in_order_out_aa(x1, x2) = in_order_out_aa(x1, x2) 10.92/3.64 10.92/3.64 U1_aa(x1, x2, x3, x4, x5) = U1_aa(x5) 10.92/3.64 10.92/3.64 U2_aa(x1, x2, x3, x4, x5, x6) = U2_aa(x2, x5, x6) 10.92/3.64 10.92/3.64 U3_aa(x1, x2, x3, x4, x5) = U3_aa(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_gga(x1, x2, x3) = app_in_gga(x1, x2) 10.92/3.64 10.92/3.64 .(x1, x2) = .(x2) 10.92/3.64 10.92/3.64 app_out_gga(x1, x2, x3) = app_out_gga(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_gga(x1, x2, x3, x4, x5) = U4_gga(x2, x3, x5) 10.92/3.64 10.92/3.64 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.64 10.92/3.64 U2_ag(x1, x2, x3, x4, x5, x6) = U2_ag(x2, x4, x5, x6) 10.92/3.64 10.92/3.64 U3_ag(x1, x2, x3, x4, x5) = U3_ag(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 app_in_ggg(x1, x2, x3) = app_in_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 app_out_ggg(x1, x2, x3) = app_out_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_ggg(x1, x2, x3, x4, x5) = U4_ggg(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 IN_ORDER_IN_AG(x1, x2) = IN_ORDER_IN_AG(x2) 10.92/3.64 10.92/3.64 U1_AG(x1, x2, x3, x4, x5) = U1_AG(x4, x5) 10.92/3.64 10.92/3.64 IN_ORDER_IN_AA(x1, x2) = IN_ORDER_IN_AA 10.92/3.64 10.92/3.64 U1_AA(x1, x2, x3, x4, x5) = U1_AA(x5) 10.92/3.64 10.92/3.64 U2_AA(x1, x2, x3, x4, x5, x6) = U2_AA(x2, x5, x6) 10.92/3.64 10.92/3.64 U3_AA(x1, x2, x3, x4, x5) = U3_AA(x2, x3, x5) 10.92/3.64 10.92/3.64 APP_IN_GGA(x1, x2, x3) = APP_IN_GGA(x1, x2) 10.92/3.64 10.92/3.64 U4_GGA(x1, x2, x3, x4, x5) = U4_GGA(x2, x3, x5) 10.92/3.64 10.92/3.64 U2_AG(x1, x2, x3, x4, x5, x6) = U2_AG(x2, x4, x5, x6) 10.92/3.64 10.92/3.64 U3_AG(x1, x2, x3, x4, x5) = U3_AG(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 APP_IN_GGG(x1, x2, x3) = APP_IN_GGG(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_GGG(x1, x2, x3, x4, x5) = U4_GGG(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 10.92/3.64 We have to consider all (P,R,Pi)-chains 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (30) DependencyGraphProof (EQUIVALENT) 10.92/3.64 The approximation of the Dependency Graph [LOPSTR] contains 3 SCCs with 11 less nodes. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (31) 10.92/3.64 Complex Obligation (AND) 10.92/3.64 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (32) 10.92/3.64 Obligation: 10.92/3.64 Pi DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 APP_IN_GGG(.(X, Xs), Ys, .(X, Zs)) -> APP_IN_GGG(Xs, Ys, Zs) 10.92/3.64 10.92/3.64 The TRS R consists of the following rules: 10.92/3.64 10.92/3.64 in_order_in_ag(void, []) -> in_order_out_ag(void, []) 10.92/3.64 in_order_in_ag(tree(X, Left, Right), Xs) -> U1_ag(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 in_order_in_aa(void, []) -> in_order_out_aa(void, []) 10.92/3.64 in_order_in_aa(tree(X, Left, Right), Xs) -> U1_aa(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 U1_aa(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_aa(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_aa(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_gga([], X, X) -> app_out_gga([], X, X) 10.92/3.64 app_in_gga(.(X, Xs), Ys, .(X, Zs)) -> U4_gga(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.64 U4_gga(X, Xs, Ys, Zs, app_out_gga(Xs, Ys, Zs)) -> app_out_gga(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_aa(X, Left, Right, Xs, app_out_gga(Ls, .(X, Rs), Xs)) -> in_order_out_aa(tree(X, Left, Right), Xs) 10.92/3.64 U1_ag(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_ag(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_ag(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_ag(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_ggg([], X, X) -> app_out_ggg([], X, X) 10.92/3.64 app_in_ggg(.(X, Xs), Ys, .(X, Zs)) -> U4_ggg(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.64 U4_ggg(X, Xs, Ys, Zs, app_out_ggg(Xs, Ys, Zs)) -> app_out_ggg(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_ag(X, Left, Right, Xs, app_out_ggg(Ls, .(X, Rs), Xs)) -> in_order_out_ag(tree(X, Left, Right), Xs) 10.92/3.64 10.92/3.64 The argument filtering Pi contains the following mapping: 10.92/3.64 in_order_in_ag(x1, x2) = in_order_in_ag(x2) 10.92/3.64 10.92/3.64 [] = [] 10.92/3.64 10.92/3.64 in_order_out_ag(x1, x2) = in_order_out_ag(x1, x2) 10.92/3.64 10.92/3.64 U1_ag(x1, x2, x3, x4, x5) = U1_ag(x4, x5) 10.92/3.64 10.92/3.64 in_order_in_aa(x1, x2) = in_order_in_aa 10.92/3.64 10.92/3.64 in_order_out_aa(x1, x2) = in_order_out_aa(x1, x2) 10.92/3.64 10.92/3.64 U1_aa(x1, x2, x3, x4, x5) = U1_aa(x5) 10.92/3.64 10.92/3.64 U2_aa(x1, x2, x3, x4, x5, x6) = U2_aa(x2, x5, x6) 10.92/3.64 10.92/3.64 U3_aa(x1, x2, x3, x4, x5) = U3_aa(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_gga(x1, x2, x3) = app_in_gga(x1, x2) 10.92/3.64 10.92/3.64 .(x1, x2) = .(x2) 10.92/3.64 10.92/3.64 app_out_gga(x1, x2, x3) = app_out_gga(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_gga(x1, x2, x3, x4, x5) = U4_gga(x2, x3, x5) 10.92/3.64 10.92/3.64 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.64 10.92/3.64 U2_ag(x1, x2, x3, x4, x5, x6) = U2_ag(x2, x4, x5, x6) 10.92/3.64 10.92/3.64 U3_ag(x1, x2, x3, x4, x5) = U3_ag(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 app_in_ggg(x1, x2, x3) = app_in_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 app_out_ggg(x1, x2, x3) = app_out_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_ggg(x1, x2, x3, x4, x5) = U4_ggg(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 APP_IN_GGG(x1, x2, x3) = APP_IN_GGG(x1, x2, x3) 10.92/3.64 10.92/3.64 10.92/3.64 We have to consider all (P,R,Pi)-chains 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (33) UsableRulesProof (EQUIVALENT) 10.92/3.64 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (34) 10.92/3.64 Obligation: 10.92/3.64 Pi DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 APP_IN_GGG(.(X, Xs), Ys, .(X, Zs)) -> APP_IN_GGG(Xs, Ys, Zs) 10.92/3.64 10.92/3.64 R is empty. 10.92/3.64 The argument filtering Pi contains the following mapping: 10.92/3.64 .(x1, x2) = .(x2) 10.92/3.64 10.92/3.64 APP_IN_GGG(x1, x2, x3) = APP_IN_GGG(x1, x2, x3) 10.92/3.64 10.92/3.64 10.92/3.64 We have to consider all (P,R,Pi)-chains 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (35) PiDPToQDPProof (SOUND) 10.92/3.64 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (36) 10.92/3.64 Obligation: 10.92/3.64 Q DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 APP_IN_GGG(.(Xs), Ys, .(Zs)) -> APP_IN_GGG(Xs, Ys, Zs) 10.92/3.64 10.92/3.64 R is empty. 10.92/3.64 Q is empty. 10.92/3.64 We have to consider all (P,Q,R)-chains. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (37) QDPSizeChangeProof (EQUIVALENT) 10.92/3.64 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. 10.92/3.64 10.92/3.64 From the DPs we obtained the following set of size-change graphs: 10.92/3.64 *APP_IN_GGG(.(Xs), Ys, .(Zs)) -> APP_IN_GGG(Xs, Ys, Zs) 10.92/3.64 The graph contains the following edges 1 > 1, 2 >= 2, 3 > 3 10.92/3.64 10.92/3.64 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (38) 10.92/3.64 YES 10.92/3.64 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (39) 10.92/3.64 Obligation: 10.92/3.64 Pi DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 APP_IN_GGA(.(X, Xs), Ys, .(X, Zs)) -> APP_IN_GGA(Xs, Ys, Zs) 10.92/3.64 10.92/3.64 The TRS R consists of the following rules: 10.92/3.64 10.92/3.64 in_order_in_ag(void, []) -> in_order_out_ag(void, []) 10.92/3.64 in_order_in_ag(tree(X, Left, Right), Xs) -> U1_ag(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 in_order_in_aa(void, []) -> in_order_out_aa(void, []) 10.92/3.64 in_order_in_aa(tree(X, Left, Right), Xs) -> U1_aa(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 U1_aa(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_aa(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_aa(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_gga([], X, X) -> app_out_gga([], X, X) 10.92/3.64 app_in_gga(.(X, Xs), Ys, .(X, Zs)) -> U4_gga(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.64 U4_gga(X, Xs, Ys, Zs, app_out_gga(Xs, Ys, Zs)) -> app_out_gga(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_aa(X, Left, Right, Xs, app_out_gga(Ls, .(X, Rs), Xs)) -> in_order_out_aa(tree(X, Left, Right), Xs) 10.92/3.64 U1_ag(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_ag(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_ag(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_ag(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_ggg([], X, X) -> app_out_ggg([], X, X) 10.92/3.64 app_in_ggg(.(X, Xs), Ys, .(X, Zs)) -> U4_ggg(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.64 U4_ggg(X, Xs, Ys, Zs, app_out_ggg(Xs, Ys, Zs)) -> app_out_ggg(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_ag(X, Left, Right, Xs, app_out_ggg(Ls, .(X, Rs), Xs)) -> in_order_out_ag(tree(X, Left, Right), Xs) 10.92/3.64 10.92/3.64 The argument filtering Pi contains the following mapping: 10.92/3.64 in_order_in_ag(x1, x2) = in_order_in_ag(x2) 10.92/3.64 10.92/3.64 [] = [] 10.92/3.64 10.92/3.64 in_order_out_ag(x1, x2) = in_order_out_ag(x1, x2) 10.92/3.64 10.92/3.64 U1_ag(x1, x2, x3, x4, x5) = U1_ag(x4, x5) 10.92/3.64 10.92/3.64 in_order_in_aa(x1, x2) = in_order_in_aa 10.92/3.64 10.92/3.64 in_order_out_aa(x1, x2) = in_order_out_aa(x1, x2) 10.92/3.64 10.92/3.64 U1_aa(x1, x2, x3, x4, x5) = U1_aa(x5) 10.92/3.64 10.92/3.64 U2_aa(x1, x2, x3, x4, x5, x6) = U2_aa(x2, x5, x6) 10.92/3.64 10.92/3.64 U3_aa(x1, x2, x3, x4, x5) = U3_aa(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_gga(x1, x2, x3) = app_in_gga(x1, x2) 10.92/3.64 10.92/3.64 .(x1, x2) = .(x2) 10.92/3.64 10.92/3.64 app_out_gga(x1, x2, x3) = app_out_gga(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_gga(x1, x2, x3, x4, x5) = U4_gga(x2, x3, x5) 10.92/3.64 10.92/3.64 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.64 10.92/3.64 U2_ag(x1, x2, x3, x4, x5, x6) = U2_ag(x2, x4, x5, x6) 10.92/3.64 10.92/3.64 U3_ag(x1, x2, x3, x4, x5) = U3_ag(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 app_in_ggg(x1, x2, x3) = app_in_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 app_out_ggg(x1, x2, x3) = app_out_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_ggg(x1, x2, x3, x4, x5) = U4_ggg(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 APP_IN_GGA(x1, x2, x3) = APP_IN_GGA(x1, x2) 10.92/3.64 10.92/3.64 10.92/3.64 We have to consider all (P,R,Pi)-chains 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (40) UsableRulesProof (EQUIVALENT) 10.92/3.64 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (41) 10.92/3.64 Obligation: 10.92/3.64 Pi DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 APP_IN_GGA(.(X, Xs), Ys, .(X, Zs)) -> APP_IN_GGA(Xs, Ys, Zs) 10.92/3.64 10.92/3.64 R is empty. 10.92/3.64 The argument filtering Pi contains the following mapping: 10.92/3.64 .(x1, x2) = .(x2) 10.92/3.64 10.92/3.64 APP_IN_GGA(x1, x2, x3) = APP_IN_GGA(x1, x2) 10.92/3.64 10.92/3.64 10.92/3.64 We have to consider all (P,R,Pi)-chains 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (42) PiDPToQDPProof (SOUND) 10.92/3.64 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (43) 10.92/3.64 Obligation: 10.92/3.64 Q DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 APP_IN_GGA(.(Xs), Ys) -> APP_IN_GGA(Xs, Ys) 10.92/3.64 10.92/3.64 R is empty. 10.92/3.64 Q is empty. 10.92/3.64 We have to consider all (P,Q,R)-chains. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (44) QDPSizeChangeProof (EQUIVALENT) 10.92/3.64 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. 10.92/3.64 10.92/3.64 From the DPs we obtained the following set of size-change graphs: 10.92/3.64 *APP_IN_GGA(.(Xs), Ys) -> APP_IN_GGA(Xs, Ys) 10.92/3.64 The graph contains the following edges 1 > 1, 2 >= 2 10.92/3.64 10.92/3.64 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (45) 10.92/3.64 YES 10.92/3.64 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (46) 10.92/3.64 Obligation: 10.92/3.64 Pi DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 U1_AA(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> IN_ORDER_IN_AA(Right, Rs) 10.92/3.64 IN_ORDER_IN_AA(tree(X, Left, Right), Xs) -> U1_AA(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 IN_ORDER_IN_AA(tree(X, Left, Right), Xs) -> IN_ORDER_IN_AA(Left, Ls) 10.92/3.64 10.92/3.64 The TRS R consists of the following rules: 10.92/3.64 10.92/3.64 in_order_in_ag(void, []) -> in_order_out_ag(void, []) 10.92/3.64 in_order_in_ag(tree(X, Left, Right), Xs) -> U1_ag(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 in_order_in_aa(void, []) -> in_order_out_aa(void, []) 10.92/3.64 in_order_in_aa(tree(X, Left, Right), Xs) -> U1_aa(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.64 U1_aa(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_aa(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_aa(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_gga([], X, X) -> app_out_gga([], X, X) 10.92/3.64 app_in_gga(.(X, Xs), Ys, .(X, Zs)) -> U4_gga(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.64 U4_gga(X, Xs, Ys, Zs, app_out_gga(Xs, Ys, Zs)) -> app_out_gga(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_aa(X, Left, Right, Xs, app_out_gga(Ls, .(X, Rs), Xs)) -> in_order_out_aa(tree(X, Left, Right), Xs) 10.92/3.64 U1_ag(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_ag(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.64 U2_ag(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_ag(X, Left, Right, Xs, app_in_ggg(Ls, .(X, Rs), Xs)) 10.92/3.64 app_in_ggg([], X, X) -> app_out_ggg([], X, X) 10.92/3.64 app_in_ggg(.(X, Xs), Ys, .(X, Zs)) -> U4_ggg(X, Xs, Ys, Zs, app_in_ggg(Xs, Ys, Zs)) 10.92/3.64 U4_ggg(X, Xs, Ys, Zs, app_out_ggg(Xs, Ys, Zs)) -> app_out_ggg(.(X, Xs), Ys, .(X, Zs)) 10.92/3.64 U3_ag(X, Left, Right, Xs, app_out_ggg(Ls, .(X, Rs), Xs)) -> in_order_out_ag(tree(X, Left, Right), Xs) 10.92/3.64 10.92/3.64 The argument filtering Pi contains the following mapping: 10.92/3.64 in_order_in_ag(x1, x2) = in_order_in_ag(x2) 10.92/3.64 10.92/3.64 [] = [] 10.92/3.64 10.92/3.64 in_order_out_ag(x1, x2) = in_order_out_ag(x1, x2) 10.92/3.64 10.92/3.64 U1_ag(x1, x2, x3, x4, x5) = U1_ag(x4, x5) 10.92/3.64 10.92/3.64 in_order_in_aa(x1, x2) = in_order_in_aa 10.92/3.64 10.92/3.64 in_order_out_aa(x1, x2) = in_order_out_aa(x1, x2) 10.92/3.64 10.92/3.64 U1_aa(x1, x2, x3, x4, x5) = U1_aa(x5) 10.92/3.64 10.92/3.64 U2_aa(x1, x2, x3, x4, x5, x6) = U2_aa(x2, x5, x6) 10.92/3.64 10.92/3.64 U3_aa(x1, x2, x3, x4, x5) = U3_aa(x2, x3, x5) 10.92/3.64 10.92/3.64 app_in_gga(x1, x2, x3) = app_in_gga(x1, x2) 10.92/3.64 10.92/3.64 .(x1, x2) = .(x2) 10.92/3.64 10.92/3.64 app_out_gga(x1, x2, x3) = app_out_gga(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_gga(x1, x2, x3, x4, x5) = U4_gga(x2, x3, x5) 10.92/3.64 10.92/3.64 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.64 10.92/3.64 U2_ag(x1, x2, x3, x4, x5, x6) = U2_ag(x2, x4, x5, x6) 10.92/3.64 10.92/3.64 U3_ag(x1, x2, x3, x4, x5) = U3_ag(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 app_in_ggg(x1, x2, x3) = app_in_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 app_out_ggg(x1, x2, x3) = app_out_ggg(x1, x2, x3) 10.92/3.64 10.92/3.64 U4_ggg(x1, x2, x3, x4, x5) = U4_ggg(x2, x3, x4, x5) 10.92/3.64 10.92/3.64 IN_ORDER_IN_AA(x1, x2) = IN_ORDER_IN_AA 10.92/3.64 10.92/3.64 U1_AA(x1, x2, x3, x4, x5) = U1_AA(x5) 10.92/3.64 10.92/3.64 10.92/3.64 We have to consider all (P,R,Pi)-chains 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (47) UsableRulesProof (EQUIVALENT) 10.92/3.64 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 10.92/3.64 ---------------------------------------- 10.92/3.64 10.92/3.64 (48) 10.92/3.64 Obligation: 10.92/3.64 Pi DP problem: 10.92/3.64 The TRS P consists of the following rules: 10.92/3.64 10.92/3.64 U1_AA(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> IN_ORDER_IN_AA(Right, Rs) 10.92/3.65 IN_ORDER_IN_AA(tree(X, Left, Right), Xs) -> U1_AA(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.65 IN_ORDER_IN_AA(tree(X, Left, Right), Xs) -> IN_ORDER_IN_AA(Left, Ls) 10.92/3.65 10.92/3.65 The TRS R consists of the following rules: 10.92/3.65 10.92/3.65 in_order_in_aa(void, []) -> in_order_out_aa(void, []) 10.92/3.65 in_order_in_aa(tree(X, Left, Right), Xs) -> U1_aa(X, Left, Right, Xs, in_order_in_aa(Left, Ls)) 10.92/3.65 U1_aa(X, Left, Right, Xs, in_order_out_aa(Left, Ls)) -> U2_aa(X, Left, Right, Xs, Ls, in_order_in_aa(Right, Rs)) 10.92/3.65 U2_aa(X, Left, Right, Xs, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(X, Left, Right, Xs, app_in_gga(Ls, .(X, Rs), Xs)) 10.92/3.65 U3_aa(X, Left, Right, Xs, app_out_gga(Ls, .(X, Rs), Xs)) -> in_order_out_aa(tree(X, Left, Right), Xs) 10.92/3.65 app_in_gga([], X, X) -> app_out_gga([], X, X) 10.92/3.65 app_in_gga(.(X, Xs), Ys, .(X, Zs)) -> U4_gga(X, Xs, Ys, Zs, app_in_gga(Xs, Ys, Zs)) 10.92/3.65 U4_gga(X, Xs, Ys, Zs, app_out_gga(Xs, Ys, Zs)) -> app_out_gga(.(X, Xs), Ys, .(X, Zs)) 10.92/3.65 10.92/3.65 The argument filtering Pi contains the following mapping: 10.92/3.65 [] = [] 10.92/3.65 10.92/3.65 in_order_in_aa(x1, x2) = in_order_in_aa 10.92/3.65 10.92/3.65 in_order_out_aa(x1, x2) = in_order_out_aa(x1, x2) 10.92/3.65 10.92/3.65 U1_aa(x1, x2, x3, x4, x5) = U1_aa(x5) 10.92/3.65 10.92/3.65 U2_aa(x1, x2, x3, x4, x5, x6) = U2_aa(x2, x5, x6) 10.92/3.65 10.92/3.65 U3_aa(x1, x2, x3, x4, x5) = U3_aa(x2, x3, x5) 10.92/3.65 10.92/3.65 app_in_gga(x1, x2, x3) = app_in_gga(x1, x2) 10.92/3.65 10.92/3.65 .(x1, x2) = .(x2) 10.92/3.65 10.92/3.65 app_out_gga(x1, x2, x3) = app_out_gga(x1, x2, x3) 10.92/3.65 10.92/3.65 U4_gga(x1, x2, x3, x4, x5) = U4_gga(x2, x3, x5) 10.92/3.65 10.92/3.65 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.65 10.92/3.65 IN_ORDER_IN_AA(x1, x2) = IN_ORDER_IN_AA 10.92/3.65 10.92/3.65 U1_AA(x1, x2, x3, x4, x5) = U1_AA(x5) 10.92/3.65 10.92/3.65 10.92/3.65 We have to consider all (P,R,Pi)-chains 10.92/3.65 ---------------------------------------- 10.92/3.65 10.92/3.65 (49) PiDPToQDPProof (SOUND) 10.92/3.65 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 10.92/3.65 ---------------------------------------- 10.92/3.65 10.92/3.65 (50) 10.92/3.65 Obligation: 10.92/3.65 Q DP problem: 10.92/3.65 The TRS P consists of the following rules: 10.92/3.65 10.92/3.65 U1_AA(in_order_out_aa(Left, Ls)) -> IN_ORDER_IN_AA 10.92/3.65 IN_ORDER_IN_AA -> U1_AA(in_order_in_aa) 10.92/3.65 IN_ORDER_IN_AA -> IN_ORDER_IN_AA 10.92/3.65 10.92/3.65 The TRS R consists of the following rules: 10.92/3.65 10.92/3.65 in_order_in_aa -> in_order_out_aa(void, []) 10.92/3.65 in_order_in_aa -> U1_aa(in_order_in_aa) 10.92/3.65 U1_aa(in_order_out_aa(Left, Ls)) -> U2_aa(Left, Ls, in_order_in_aa) 10.92/3.65 U2_aa(Left, Ls, in_order_out_aa(Right, Rs)) -> U3_aa(Left, Right, app_in_gga(Ls, .(Rs))) 10.92/3.65 U3_aa(Left, Right, app_out_gga(Ls, .(Rs), Xs)) -> in_order_out_aa(tree(Left, Right), Xs) 10.92/3.65 app_in_gga([], X) -> app_out_gga([], X, X) 10.92/3.65 app_in_gga(.(Xs), Ys) -> U4_gga(Xs, Ys, app_in_gga(Xs, Ys)) 10.92/3.65 U4_gga(Xs, Ys, app_out_gga(Xs, Ys, Zs)) -> app_out_gga(.(Xs), Ys, .(Zs)) 10.92/3.65 10.92/3.65 The set Q consists of the following terms: 10.92/3.65 10.92/3.65 in_order_in_aa 10.92/3.65 U1_aa(x0) 10.92/3.65 U2_aa(x0, x1, x2) 10.92/3.65 U3_aa(x0, x1, x2) 10.92/3.65 app_in_gga(x0, x1) 10.92/3.65 U4_gga(x0, x1, x2) 10.92/3.65 10.92/3.65 We have to consider all (P,Q,R)-chains. 10.92/3.65 ---------------------------------------- 10.92/3.65 10.92/3.65 (51) PrologToTRSTransformerProof (SOUND) 10.92/3.65 Transformed Prolog program to TRS. 10.92/3.65 10.92/3.65 { 10.92/3.65 "root": 7, 10.92/3.65 "program": { 10.92/3.65 "directives": [], 10.92/3.65 "clauses": [ 10.92/3.65 [ 10.92/3.65 "(in_order (void) ([]))", 10.92/3.65 null 10.92/3.65 ], 10.92/3.65 [ 10.92/3.65 "(in_order (tree X Left Right) Xs)", 10.92/3.65 "(',' (in_order Left Ls) (',' (in_order Right Rs) (app Ls (. X Rs) Xs)))" 10.92/3.65 ], 10.92/3.65 [ 10.92/3.65 "(app ([]) X X)", 10.92/3.65 null 10.92/3.65 ], 10.92/3.65 [ 10.92/3.65 "(app (. X Xs) Ys (. X Zs))", 10.92/3.65 "(app Xs Ys Zs)" 10.92/3.65 ] 10.92/3.65 ] 10.92/3.65 }, 10.92/3.65 "graph": { 10.92/3.65 "nodes": { 10.92/3.65 "29": { 10.92/3.65 "goal": [], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "292": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": -1, 10.92/3.65 "scope": -1, 10.92/3.65 "term": "(',' (in_order T30 X33) (',' (in_order T31 X34) (app X33 (. T32 X34) X35)))" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [ 10.92/3.65 "X35", 10.92/3.65 "X33", 10.92/3.65 "X34" 10.92/3.65 ], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "type": "Nodes", 10.92/3.65 "293": { 10.92/3.65 "goal": [], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "151": { 10.92/3.65 "goal": [ 10.92/3.65 { 10.92/3.65 "clause": 0, 10.92/3.65 "scope": 2, 10.92/3.65 "term": "(in_order T15 X15)" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "clause": 1, 10.92/3.65 "scope": 2, 10.92/3.65 "term": "(in_order T15 X15)" 10.92/3.65 } 10.92/3.65 ], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": ["X15"], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "294": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": -1, 10.92/3.65 "scope": -1, 10.92/3.65 "term": "(in_order T30 X33)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": ["X33"], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "295": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": -1, 10.92/3.65 "scope": -1, 10.92/3.65 "term": "(',' (in_order T34 X34) (app T33 (. T35 X34) X35))" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [ 10.92/3.65 "X35", 10.92/3.65 "X34" 10.92/3.65 ], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "350": { 10.92/3.65 "goal": [], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "154": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": 0, 10.92/3.65 "scope": 2, 10.92/3.65 "term": "(in_order T15 X15)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": ["X15"], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "352": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": -1, 10.92/3.65 "scope": -1, 10.92/3.65 "term": "(in_order T19 X16)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": ["X16"], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "155": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": 1, 10.92/3.65 "scope": 2, 10.92/3.65 "term": "(in_order T15 X15)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": ["X15"], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "156": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": -1, 10.92/3.65 "scope": -1, 10.92/3.65 "term": "(true)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "299": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": -1, 10.92/3.65 "scope": -1, 10.92/3.65 "term": "(in_order T34 X34)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": ["X34"], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "354": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": -1, 10.92/3.65 "scope": -1, 10.92/3.65 "term": "(app T73 (. T74 T72) T14)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": ["T14"], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "157": { 10.92/3.65 "goal": [], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "158": { 10.92/3.65 "goal": [], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "356": { 10.92/3.65 "goal": [ 10.92/3.65 { 10.92/3.65 "clause": 2, 10.92/3.65 "scope": 4, 10.92/3.65 "term": "(app T73 (. T74 T72) T14)" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "clause": 3, 10.92/3.65 "scope": 4, 10.92/3.65 "term": "(app T73 (. T74 T72) T14)" 10.92/3.65 } 10.92/3.65 ], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": ["T14"], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "99": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": -1, 10.92/3.65 "scope": -1, 10.92/3.65 "term": "(',' (in_order T15 X15) (',' (in_order T16 X16) (app X15 (. T17 X16) T14)))" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": ["T14"], 10.92/3.65 "free": [ 10.92/3.65 "X15", 10.92/3.65 "X16" 10.92/3.65 ], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "18": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": 0, 10.92/3.65 "scope": 1, 10.92/3.65 "term": "(in_order T1 T2)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": ["T2"], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "19": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": 1, 10.92/3.65 "scope": 1, 10.92/3.65 "term": "(in_order T1 T2)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": ["T2"], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "360": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": 2, 10.92/3.65 "scope": 4, 10.92/3.65 "term": "(app T73 (. T74 T72) T14)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": ["T14"], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "361": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": 3, 10.92/3.65 "scope": 4, 10.92/3.65 "term": "(app T73 (. T74 T72) T14)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": ["T14"], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "341": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": 3, 10.92/3.65 "scope": 3, 10.92/3.65 "term": "(app T37 (. T38 T36) X35)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": ["X35"], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "363": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": -1, 10.92/3.65 "scope": -1, 10.92/3.65 "term": "(true)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "100": { 10.92/3.65 "goal": [], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "364": { 10.92/3.65 "goal": [], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "365": { 10.92/3.65 "goal": [], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "387": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": -1, 10.92/3.65 "scope": -1, 10.92/3.65 "term": "(app T104 (. T105 T106) T103)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": ["T103"], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "300": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": -1, 10.92/3.65 "scope": -1, 10.92/3.65 "term": "(app T37 (. T38 T36) X35)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": ["X35"], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "344": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": -1, 10.92/3.65 "scope": -1, 10.92/3.65 "term": "(true)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "388": { 10.92/3.65 "goal": [], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "345": { 10.92/3.65 "goal": [], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "346": { 10.92/3.65 "goal": [], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "303": { 10.92/3.65 "goal": [ 10.92/3.65 { 10.92/3.65 "clause": 2, 10.92/3.65 "scope": 3, 10.92/3.65 "term": "(app T37 (. T38 T36) X35)" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "clause": 3, 10.92/3.65 "scope": 3, 10.92/3.65 "term": "(app T37 (. T38 T36) X35)" 10.92/3.65 } 10.92/3.65 ], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": ["X35"], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "7": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": -1, 10.92/3.65 "scope": -1, 10.92/3.65 "term": "(in_order T1 T2)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": ["T2"], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "106": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": -1, 10.92/3.65 "scope": -1, 10.92/3.65 "term": "(in_order T15 X15)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": ["X15"], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "8": { 10.92/3.65 "goal": [ 10.92/3.65 { 10.92/3.65 "clause": 0, 10.92/3.65 "scope": 1, 10.92/3.65 "term": "(in_order T1 T2)" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "clause": 1, 10.92/3.65 "scope": 1, 10.92/3.65 "term": "(in_order T1 T2)" 10.92/3.65 } 10.92/3.65 ], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": ["T2"], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "107": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": -1, 10.92/3.65 "scope": -1, 10.92/3.65 "term": "(',' (in_order T19 X16) (app T18 (. T20 X16) T14))" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": ["T14"], 10.92/3.65 "free": ["X16"], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "305": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": 2, 10.92/3.65 "scope": 3, 10.92/3.65 "term": "(app T37 (. T38 T36) X35)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": ["X35"], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "349": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": -1, 10.92/3.65 "scope": -1, 10.92/3.65 "term": "(app T65 (. T66 T67) X57)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": ["X57"], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "20": { 10.92/3.65 "goal": [{ 10.92/3.65 "clause": -1, 10.92/3.65 "scope": -1, 10.92/3.65 "term": "(true)" 10.92/3.65 }], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "21": { 10.92/3.65 "goal": [], 10.92/3.65 "kb": { 10.92/3.65 "nonunifying": [], 10.92/3.65 "intvars": {}, 10.92/3.65 "arithmetic": { 10.92/3.65 "type": "PlainIntegerRelationState", 10.92/3.65 "relations": [] 10.92/3.65 }, 10.92/3.65 "ground": [], 10.92/3.65 "free": [], 10.92/3.65 "exprvars": [] 10.92/3.65 } 10.92/3.65 } 10.92/3.65 }, 10.92/3.65 "edges": [ 10.92/3.65 { 10.92/3.65 "from": 7, 10.92/3.65 "to": 8, 10.92/3.65 "label": "CASE" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 8, 10.92/3.65 "to": 18, 10.92/3.65 "label": "PARALLEL" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 8, 10.92/3.65 "to": 19, 10.92/3.65 "label": "PARALLEL" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 18, 10.92/3.65 "to": 20, 10.92/3.65 "label": "EVAL with clause\nin_order(void, []).\nand substitutionT1 -> void,\nT2 -> []" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 18, 10.92/3.65 "to": 21, 10.92/3.65 "label": "EVAL-BACKTRACK" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 19, 10.92/3.65 "to": 99, 10.92/3.65 "label": "EVAL with clause\nin_order(tree(X11, X12, X13), X14) :- ','(in_order(X12, X15), ','(in_order(X13, X16), app(X15, .(X11, X16), X14))).\nand substitutionX11 -> T17,\nX12 -> T15,\nX13 -> T16,\nT1 -> tree(T17, T15, T16),\nT2 -> T14,\nX14 -> T14,\nT12 -> T15,\nT13 -> T16,\nT11 -> T17" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 19, 10.92/3.65 "to": 100, 10.92/3.65 "label": "EVAL-BACKTRACK" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 20, 10.92/3.65 "to": 29, 10.92/3.65 "label": "SUCCESS" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 99, 10.92/3.65 "to": 106, 10.92/3.65 "label": "SPLIT 1" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 99, 10.92/3.65 "to": 107, 10.92/3.65 "label": "SPLIT 2\nreplacements:X15 -> T18,\nT16 -> T19,\nT17 -> T20" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 106, 10.92/3.65 "to": 151, 10.92/3.65 "label": "CASE" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 107, 10.92/3.65 "to": 352, 10.92/3.65 "label": "SPLIT 1" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 107, 10.92/3.65 "to": 354, 10.92/3.65 "label": "SPLIT 2\nreplacements:X16 -> T72,\nT18 -> T73,\nT20 -> T74" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 151, 10.92/3.65 "to": 154, 10.92/3.65 "label": "PARALLEL" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 151, 10.92/3.65 "to": 155, 10.92/3.65 "label": "PARALLEL" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 154, 10.92/3.65 "to": 156, 10.92/3.65 "label": "EVAL with clause\nin_order(void, []).\nand substitutionT15 -> void,\nX15 -> []" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 154, 10.92/3.65 "to": 157, 10.92/3.65 "label": "EVAL-BACKTRACK" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 155, 10.92/3.65 "to": 292, 10.92/3.65 "label": "EVAL with clause\nin_order(tree(X29, X30, X31), X32) :- ','(in_order(X30, X33), ','(in_order(X31, X34), app(X33, .(X29, X34), X32))).\nand substitutionX29 -> T32,\nX30 -> T30,\nX31 -> T31,\nT15 -> tree(T32, T30, T31),\nX15 -> X35,\nX32 -> X35,\nT28 -> T30,\nT29 -> T31,\nT27 -> T32" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 155, 10.92/3.65 "to": 293, 10.92/3.65 "label": "EVAL-BACKTRACK" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 156, 10.92/3.65 "to": 158, 10.92/3.65 "label": "SUCCESS" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 292, 10.92/3.65 "to": 294, 10.92/3.65 "label": "SPLIT 1" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 292, 10.92/3.65 "to": 295, 10.92/3.65 "label": "SPLIT 2\nreplacements:X33 -> T33,\nT31 -> T34,\nT32 -> T35" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 294, 10.92/3.65 "to": 106, 10.92/3.65 "label": "INSTANCE with matching:\nT15 -> T30\nX15 -> X33" 10.92/3.65 }, 10.92/3.65 { 10.92/3.65 "from": 295, 10.92/3.66 "to": 299, 10.92/3.66 "label": "SPLIT 1" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 295, 10.92/3.66 "to": 300, 10.92/3.66 "label": "SPLIT 2\nreplacements:X34 -> T36,\nT33 -> T37,\nT35 -> T38" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 299, 10.92/3.66 "to": 106, 10.92/3.66 "label": "INSTANCE with matching:\nT15 -> T34\nX15 -> X34" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 300, 10.92/3.66 "to": 303, 10.92/3.66 "label": "CASE" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 303, 10.92/3.66 "to": 305, 10.92/3.66 "label": "PARALLEL" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 303, 10.92/3.66 "to": 341, 10.92/3.66 "label": "PARALLEL" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 305, 10.92/3.66 "to": 344, 10.92/3.66 "label": "EVAL with clause\napp([], X42, X42).\nand substitutionT37 -> [],\nT38 -> T51,\nT36 -> T52,\nX42 -> .(T51, T52),\nX35 -> .(T51, T52)" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 305, 10.92/3.66 "to": 345, 10.92/3.66 "label": "EVAL-BACKTRACK" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 341, 10.92/3.66 "to": 349, 10.92/3.66 "label": "EVAL with clause\napp(.(X53, X54), X55, .(X53, X56)) :- app(X54, X55, X56).\nand substitutionX53 -> T61,\nX54 -> T65,\nT37 -> .(T61, T65),\nT38 -> T66,\nT36 -> T67,\nX55 -> .(T66, T67),\nX56 -> X57,\nX35 -> .(T61, X57),\nT62 -> T65,\nT63 -> T66,\nT64 -> T67" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 341, 10.92/3.66 "to": 350, 10.92/3.66 "label": "EVAL-BACKTRACK" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 344, 10.92/3.66 "to": 346, 10.92/3.66 "label": "SUCCESS" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 349, 10.92/3.66 "to": 300, 10.92/3.66 "label": "INSTANCE with matching:\nT37 -> T65\nT38 -> T66\nT36 -> T67\nX35 -> X57" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 352, 10.92/3.66 "to": 106, 10.92/3.66 "label": "INSTANCE with matching:\nT15 -> T19\nX15 -> X16" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 354, 10.92/3.66 "to": 356, 10.92/3.66 "label": "CASE" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 356, 10.92/3.66 "to": 360, 10.92/3.66 "label": "PARALLEL" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 356, 10.92/3.66 "to": 361, 10.92/3.66 "label": "PARALLEL" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 360, 10.92/3.66 "to": 363, 10.92/3.66 "label": "EVAL with clause\napp([], X66, X66).\nand substitutionT73 -> [],\nT74 -> T87,\nT72 -> T88,\nX66 -> .(T87, T88),\nT14 -> .(T87, T88)" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 360, 10.92/3.66 "to": 364, 10.92/3.66 "label": "EVAL-BACKTRACK" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 361, 10.92/3.66 "to": 387, 10.92/3.66 "label": "EVAL with clause\napp(.(X75, X76), X77, .(X75, X78)) :- app(X76, X77, X78).\nand substitutionX75 -> T99,\nX76 -> T104,\nT73 -> .(T99, T104),\nT74 -> T105,\nT72 -> T106,\nX77 -> .(T105, T106),\nX78 -> T103,\nT14 -> .(T99, T103),\nT100 -> T104,\nT101 -> T105,\nT102 -> T106" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 361, 10.92/3.66 "to": 388, 10.92/3.66 "label": "EVAL-BACKTRACK" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 363, 10.92/3.66 "to": 365, 10.92/3.66 "label": "SUCCESS" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "from": 387, 10.92/3.66 "to": 354, 10.92/3.66 "label": "INSTANCE with matching:\nT73 -> T104\nT74 -> T105\nT72 -> T106\nT14 -> T103" 10.92/3.66 } 10.92/3.66 ], 10.92/3.66 "type": "Graph" 10.92/3.66 } 10.92/3.66 } 10.92/3.66 10.92/3.66 ---------------------------------------- 10.92/3.66 10.92/3.66 (52) 10.92/3.66 Obligation: 10.92/3.66 Q restricted rewrite system: 10.92/3.66 The TRS R consists of the following rules: 10.92/3.66 10.92/3.66 f7_in([]) -> f7_out1 10.92/3.66 f7_in(T14) -> U1(f99_in(T14), T14) 10.92/3.66 U1(f99_out1(X15, T17, X16), T14) -> f7_out1 10.92/3.66 f106_in -> f106_out1 10.92/3.66 f106_in -> U2(f292_in) 10.92/3.66 U2(f292_out1) -> f106_out1 10.92/3.66 f300_in -> f300_out1 10.92/3.66 f300_in -> U3(f300_in) 10.92/3.66 U3(f300_out1) -> f300_out1 10.92/3.66 f354_in(.(T87, T88)) -> f354_out1([], T87, T88) 10.92/3.66 f354_in(.(T99, T103)) -> U4(f354_in(T103), .(T99, T103)) 10.92/3.66 U4(f354_out1(T104, T105, T106), .(T99, T103)) -> f354_out1(.(T99, T104), T105, T106) 10.92/3.66 f99_in(T14) -> U5(f106_in, T14) 10.92/3.66 U5(f106_out1, T14) -> U6(f107_in(T14), T14) 10.92/3.66 U6(f107_out1(T18, T20, X16), T14) -> f99_out1(T18, T20, X16) 10.92/3.66 f107_in(T14) -> U7(f106_in, T14) 10.92/3.66 U7(f106_out1, T14) -> U8(f354_in(T14), T14) 10.92/3.66 U8(f354_out1(T73, T74, T72), T14) -> f107_out1(T73, T74, T72) 10.92/3.66 f292_in -> U9(f106_in) 10.92/3.66 U9(f106_out1) -> U10(f295_in) 10.92/3.66 U10(f295_out1) -> f292_out1 10.92/3.66 f295_in -> U11(f106_in) 10.92/3.66 U11(f106_out1) -> U12(f300_in) 10.92/3.66 U12(f300_out1) -> f295_out1 10.92/3.66 10.92/3.66 Q is empty. 10.92/3.66 10.92/3.66 ---------------------------------------- 10.92/3.66 10.92/3.66 (53) QTRSRRRProof (EQUIVALENT) 10.92/3.66 Used ordering: 10.92/3.66 f7_in/1(YES) 10.92/3.66 []/0) 10.92/3.66 f7_out1/0) 10.92/3.66 U1/2(YES,YES) 10.92/3.66 f99_in/1(YES) 10.92/3.66 f99_out1/3(YES,YES,YES) 10.92/3.66 f106_in/0) 10.92/3.66 f106_out1/0) 10.92/3.66 U2/1)YES( 10.92/3.66 f292_in/0) 10.92/3.66 f292_out1/0) 10.92/3.66 f300_in/0) 10.92/3.66 f300_out1/0) 10.92/3.66 U3/1)YES( 10.92/3.66 f354_in/1(YES) 10.92/3.66 ./2(YES,YES) 10.92/3.66 f354_out1/3(YES,YES,YES) 10.92/3.66 U4/2(YES,YES) 10.92/3.66 U5/2(YES,YES) 10.92/3.66 U6/2(YES,YES) 10.92/3.66 f107_in/1(YES) 10.92/3.66 f107_out1/3(YES,YES,YES) 10.92/3.66 U7/2(YES,YES) 10.92/3.66 U8/2(YES,YES) 10.92/3.66 U9/1)YES( 10.92/3.66 U10/1)YES( 10.92/3.66 f295_in/0) 10.92/3.66 f295_out1/0) 10.92/3.66 U11/1)YES( 10.92/3.66 U12/1)YES( 10.92/3.66 10.92/3.66 Quasi precedence: 10.92/3.66 f7_in_1 > U1_2 > f7_out1 > f354_out1_3 10.92/3.66 f7_in_1 > f99_in_1 > U5_2 > [f99_out1_3, U6_2] > f354_out1_3 10.92/3.66 f7_in_1 > f99_in_1 > U5_2 > [f106_in, f106_out1, f292_in, f292_out1, f300_in, f300_out1, f107_in_1, f295_in, f295_out1] > [[], f354_in_1, U7_2] > [._2, U4_2] > f354_out1_3 10.92/3.66 f7_in_1 > f99_in_1 > U5_2 > [f106_in, f106_out1, f292_in, f292_out1, f300_in, f300_out1, f107_in_1, f295_in, f295_out1] > [[], f354_in_1, U7_2] > U8_2 > f107_out1_3 > f354_out1_3 10.92/3.66 10.92/3.66 10.92/3.66 Status: 10.92/3.66 f7_in_1: multiset status 10.92/3.66 []: multiset status 10.92/3.66 f7_out1: multiset status 10.92/3.66 U1_2: multiset status 10.92/3.66 f99_in_1: multiset status 10.92/3.66 f99_out1_3: multiset status 10.92/3.66 f106_in: multiset status 10.92/3.66 f106_out1: multiset status 10.92/3.66 f292_in: multiset status 10.92/3.66 f292_out1: multiset status 10.92/3.66 f300_in: multiset status 10.92/3.66 f300_out1: multiset status 10.92/3.66 f354_in_1: multiset status 10.92/3.66 ._2: multiset status 10.92/3.66 f354_out1_3: [1,2,3] 10.92/3.66 U4_2: multiset status 10.92/3.66 U5_2: multiset status 10.92/3.66 U6_2: multiset status 10.92/3.66 f107_in_1: [1] 10.92/3.66 f107_out1_3: multiset status 10.92/3.66 U7_2: multiset status 10.92/3.66 U8_2: multiset status 10.92/3.66 f295_in: multiset status 10.92/3.66 f295_out1: multiset status 10.92/3.66 10.92/3.66 With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: 10.92/3.66 10.92/3.66 f7_in([]) -> f7_out1 10.92/3.66 f7_in(T14) -> U1(f99_in(T14), T14) 10.92/3.66 U1(f99_out1(X15, T17, X16), T14) -> f7_out1 10.92/3.66 f354_in(.(T87, T88)) -> f354_out1([], T87, T88) 10.92/3.66 f354_in(.(T99, T103)) -> U4(f354_in(T103), .(T99, T103)) 10.92/3.66 U4(f354_out1(T104, T105, T106), .(T99, T103)) -> f354_out1(.(T99, T104), T105, T106) 10.92/3.66 f99_in(T14) -> U5(f106_in, T14) 10.92/3.66 U5(f106_out1, T14) -> U6(f107_in(T14), T14) 10.92/3.66 U6(f107_out1(T18, T20, X16), T14) -> f99_out1(T18, T20, X16) 10.92/3.66 f107_in(T14) -> U7(f106_in, T14) 10.92/3.66 U7(f106_out1, T14) -> U8(f354_in(T14), T14) 10.92/3.66 U8(f354_out1(T73, T74, T72), T14) -> f107_out1(T73, T74, T72) 10.92/3.66 10.92/3.66 10.92/3.66 10.92/3.66 10.92/3.66 ---------------------------------------- 10.92/3.66 10.92/3.66 (54) 10.92/3.66 Obligation: 10.92/3.66 Q restricted rewrite system: 10.92/3.66 The TRS R consists of the following rules: 10.92/3.66 10.92/3.66 f106_in -> f106_out1 10.92/3.66 f106_in -> U2(f292_in) 10.92/3.66 U2(f292_out1) -> f106_out1 10.92/3.66 f300_in -> f300_out1 10.92/3.66 f300_in -> U3(f300_in) 10.92/3.66 U3(f300_out1) -> f300_out1 10.92/3.66 f292_in -> U9(f106_in) 10.92/3.66 U9(f106_out1) -> U10(f295_in) 10.92/3.66 U10(f295_out1) -> f292_out1 10.92/3.66 f295_in -> U11(f106_in) 10.92/3.66 U11(f106_out1) -> U12(f300_in) 10.92/3.66 U12(f300_out1) -> f295_out1 10.92/3.66 10.92/3.66 Q is empty. 10.92/3.66 10.92/3.66 ---------------------------------------- 10.92/3.66 10.92/3.66 (55) DependencyPairsProof (EQUIVALENT) 10.92/3.66 Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem. 10.92/3.66 ---------------------------------------- 10.92/3.66 10.92/3.66 (56) 10.92/3.66 Obligation: 10.92/3.66 Q DP problem: 10.92/3.66 The TRS P consists of the following rules: 10.92/3.66 10.92/3.66 F106_IN -> U2^1(f292_in) 10.92/3.66 F106_IN -> F292_IN 10.92/3.66 F300_IN -> U3^1(f300_in) 10.92/3.66 F300_IN -> F300_IN 10.92/3.66 F292_IN -> U9^1(f106_in) 10.92/3.66 F292_IN -> F106_IN 10.92/3.66 U9^1(f106_out1) -> U10^1(f295_in) 10.92/3.66 U9^1(f106_out1) -> F295_IN 10.92/3.66 F295_IN -> U11^1(f106_in) 10.92/3.66 F295_IN -> F106_IN 10.92/3.66 U11^1(f106_out1) -> U12^1(f300_in) 10.92/3.66 U11^1(f106_out1) -> F300_IN 10.92/3.66 10.92/3.66 The TRS R consists of the following rules: 10.92/3.66 10.92/3.66 f106_in -> f106_out1 10.92/3.66 f106_in -> U2(f292_in) 10.92/3.66 U2(f292_out1) -> f106_out1 10.92/3.66 f300_in -> f300_out1 10.92/3.66 f300_in -> U3(f300_in) 10.92/3.66 U3(f300_out1) -> f300_out1 10.92/3.66 f292_in -> U9(f106_in) 10.92/3.66 U9(f106_out1) -> U10(f295_in) 10.92/3.66 U10(f295_out1) -> f292_out1 10.92/3.66 f295_in -> U11(f106_in) 10.92/3.66 U11(f106_out1) -> U12(f300_in) 10.92/3.66 U12(f300_out1) -> f295_out1 10.92/3.66 10.92/3.66 Q is empty. 10.92/3.66 We have to consider all minimal (P,Q,R)-chains. 10.92/3.66 ---------------------------------------- 10.92/3.66 10.92/3.66 (57) DependencyGraphProof (EQUIVALENT) 10.92/3.66 The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 6 less nodes. 10.92/3.66 ---------------------------------------- 10.92/3.66 10.92/3.66 (58) 10.92/3.66 Complex Obligation (AND) 10.92/3.66 10.92/3.66 ---------------------------------------- 10.92/3.66 10.92/3.66 (59) 10.92/3.66 Obligation: 10.92/3.66 Q DP problem: 10.92/3.66 The TRS P consists of the following rules: 10.92/3.66 10.92/3.66 F300_IN -> F300_IN 10.92/3.66 10.92/3.66 The TRS R consists of the following rules: 10.92/3.66 10.92/3.66 f106_in -> f106_out1 10.92/3.66 f106_in -> U2(f292_in) 10.92/3.66 U2(f292_out1) -> f106_out1 10.92/3.66 f300_in -> f300_out1 10.92/3.66 f300_in -> U3(f300_in) 10.92/3.66 U3(f300_out1) -> f300_out1 10.92/3.66 f292_in -> U9(f106_in) 10.92/3.66 U9(f106_out1) -> U10(f295_in) 10.92/3.66 U10(f295_out1) -> f292_out1 10.92/3.66 f295_in -> U11(f106_in) 10.92/3.66 U11(f106_out1) -> U12(f300_in) 10.92/3.66 U12(f300_out1) -> f295_out1 10.92/3.66 10.92/3.66 Q is empty. 10.92/3.66 We have to consider all minimal (P,Q,R)-chains. 10.92/3.66 ---------------------------------------- 10.92/3.66 10.92/3.66 (60) UsableRulesProof (EQUIVALENT) 10.92/3.66 We can use the usable rules and reduction pair processor [LPAR04] with the Ce-compatible extension of the polynomial order that maps every function symbol to the sum of its arguments. Then, we can delete all non-usable rules [FROCOS05] from R. 10.92/3.66 ---------------------------------------- 10.92/3.66 10.92/3.66 (61) 10.92/3.66 Obligation: 10.92/3.66 Q DP problem: 10.92/3.66 The TRS P consists of the following rules: 10.92/3.66 10.92/3.66 F300_IN -> F300_IN 10.92/3.66 10.92/3.66 R is empty. 10.92/3.66 Q is empty. 10.92/3.66 We have to consider all minimal (P,Q,R)-chains. 10.92/3.66 ---------------------------------------- 10.92/3.66 10.92/3.66 (62) 10.92/3.66 Obligation: 10.92/3.66 Q DP problem: 10.92/3.66 The TRS P consists of the following rules: 10.92/3.66 10.92/3.66 F106_IN -> F292_IN 10.92/3.66 F292_IN -> U9^1(f106_in) 10.92/3.66 U9^1(f106_out1) -> F295_IN 10.92/3.66 F295_IN -> F106_IN 10.92/3.66 F292_IN -> F106_IN 10.92/3.66 10.92/3.66 The TRS R consists of the following rules: 10.92/3.66 10.92/3.66 f106_in -> f106_out1 10.92/3.66 f106_in -> U2(f292_in) 10.92/3.66 U2(f292_out1) -> f106_out1 10.92/3.66 f300_in -> f300_out1 10.92/3.66 f300_in -> U3(f300_in) 10.92/3.66 U3(f300_out1) -> f300_out1 10.92/3.66 f292_in -> U9(f106_in) 10.92/3.66 U9(f106_out1) -> U10(f295_in) 10.92/3.66 U10(f295_out1) -> f292_out1 10.92/3.66 f295_in -> U11(f106_in) 10.92/3.66 U11(f106_out1) -> U12(f300_in) 10.92/3.66 U12(f300_out1) -> f295_out1 10.92/3.66 10.92/3.66 Q is empty. 10.92/3.66 We have to consider all minimal (P,Q,R)-chains. 10.92/3.66 ---------------------------------------- 10.92/3.66 10.92/3.66 (63) PrologToDTProblemTransformerProof (SOUND) 10.92/3.66 Built DT problem from termination graph DT10. 10.92/3.66 10.92/3.66 { 10.92/3.66 "root": 3, 10.92/3.66 "program": { 10.92/3.66 "directives": [], 10.92/3.66 "clauses": [ 10.92/3.66 [ 10.92/3.66 "(in_order (void) ([]))", 10.92/3.66 null 10.92/3.66 ], 10.92/3.66 [ 10.92/3.66 "(in_order (tree X Left Right) Xs)", 10.92/3.66 "(',' (in_order Left Ls) (',' (in_order Right Rs) (app Ls (. X Rs) Xs)))" 10.92/3.66 ], 10.92/3.66 [ 10.92/3.66 "(app ([]) X X)", 10.92/3.66 null 10.92/3.66 ], 10.92/3.66 [ 10.92/3.66 "(app (. X Xs) Ys (. X Zs))", 10.92/3.66 "(app Xs Ys Zs)" 10.92/3.66 ] 10.92/3.66 ] 10.92/3.66 }, 10.92/3.66 "graph": { 10.92/3.66 "nodes": { 10.92/3.66 "190": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(true)" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "191": { 10.92/3.66 "goal": [], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "192": { 10.92/3.66 "goal": [], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "193": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(app T60 (. T61 T62) X51)" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": ["X51"], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "type": "Nodes", 10.92/3.66 "150": { 10.92/3.66 "goal": [], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "194": { 10.92/3.66 "goal": [], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "152": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(in_order T25 X27)" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": ["X27"], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "153": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(',' (in_order T29 X28) (app T28 (. T30 X28) X29))" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [ 10.92/3.66 "X29", 10.92/3.66 "X28" 10.92/3.66 ], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "351": { 10.92/3.66 "goal": [ 10.92/3.66 { 10.92/3.66 "clause": 2, 10.92/3.66 "scope": 8, 10.92/3.66 "term": "(app ([]) (. T135 T134) T128)" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "clause": 3, 10.92/3.66 "scope": 8, 10.92/3.66 "term": "(app ([]) (. T135 T134) T128)" 10.92/3.66 } 10.92/3.66 ], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [[ 10.92/3.66 "(in_order T136 T128)", 10.92/3.66 "(in_order (void) ([]))" 10.92/3.66 ]], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": ["T128"], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "110": { 10.92/3.66 "goal": [ 10.92/3.66 { 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(true)" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "clause": 1, 10.92/3.66 "scope": 1, 10.92/3.66 "term": "(in_order T1 ([]))" 10.92/3.66 } 10.92/3.66 ], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "275": { 10.92/3.66 "goal": [ 10.92/3.66 { 10.92/3.66 "clause": 2, 10.92/3.66 "scope": 5, 10.92/3.66 "term": "(app ([]) (. T15 T14) ([]))" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "clause": 3, 10.92/3.66 "scope": 5, 10.92/3.66 "term": "(app ([]) (. T15 T14) ([]))" 10.92/3.66 } 10.92/3.66 ], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "111": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": 1, 10.92/3.66 "scope": 1, 10.92/3.66 "term": "(in_order T1 T2)" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [[ 10.92/3.66 "(in_order T1 T2)", 10.92/3.66 "(in_order (void) ([]))" 10.92/3.66 ]], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": ["T2"], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "353": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": 2, 10.92/3.66 "scope": 8, 10.92/3.66 "term": "(app ([]) (. T135 T134) T128)" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [[ 10.92/3.66 "(in_order T136 T128)", 10.92/3.66 "(in_order (void) ([]))" 10.92/3.66 ]], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": ["T128"], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "112": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": 1, 10.92/3.66 "scope": 1, 10.92/3.66 "term": "(in_order T1 ([]))" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "310": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(app T93 (. T94 T92) X79)" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": ["X79"], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "278": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": 3, 10.92/3.66 "scope": 5, 10.92/3.66 "term": "(app ([]) (. T15 T14) ([]))" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "311": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(',' (in_order T102 X10) (app T101 (. T103 X10) ([])))" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": ["X10"], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "355": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": 3, 10.92/3.66 "scope": 8, 10.92/3.66 "term": "(app ([]) (. T135 T134) T128)" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [[ 10.92/3.66 "(in_order T136 T128)", 10.92/3.66 "(in_order (void) ([]))" 10.92/3.66 ]], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": ["T128"], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "279": { 10.92/3.66 "goal": [], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "357": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(true)" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "358": { 10.92/3.66 "goal": [], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "117": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(',' (in_order T9 X9) (',' (in_order T10 X10) (app X9 (. T11 X10) ([]))))" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [ 10.92/3.66 "X9", 10.92/3.66 "X10" 10.92/3.66 ], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "315": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(in_order T102 X10)" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": ["X10"], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "359": { 10.92/3.66 "goal": [], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "316": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(app T109 (. T110 T108) ([]))" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "119": { 10.92/3.66 "goal": [], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "362": { 10.92/3.66 "goal": [], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "121": { 10.92/3.66 "goal": [ 10.92/3.66 { 10.92/3.66 "clause": 0, 10.92/3.66 "scope": 2, 10.92/3.66 "term": "(',' (in_order T9 X9) (',' (in_order T10 X10) (app X9 (. T11 X10) ([]))))" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "clause": 1, 10.92/3.66 "scope": 2, 10.92/3.66 "term": "(',' (in_order T9 X9) (',' (in_order T10 X10) (app X9 (. T11 X10) ([]))))" 10.92/3.66 } 10.92/3.66 ], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [ 10.92/3.66 "X9", 10.92/3.66 "X10" 10.92/3.66 ], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "3": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(in_order T1 T2)" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": ["T2"], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "124": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": 0, 10.92/3.66 "scope": 2, 10.92/3.66 "term": "(',' (in_order T9 X9) (',' (in_order T10 X10) (app X9 (. T11 X10) ([]))))" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [ 10.92/3.66 "X9", 10.92/3.66 "X10" 10.92/3.66 ], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "366": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(',' (',' (in_order T160 X128) (',' (in_order T161 X129) (app X128 (. T162 X129) X130))) (',' (in_order T163 X100) (app X130 (. T164 X100) T128)))" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [[ 10.92/3.66 "(in_order T1 T128)", 10.92/3.66 "(in_order (void) ([]))" 10.92/3.66 ]], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": ["T128"], 10.92/3.66 "free": [ 10.92/3.66 "X100", 10.92/3.66 "X130", 10.92/3.66 "X128", 10.92/3.66 "X129" 10.92/3.66 ], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "125": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": 1, 10.92/3.66 "scope": 2, 10.92/3.66 "term": "(',' (in_order T9 X9) (',' (in_order T10 X10) (app X9 (. T11 X10) ([]))))" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [ 10.92/3.66 "X9", 10.92/3.66 "X10" 10.92/3.66 ], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "367": { 10.92/3.66 "goal": [], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "126": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(',' (in_order T12 X10) (app ([]) (. T13 X10) ([])))" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": ["X10"], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "6": { 10.92/3.66 "goal": [ 10.92/3.66 { 10.92/3.66 "clause": 0, 10.92/3.66 "scope": 1, 10.92/3.66 "term": "(in_order T1 T2)" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "clause": 1, 10.92/3.66 "scope": 1, 10.92/3.66 "term": "(in_order T1 T2)" 10.92/3.66 } 10.92/3.66 ], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": ["T2"], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "127": { 10.92/3.66 "goal": [], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "405": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(app T172 (. T173 T171) X130)" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": ["X130"], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "406": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(',' (in_order T182 X100) (app T181 (. T183 X100) T128))" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [[ 10.92/3.66 "(in_order T184 T128)", 10.92/3.66 "(in_order (void) ([]))" 10.92/3.66 ]], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": ["T128"], 10.92/3.66 "free": ["X100"], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "407": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(in_order T182 X100)" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": ["X100"], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "408": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(app T190 (. T191 T189) T128)" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [[ 10.92/3.66 "(in_order T192 T128)", 10.92/3.66 "(in_order (void) ([]))" 10.92/3.66 ]], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": ["T128"], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "409": { 10.92/3.66 "goal": [ 10.92/3.66 { 10.92/3.66 "clause": 2, 10.92/3.66 "scope": 9, 10.92/3.66 "term": "(app T190 (. T191 T189) T128)" 10.92/3.66 }, 10.92/3.66 { 10.92/3.66 "clause": 3, 10.92/3.66 "scope": 9, 10.92/3.66 "term": "(app T190 (. T191 T189) T128)" 10.92/3.66 } 10.92/3.66 ], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [[ 10.92/3.66 "(in_order T192 T128)", 10.92/3.66 "(in_order (void) ([]))" 10.92/3.66 ]], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": ["T128"], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "290": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(',' (',' (in_order T82 X77) (',' (in_order T83 X78) (app X77 (. T84 X78) X79))) (',' (in_order T85 X10) (app X79 (. T86 X10) ([]))))" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [ 10.92/3.66 "X10", 10.92/3.66 "X79", 10.92/3.66 "X77", 10.92/3.66 "X78" 10.92/3.66 ], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "291": { 10.92/3.66 "goal": [], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "296": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(in_order T82 X77)" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": ["X77"], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "373": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(in_order T160 X128)" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": ["X128"], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "297": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(',' (',' (in_order T88 X78) (app T87 (. T89 X78) X79)) (',' (in_order T90 X10) (app X79 (. T91 X10) ([]))))" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.66 "relations": [] 10.92/3.66 }, 10.92/3.66 "ground": [], 10.92/3.66 "free": [ 10.92/3.66 "X10", 10.92/3.66 "X79", 10.92/3.66 "X78" 10.92/3.66 ], 10.92/3.66 "exprvars": [] 10.92/3.66 } 10.92/3.66 }, 10.92/3.66 "374": { 10.92/3.66 "goal": [{ 10.92/3.66 "clause": -1, 10.92/3.66 "scope": -1, 10.92/3.66 "term": "(',' (',' (in_order T166 X129) (app T165 (. T167 X129) X130)) (',' (in_order T168 X100) (app X130 (. T169 X100) T128)))" 10.92/3.66 }], 10.92/3.66 "kb": { 10.92/3.66 "nonunifying": [[ 10.92/3.66 "(in_order T170 T128)", 10.92/3.66 "(in_order (void) ([]))" 10.92/3.66 ]], 10.92/3.66 "intvars": {}, 10.92/3.66 "arithmetic": { 10.92/3.66 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": ["T128"], 10.92/3.67 "free": [ 10.92/3.67 "X100", 10.92/3.67 "X130", 10.92/3.67 "X129" 10.92/3.67 ], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "135": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(in_order T12 X10)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": ["X10"], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "333": { 10.92/3.67 "goal": [ 10.92/3.67 { 10.92/3.67 "clause": 2, 10.92/3.67 "scope": 6, 10.92/3.67 "term": "(app T109 (. T110 T108) ([]))" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "clause": 3, 10.92/3.67 "scope": 6, 10.92/3.67 "term": "(app T109 (. T110 T108) ([]))" 10.92/3.67 } 10.92/3.67 ], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "377": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(in_order T166 X129)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": ["X129"], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "410": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": 2, 10.92/3.67 "scope": 9, 10.92/3.67 "term": "(app T190 (. T191 T189) T128)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [[ 10.92/3.67 "(in_order T192 T128)", 10.92/3.67 "(in_order (void) ([]))" 10.92/3.67 ]], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": ["T128"], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "136": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(app ([]) (. T15 T14) ([]))" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "334": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": 3, 10.92/3.67 "scope": 6, 10.92/3.67 "term": "(app T109 (. T110 T108) ([]))" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "378": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(',' (app T172 (. T173 T171) X130) (',' (in_order T174 X100) (app X130 (. T175 X100) T128)))" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [[ 10.92/3.67 "(in_order T176 T128)", 10.92/3.67 "(in_order (void) ([]))" 10.92/3.67 ]], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": ["T128"], 10.92/3.67 "free": [ 10.92/3.67 "X100", 10.92/3.67 "X130" 10.92/3.67 ], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "411": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": 3, 10.92/3.67 "scope": 9, 10.92/3.67 "term": "(app T190 (. T191 T189) T128)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [[ 10.92/3.67 "(in_order T192 T128)", 10.92/3.67 "(in_order (void) ([]))" 10.92/3.67 ]], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": ["T128"], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "335": { 10.92/3.67 "goal": [], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "412": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(true)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "336": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(',' (in_order T129 X99) (',' (in_order T130 X100) (app X99 (. T131 X100) T128)))" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [[ 10.92/3.67 "(in_order T1 T128)", 10.92/3.67 "(in_order (void) ([]))" 10.92/3.67 ]], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": ["T128"], 10.92/3.67 "free": [ 10.92/3.67 "X99", 10.92/3.67 "X100" 10.92/3.67 ], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "413": { 10.92/3.67 "goal": [], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "139": { 10.92/3.67 "goal": [ 10.92/3.67 { 10.92/3.67 "clause": 0, 10.92/3.67 "scope": 3, 10.92/3.67 "term": "(in_order T12 X10)" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "clause": 1, 10.92/3.67 "scope": 3, 10.92/3.67 "term": "(in_order T12 X10)" 10.92/3.67 } 10.92/3.67 ], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": ["X10"], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "337": { 10.92/3.67 "goal": [], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "414": { 10.92/3.67 "goal": [], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "338": { 10.92/3.67 "goal": [ 10.92/3.67 { 10.92/3.67 "clause": 0, 10.92/3.67 "scope": 7, 10.92/3.67 "term": "(',' (in_order T129 X99) (',' (in_order T130 X100) (app X99 (. T131 X100) T128)))" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "clause": 1, 10.92/3.67 "scope": 7, 10.92/3.67 "term": "(',' (in_order T129 X99) (',' (in_order T130 X100) (app X99 (. T131 X100) T128)))" 10.92/3.67 } 10.92/3.67 ], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [[ 10.92/3.67 "(in_order T1 T128)", 10.92/3.67 "(in_order (void) ([]))" 10.92/3.67 ]], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": ["T128"], 10.92/3.67 "free": [ 10.92/3.67 "X99", 10.92/3.67 "X100" 10.92/3.67 ], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "415": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(app T222 (. T223 T224) T221)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": ["T221"], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "339": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": 0, 10.92/3.67 "scope": 7, 10.92/3.67 "term": "(',' (in_order T129 X99) (',' (in_order T130 X100) (app X99 (. T131 X100) T128)))" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [[ 10.92/3.67 "(in_order T1 T128)", 10.92/3.67 "(in_order (void) ([]))" 10.92/3.67 ]], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": ["T128"], 10.92/3.67 "free": [ 10.92/3.67 "X99", 10.92/3.67 "X100" 10.92/3.67 ], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "416": { 10.92/3.67 "goal": [], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "417": { 10.92/3.67 "goal": [ 10.92/3.67 { 10.92/3.67 "clause": 2, 10.92/3.67 "scope": 10, 10.92/3.67 "term": "(app T222 (. T223 T224) T221)" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "clause": 3, 10.92/3.67 "scope": 10, 10.92/3.67 "term": "(app T222 (. T223 T224) T221)" 10.92/3.67 } 10.92/3.67 ], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": ["T221"], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "418": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": 2, 10.92/3.67 "scope": 10, 10.92/3.67 "term": "(app T222 (. T223 T224) T221)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": ["T221"], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "419": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": 3, 10.92/3.67 "scope": 10, 10.92/3.67 "term": "(app T222 (. T223 T224) T221)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": ["T221"], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "141": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": 0, 10.92/3.67 "scope": 3, 10.92/3.67 "term": "(in_order T12 X10)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": ["X10"], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "185": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(in_order T29 X28)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": ["X28"], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "142": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": 1, 10.92/3.67 "scope": 3, 10.92/3.67 "term": "(in_order T12 X10)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": ["X10"], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "186": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(app T32 (. T33 T31) X29)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": ["X29"], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "340": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": 1, 10.92/3.67 "scope": 7, 10.92/3.67 "term": "(',' (in_order T129 X99) (',' (in_order T130 X100) (app X99 (. T131 X100) T128)))" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [[ 10.92/3.67 "(in_order T1 T128)", 10.92/3.67 "(in_order (void) ([]))" 10.92/3.67 ]], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": ["T128"], 10.92/3.67 "free": [ 10.92/3.67 "X99", 10.92/3.67 "X100" 10.92/3.67 ], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "187": { 10.92/3.67 "goal": [ 10.92/3.67 { 10.92/3.67 "clause": 2, 10.92/3.67 "scope": 4, 10.92/3.67 "term": "(app T32 (. T33 T31) X29)" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "clause": 3, 10.92/3.67 "scope": 4, 10.92/3.67 "term": "(app T32 (. T33 T31) X29)" 10.92/3.67 } 10.92/3.67 ], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": ["X29"], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "188": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": 2, 10.92/3.67 "scope": 4, 10.92/3.67 "term": "(app T32 (. T33 T31) X29)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": ["X29"], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "342": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(',' (in_order T132 X100) (app ([]) (. T133 X100) T128))" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [[ 10.92/3.67 "(in_order T1 T128)", 10.92/3.67 "(in_order (void) ([]))" 10.92/3.67 ]], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": ["T128"], 10.92/3.67 "free": ["X100"], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "189": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": 3, 10.92/3.67 "scope": 4, 10.92/3.67 "term": "(app T32 (. T33 T31) X29)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": ["X29"], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "343": { 10.92/3.67 "goal": [], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "420": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(true)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "146": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(true)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "421": { 10.92/3.67 "goal": [], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "147": { 10.92/3.67 "goal": [], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "422": { 10.92/3.67 "goal": [], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "148": { 10.92/3.67 "goal": [], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "423": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(app T254 (. T255 T256) T253)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": ["T253"], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "149": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(',' (in_order T25 X27) (',' (in_order T26 X28) (app X27 (. T27 X28) X29)))" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [ 10.92/3.67 "X29", 10.92/3.67 "X27", 10.92/3.67 "X28" 10.92/3.67 ], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "347": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(in_order T132 X100)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": ["X100"], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "424": { 10.92/3.67 "goal": [], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "348": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(app ([]) (. T135 T134) T128)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [[ 10.92/3.67 "(in_order T136 T128)", 10.92/3.67 "(in_order (void) ([]))" 10.92/3.67 ]], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": ["T128"], 10.92/3.67 "free": [], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "306": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(in_order T88 X78)" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": ["X78"], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "307": { 10.92/3.67 "goal": [{ 10.92/3.67 "clause": -1, 10.92/3.67 "scope": -1, 10.92/3.67 "term": "(',' (app T93 (. T94 T92) X79) (',' (in_order T95 X10) (app X79 (. T96 X10) ([]))))" 10.92/3.67 }], 10.92/3.67 "kb": { 10.92/3.67 "nonunifying": [], 10.92/3.67 "intvars": {}, 10.92/3.67 "arithmetic": { 10.92/3.67 "type": "PlainIntegerRelationState", 10.92/3.67 "relations": [] 10.92/3.67 }, 10.92/3.67 "ground": [], 10.92/3.67 "free": [ 10.92/3.67 "X10", 10.92/3.67 "X79" 10.92/3.67 ], 10.92/3.67 "exprvars": [] 10.92/3.67 } 10.92/3.67 } 10.92/3.67 }, 10.92/3.67 "edges": [ 10.92/3.67 { 10.92/3.67 "from": 3, 10.92/3.67 "to": 6, 10.92/3.67 "label": "CASE" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 6, 10.92/3.67 "to": 110, 10.92/3.67 "label": "EVAL with clause\nin_order(void, []).\nand substitutionT1 -> void,\nT2 -> []" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 6, 10.92/3.67 "to": 111, 10.92/3.67 "label": "EVAL-BACKTRACK" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 110, 10.92/3.67 "to": 112, 10.92/3.67 "label": "SUCCESS" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 111, 10.92/3.67 "to": 336, 10.92/3.67 "label": "EVAL with clause\nin_order(tree(X95, X96, X97), X98) :- ','(in_order(X96, X99), ','(in_order(X97, X100), app(X99, .(X95, X100), X98))).\nand substitutionX95 -> T131,\nX96 -> T129,\nX97 -> T130,\nT1 -> tree(T131, T129, T130),\nT2 -> T128,\nX98 -> T128,\nT126 -> T129,\nT127 -> T130,\nT125 -> T131" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 111, 10.92/3.67 "to": 337, 10.92/3.67 "label": "EVAL-BACKTRACK" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 112, 10.92/3.67 "to": 117, 10.92/3.67 "label": "EVAL with clause\nin_order(tree(X5, X6, X7), X8) :- ','(in_order(X6, X9), ','(in_order(X7, X10), app(X9, .(X5, X10), X8))).\nand substitutionX5 -> T11,\nX6 -> T9,\nX7 -> T10,\nT1 -> tree(T11, T9, T10),\nX8 -> [],\nT7 -> T9,\nT8 -> T10,\nT6 -> T11" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 112, 10.92/3.67 "to": 119, 10.92/3.67 "label": "EVAL-BACKTRACK" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 117, 10.92/3.67 "to": 121, 10.92/3.67 "label": "CASE" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 121, 10.92/3.67 "to": 124, 10.92/3.67 "label": "PARALLEL" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 121, 10.92/3.67 "to": 125, 10.92/3.67 "label": "PARALLEL" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 124, 10.92/3.67 "to": 126, 10.92/3.67 "label": "EVAL with clause\nin_order(void, []).\nand substitutionT9 -> void,\nX9 -> [],\nT10 -> T12,\nT11 -> T13" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 124, 10.92/3.67 "to": 127, 10.92/3.67 "label": "EVAL-BACKTRACK" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 125, 10.92/3.67 "to": 290, 10.92/3.67 "label": "EVAL with clause\nin_order(tree(X73, X74, X75), X76) :- ','(in_order(X74, X77), ','(in_order(X75, X78), app(X77, .(X73, X78), X76))).\nand substitutionX73 -> T84,\nX74 -> T82,\nX75 -> T83,\nT9 -> tree(T84, T82, T83),\nX9 -> X79,\nX76 -> X79,\nT80 -> T82,\nT81 -> T83,\nT79 -> T84,\nT10 -> T85,\nT11 -> T86" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 125, 10.92/3.67 "to": 291, 10.92/3.67 "label": "EVAL-BACKTRACK" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 126, 10.92/3.67 "to": 135, 10.92/3.67 "label": "SPLIT 1" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 126, 10.92/3.67 "to": 136, 10.92/3.67 "label": "SPLIT 2\nreplacements:X10 -> T14,\nT13 -> T15" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 135, 10.92/3.67 "to": 139, 10.92/3.67 "label": "CASE" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 136, 10.92/3.67 "to": 275, 10.92/3.67 "label": "CASE" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 139, 10.92/3.67 "to": 141, 10.92/3.67 "label": "PARALLEL" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 139, 10.92/3.67 "to": 142, 10.92/3.67 "label": "PARALLEL" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 141, 10.92/3.67 "to": 146, 10.92/3.67 "label": "EVAL with clause\nin_order(void, []).\nand substitutionT12 -> void,\nX10 -> []" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 141, 10.92/3.67 "to": 147, 10.92/3.67 "label": "EVAL-BACKTRACK" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 142, 10.92/3.67 "to": 149, 10.92/3.67 "label": "EVAL with clause\nin_order(tree(X23, X24, X25), X26) :- ','(in_order(X24, X27), ','(in_order(X25, X28), app(X27, .(X23, X28), X26))).\nand substitutionX23 -> T27,\nX24 -> T25,\nX25 -> T26,\nT12 -> tree(T27, T25, T26),\nX10 -> X29,\nX26 -> X29,\nT23 -> T25,\nT24 -> T26,\nT22 -> T27" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 142, 10.92/3.67 "to": 150, 10.92/3.67 "label": "EVAL-BACKTRACK" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 146, 10.92/3.67 "to": 148, 10.92/3.67 "label": "SUCCESS" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 149, 10.92/3.67 "to": 152, 10.92/3.67 "label": "SPLIT 1" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 149, 10.92/3.67 "to": 153, 10.92/3.67 "label": "SPLIT 2\nreplacements:X27 -> T28,\nT26 -> T29,\nT27 -> T30" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 152, 10.92/3.67 "to": 135, 10.92/3.67 "label": "INSTANCE with matching:\nT12 -> T25\nX10 -> X27" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 153, 10.92/3.67 "to": 185, 10.92/3.67 "label": "SPLIT 1" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 153, 10.92/3.67 "to": 186, 10.92/3.67 "label": "SPLIT 2\nreplacements:X28 -> T31,\nT28 -> T32,\nT30 -> T33" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 185, 10.92/3.67 "to": 135, 10.92/3.67 "label": "INSTANCE with matching:\nT12 -> T29\nX10 -> X28" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 186, 10.92/3.67 "to": 187, 10.92/3.67 "label": "CASE" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 187, 10.92/3.67 "to": 188, 10.92/3.67 "label": "PARALLEL" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 187, 10.92/3.67 "to": 189, 10.92/3.67 "label": "PARALLEL" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 188, 10.92/3.67 "to": 190, 10.92/3.67 "label": "EVAL with clause\napp([], X36, X36).\nand substitutionT32 -> [],\nT33 -> T46,\nT31 -> T47,\nX36 -> .(T46, T47),\nX29 -> .(T46, T47)" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 188, 10.92/3.67 "to": 191, 10.92/3.67 "label": "EVAL-BACKTRACK" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 189, 10.92/3.67 "to": 193, 10.92/3.67 "label": "EVAL with clause\napp(.(X47, X48), X49, .(X47, X50)) :- app(X48, X49, X50).\nand substitutionX47 -> T56,\nX48 -> T60,\nT32 -> .(T56, T60),\nT33 -> T61,\nT31 -> T62,\nX49 -> .(T61, T62),\nX50 -> X51,\nX29 -> .(T56, X51),\nT57 -> T60,\nT58 -> T61,\nT59 -> T62" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 189, 10.92/3.67 "to": 194, 10.92/3.67 "label": "EVAL-BACKTRACK" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 190, 10.92/3.67 "to": 192, 10.92/3.67 "label": "SUCCESS" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 193, 10.92/3.67 "to": 186, 10.92/3.67 "label": "INSTANCE with matching:\nT32 -> T60\nT33 -> T61\nT31 -> T62\nX29 -> X51" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 275, 10.92/3.67 "to": 278, 10.92/3.67 "label": "BACKTRACK\nfor clause: app([], X, X)because of non-unification" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 278, 10.92/3.67 "to": 279, 10.92/3.67 "label": "BACKTRACK\nfor clause: app(.(X, Xs), Ys, .(X, Zs)) :- app(Xs, Ys, Zs)because of non-unification" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 290, 10.92/3.67 "to": 296, 10.92/3.67 "label": "SPLIT 1" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 290, 10.92/3.67 "to": 297, 10.92/3.67 "label": "SPLIT 2\nreplacements:X77 -> T87,\nT83 -> T88,\nT84 -> T89,\nT85 -> T90,\nT86 -> T91" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 296, 10.92/3.67 "to": 135, 10.92/3.67 "label": "INSTANCE with matching:\nT12 -> T82\nX10 -> X77" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 297, 10.92/3.67 "to": 306, 10.92/3.67 "label": "SPLIT 1" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 297, 10.92/3.67 "to": 307, 10.92/3.67 "label": "SPLIT 2\nreplacements:X78 -> T92,\nT87 -> T93,\nT89 -> T94,\nT90 -> T95,\nT91 -> T96" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 306, 10.92/3.67 "to": 135, 10.92/3.67 "label": "INSTANCE with matching:\nT12 -> T88\nX10 -> X78" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 307, 10.92/3.67 "to": 310, 10.92/3.67 "label": "SPLIT 1" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 307, 10.92/3.67 "to": 311, 10.92/3.67 "label": "SPLIT 2\nreplacements:X79 -> T101,\nT95 -> T102,\nT96 -> T103" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 310, 10.92/3.67 "to": 186, 10.92/3.67 "label": "INSTANCE with matching:\nT32 -> T93\nT33 -> T94\nT31 -> T92\nX29 -> X79" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 311, 10.92/3.67 "to": 315, 10.92/3.67 "label": "SPLIT 1" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 311, 10.92/3.67 "to": 316, 10.92/3.67 "label": "SPLIT 2\nreplacements:X10 -> T108,\nT101 -> T109,\nT103 -> T110" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 315, 10.92/3.67 "to": 135, 10.92/3.67 "label": "INSTANCE with matching:\nT12 -> T102" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 316, 10.92/3.67 "to": 333, 10.92/3.67 "label": "CASE" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 333, 10.92/3.67 "to": 334, 10.92/3.67 "label": "BACKTRACK\nfor clause: app([], X, X)because of non-unification" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 334, 10.92/3.67 "to": 335, 10.92/3.67 "label": "BACKTRACK\nfor clause: app(.(X, Xs), Ys, .(X, Zs)) :- app(Xs, Ys, Zs)because of non-unification" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 336, 10.92/3.67 "to": 338, 10.92/3.67 "label": "CASE" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 338, 10.92/3.67 "to": 339, 10.92/3.67 "label": "PARALLEL" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 338, 10.92/3.67 "to": 340, 10.92/3.67 "label": "PARALLEL" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 339, 10.92/3.67 "to": 342, 10.92/3.67 "label": "EVAL with clause\nin_order(void, []).\nand substitutionT129 -> void,\nX99 -> [],\nT130 -> T132,\nT131 -> T133" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 339, 10.92/3.67 "to": 343, 10.92/3.67 "label": "EVAL-BACKTRACK" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 340, 10.92/3.67 "to": 366, 10.92/3.67 "label": "EVAL with clause\nin_order(tree(X124, X125, X126), X127) :- ','(in_order(X125, X128), ','(in_order(X126, X129), app(X128, .(X124, X129), X127))).\nand substitutionX124 -> T162,\nX125 -> T160,\nX126 -> T161,\nT129 -> tree(T162, T160, T161),\nX99 -> X130,\nX127 -> X130,\nT158 -> T160,\nT159 -> T161,\nT157 -> T162,\nT130 -> T163,\nT131 -> T164" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 340, 10.92/3.67 "to": 367, 10.92/3.67 "label": "EVAL-BACKTRACK" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 342, 10.92/3.67 "to": 347, 10.92/3.67 "label": "SPLIT 1" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 342, 10.92/3.67 "to": 348, 10.92/3.67 "label": "SPLIT 2\nreplacements:X100 -> T134,\nT133 -> T135,\nT1 -> T136" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 347, 10.92/3.67 "to": 135, 10.92/3.67 "label": "INSTANCE with matching:\nT12 -> T132\nX10 -> X100" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 348, 10.92/3.67 "to": 351, 10.92/3.67 "label": "CASE" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 351, 10.92/3.67 "to": 353, 10.92/3.67 "label": "PARALLEL" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 351, 10.92/3.67 "to": 355, 10.92/3.67 "label": "PARALLEL" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 353, 10.92/3.67 "to": 357, 10.92/3.67 "label": "EVAL with clause\napp([], X107, X107).\nand substitutionT135 -> T149,\nT134 -> T150,\nX107 -> .(T149, T150),\nT128 -> .(T149, T150)" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 353, 10.92/3.67 "to": 358, 10.92/3.67 "label": "EVAL-BACKTRACK" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 355, 10.92/3.67 "to": 362, 10.92/3.67 "label": "BACKTRACK\nfor clause: app(.(X, Xs), Ys, .(X, Zs)) :- app(Xs, Ys, Zs)because of non-unification" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 357, 10.92/3.67 "to": 359, 10.92/3.67 "label": "SUCCESS" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 366, 10.92/3.67 "to": 373, 10.92/3.67 "label": "SPLIT 1" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 366, 10.92/3.67 "to": 374, 10.92/3.67 "label": "SPLIT 2\nreplacements:X128 -> T165,\nT161 -> T166,\nT162 -> T167,\nT163 -> T168,\nT164 -> T169,\nT1 -> T170" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 373, 10.92/3.67 "to": 135, 10.92/3.67 "label": "INSTANCE with matching:\nT12 -> T160\nX10 -> X128" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 374, 10.92/3.67 "to": 377, 10.92/3.67 "label": "SPLIT 1" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 374, 10.92/3.67 "to": 378, 10.92/3.67 "label": "SPLIT 2\nreplacements:X129 -> T171,\nT165 -> T172,\nT167 -> T173,\nT168 -> T174,\nT169 -> T175,\nT170 -> T176" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 377, 10.92/3.67 "to": 135, 10.92/3.67 "label": "INSTANCE with matching:\nT12 -> T166\nX10 -> X129" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 378, 10.92/3.67 "to": 405, 10.92/3.67 "label": "SPLIT 1" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 378, 10.92/3.67 "to": 406, 10.92/3.67 "label": "SPLIT 2\nreplacements:X130 -> T181,\nT174 -> T182,\nT175 -> T183,\nT176 -> T184" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 405, 10.92/3.67 "to": 186, 10.92/3.67 "label": "INSTANCE with matching:\nT32 -> T172\nT33 -> T173\nT31 -> T171\nX29 -> X130" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 406, 10.92/3.67 "to": 407, 10.92/3.67 "label": "SPLIT 1" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 406, 10.92/3.67 "to": 408, 10.92/3.67 "label": "SPLIT 2\nreplacements:X100 -> T189,\nT181 -> T190,\nT183 -> T191,\nT184 -> T192" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 407, 10.92/3.67 "to": 135, 10.92/3.67 "label": "INSTANCE with matching:\nT12 -> T182\nX10 -> X100" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 408, 10.92/3.67 "to": 409, 10.92/3.67 "label": "CASE" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 409, 10.92/3.67 "to": 410, 10.92/3.67 "label": "PARALLEL" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 409, 10.92/3.67 "to": 411, 10.92/3.67 "label": "PARALLEL" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 410, 10.92/3.67 "to": 412, 10.92/3.67 "label": "EVAL with clause\napp([], X141, X141).\nand substitutionT190 -> [],\nT191 -> T205,\nT189 -> T206,\nX141 -> .(T205, T206),\nT128 -> .(T205, T206)" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 410, 10.92/3.67 "to": 413, 10.92/3.67 "label": "EVAL-BACKTRACK" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 411, 10.92/3.67 "to": 415, 10.92/3.67 "label": "EVAL with clause\napp(.(X150, X151), X152, .(X150, X153)) :- app(X151, X152, X153).\nand substitutionX150 -> T217,\nX151 -> T222,\nT190 -> .(T217, T222),\nT191 -> T223,\nT189 -> T224,\nX152 -> .(T223, T224),\nX153 -> T221,\nT128 -> .(T217, T221),\nT218 -> T222,\nT219 -> T223,\nT220 -> T224" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 411, 10.92/3.67 "to": 416, 10.92/3.67 "label": "EVAL-BACKTRACK" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 412, 10.92/3.67 "to": 414, 10.92/3.67 "label": "SUCCESS" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 415, 10.92/3.67 "to": 417, 10.92/3.67 "label": "CASE" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 417, 10.92/3.67 "to": 418, 10.92/3.67 "label": "PARALLEL" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 417, 10.92/3.67 "to": 419, 10.92/3.67 "label": "PARALLEL" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 418, 10.92/3.67 "to": 420, 10.92/3.67 "label": "EVAL with clause\napp([], X160, X160).\nand substitutionT222 -> [],\nT223 -> T237,\nT224 -> T238,\nX160 -> .(T237, T238),\nT221 -> .(T237, T238)" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 418, 10.92/3.67 "to": 421, 10.92/3.67 "label": "EVAL-BACKTRACK" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 419, 10.92/3.67 "to": 423, 10.92/3.67 "label": "EVAL with clause\napp(.(X169, X170), X171, .(X169, X172)) :- app(X170, X171, X172).\nand substitutionX169 -> T249,\nX170 -> T254,\nT222 -> .(T249, T254),\nT223 -> T255,\nT224 -> T256,\nX171 -> .(T255, T256),\nX172 -> T253,\nT221 -> .(T249, T253),\nT250 -> T254,\nT251 -> T255,\nT252 -> T256" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 419, 10.92/3.67 "to": 424, 10.92/3.67 "label": "EVAL-BACKTRACK" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 420, 10.92/3.67 "to": 422, 10.92/3.67 "label": "SUCCESS" 10.92/3.67 }, 10.92/3.67 { 10.92/3.67 "from": 423, 10.92/3.67 "to": 415, 10.92/3.67 "label": "INSTANCE with matching:\nT222 -> T254\nT223 -> T255\nT224 -> T256\nT221 -> T253" 10.92/3.67 } 10.92/3.67 ], 10.92/3.67 "type": "Graph" 10.92/3.67 } 10.92/3.67 } 10.92/3.67 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (64) 10.92/3.67 Obligation: 10.92/3.67 Triples: 10.92/3.67 10.92/3.67 in_orderA(tree(X1, X2, X3), X4) :- in_orderA(X2, X5). 10.92/3.67 in_orderA(tree(X1, X2, X3), X4) :- ','(in_ordercA(X2, X5), in_orderA(X3, X6)). 10.92/3.67 in_orderA(tree(X1, X2, X3), X4) :- ','(in_ordercA(X2, X5), ','(in_ordercA(X3, X6), appB(X5, X1, X6, X4))). 10.92/3.67 appB(.(X1, X2), X3, X4, .(X1, X5)) :- appB(X2, X3, X4, X5). 10.92/3.67 appC(.(X1, X2), X3, X4, .(X1, X5)) :- appC(X2, X3, X4, X5). 10.92/3.67 in_orderD(tree(X1, void, X2), []) :- in_orderA(X2, X3). 10.92/3.67 in_orderD(tree(X1, tree(X2, X3, X4), X5), []) :- in_orderA(X3, X6). 10.92/3.67 in_orderD(tree(X1, tree(X2, X3, X4), X5), []) :- ','(in_ordercA(X3, X6), in_orderA(X4, X7)). 10.92/3.67 in_orderD(tree(X1, tree(X2, X3, X4), X5), []) :- ','(in_ordercA(X3, X6), ','(in_ordercA(X4, X7), appB(X6, X2, X7, X8))). 10.92/3.67 in_orderD(tree(X1, tree(X2, X3, X4), X5), []) :- ','(in_ordercA(X3, X6), ','(in_ordercA(X4, X7), ','(appcB(X6, X2, X7, X8), in_orderA(X5, X9)))). 10.92/3.67 in_orderD(tree(X1, void, X2), X3) :- in_orderA(X2, X4). 10.92/3.67 in_orderD(tree(X1, tree(X2, X3, X4), X5), X6) :- in_orderA(X3, X7). 10.92/3.67 in_orderD(tree(X1, tree(X2, X3, X4), X5), X6) :- ','(in_ordercA(X3, X7), in_orderA(X4, X8)). 10.92/3.67 in_orderD(tree(X1, tree(X2, X3, X4), X5), X6) :- ','(in_ordercA(X3, X7), ','(in_ordercA(X4, X8), appB(X7, X2, X8, X9))). 10.92/3.67 in_orderD(tree(X1, tree(X2, X3, X4), X5), X6) :- ','(in_ordercA(X3, X7), ','(in_ordercA(X4, X8), ','(appcB(X7, X2, X8, X9), in_orderA(X5, X10)))). 10.92/3.67 in_orderD(tree(X1, tree(X2, X3, X4), X5), .(X6, X7)) :- ','(in_ordercA(X3, X8), ','(in_ordercA(X4, X9), ','(appcB(X8, X2, X9, .(X6, X10)), ','(in_ordercA(X5, X11), appC(X10, X1, X11, X7))))). 10.92/3.67 10.92/3.67 Clauses: 10.92/3.67 10.92/3.67 in_ordercA(void, []). 10.92/3.67 in_ordercA(tree(X1, X2, X3), X4) :- ','(in_ordercA(X2, X5), ','(in_ordercA(X3, X6), appcB(X5, X1, X6, X4))). 10.92/3.67 appcB([], X1, X2, .(X1, X2)). 10.92/3.67 appcB(.(X1, X2), X3, X4, .(X1, X5)) :- appcB(X2, X3, X4, X5). 10.92/3.67 appcC([], X1, X2, .(X1, X2)). 10.92/3.67 appcC(.(X1, X2), X3, X4, .(X1, X5)) :- appcC(X2, X3, X4, X5). 10.92/3.67 10.92/3.67 Afs: 10.92/3.67 10.92/3.67 in_orderD(x1, x2) = in_orderD(x2) 10.92/3.67 10.92/3.67 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (65) TriplesToPiDPProof (SOUND) 10.92/3.67 We use the technique of [DT09]. With regard to the inferred argument filtering the predicates were used in the following modes: 10.92/3.67 10.92/3.67 in_orderD_in_2: (f,b) 10.92/3.67 10.92/3.67 in_orderA_in_2: (f,f) 10.92/3.67 10.92/3.67 in_ordercA_in_2: (f,f) 10.92/3.67 10.92/3.67 appcB_in_4: (b,f,b,f) 10.92/3.67 10.92/3.67 appB_in_4: (b,f,b,f) 10.92/3.67 10.92/3.67 appC_in_4: (b,f,b,b) 10.92/3.67 10.92/3.67 Transforming TRIPLES into the following Term Rewriting System: 10.92/3.67 10.92/3.67 Pi DP problem: 10.92/3.67 The TRS P consists of the following rules: 10.92/3.67 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, void, X2), []) -> U8_AG(X1, X2, in_orderA_in_aa(X2, X3)) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, void, X2), []) -> IN_ORDERA_IN_AA(X2, X3) 10.92/3.67 IN_ORDERA_IN_AA(tree(X1, X2, X3), X4) -> U1_AA(X1, X2, X3, X4, in_orderA_in_aa(X2, X5)) 10.92/3.67 IN_ORDERA_IN_AA(tree(X1, X2, X3), X4) -> IN_ORDERA_IN_AA(X2, X5) 10.92/3.67 IN_ORDERA_IN_AA(tree(X1, X2, X3), X4) -> U2_AA(X1, X2, X3, X4, in_ordercA_in_aa(X2, X5)) 10.92/3.67 U2_AA(X1, X2, X3, X4, in_ordercA_out_aa(X2, X5)) -> U3_AA(X1, X2, X3, X4, in_orderA_in_aa(X3, X6)) 10.92/3.67 U2_AA(X1, X2, X3, X4, in_ordercA_out_aa(X2, X5)) -> IN_ORDERA_IN_AA(X3, X6) 10.92/3.67 U2_AA(X1, X2, X3, X4, in_ordercA_out_aa(X2, X5)) -> U4_AA(X1, X2, X3, X4, X5, in_ordercA_in_aa(X3, X6)) 10.92/3.67 U4_AA(X1, X2, X3, X4, X5, in_ordercA_out_aa(X3, X6)) -> U5_AA(X1, X2, X3, X4, appB_in_gaga(X5, X1, X6, X4)) 10.92/3.67 U4_AA(X1, X2, X3, X4, X5, in_ordercA_out_aa(X3, X6)) -> APPB_IN_GAGA(X5, X1, X6, X4) 10.92/3.67 APPB_IN_GAGA(.(X1, X2), X3, X4, .(X1, X5)) -> U6_GAGA(X1, X2, X3, X4, X5, appB_in_gaga(X2, X3, X4, X5)) 10.92/3.67 APPB_IN_GAGA(.(X1, X2), X3, X4, .(X1, X5)) -> APPB_IN_GAGA(X2, X3, X4, X5) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, tree(X2, X3, X4), X5), []) -> U9_AG(X1, X2, X3, X4, X5, in_orderA_in_aa(X3, X6)) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, tree(X2, X3, X4), X5), []) -> IN_ORDERA_IN_AA(X3, X6) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, tree(X2, X3, X4), X5), []) -> U10_AG(X1, X2, X3, X4, X5, in_ordercA_in_aa(X3, X6)) 10.92/3.67 U10_AG(X1, X2, X3, X4, X5, in_ordercA_out_aa(X3, X6)) -> U11_AG(X1, X2, X3, X4, X5, in_orderA_in_aa(X4, X7)) 10.92/3.67 U10_AG(X1, X2, X3, X4, X5, in_ordercA_out_aa(X3, X6)) -> IN_ORDERA_IN_AA(X4, X7) 10.92/3.67 U10_AG(X1, X2, X3, X4, X5, in_ordercA_out_aa(X3, X6)) -> U12_AG(X1, X2, X3, X4, X5, X6, in_ordercA_in_aa(X4, X7)) 10.92/3.67 U12_AG(X1, X2, X3, X4, X5, X6, in_ordercA_out_aa(X4, X7)) -> U13_AG(X1, X2, X3, X4, X5, appB_in_gaga(X6, X2, X7, X8)) 10.92/3.67 U12_AG(X1, X2, X3, X4, X5, X6, in_ordercA_out_aa(X4, X7)) -> APPB_IN_GAGA(X6, X2, X7, X8) 10.92/3.67 U12_AG(X1, X2, X3, X4, X5, X6, in_ordercA_out_aa(X4, X7)) -> U14_AG(X1, X2, X3, X4, X5, appcB_in_gaga(X6, X2, X7, X8)) 10.92/3.67 U14_AG(X1, X2, X3, X4, X5, appcB_out_gaga(X6, X2, X7, X8)) -> U15_AG(X1, X2, X3, X4, X5, in_orderA_in_aa(X5, X9)) 10.92/3.67 U14_AG(X1, X2, X3, X4, X5, appcB_out_gaga(X6, X2, X7, X8)) -> IN_ORDERA_IN_AA(X5, X9) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, void, X2), X3) -> U16_AG(X1, X2, X3, in_orderA_in_aa(X2, X4)) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, void, X2), X3) -> IN_ORDERA_IN_AA(X2, X4) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, tree(X2, X3, X4), X5), X6) -> U17_AG(X1, X2, X3, X4, X5, X6, in_orderA_in_aa(X3, X7)) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, tree(X2, X3, X4), X5), X6) -> IN_ORDERA_IN_AA(X3, X7) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, tree(X2, X3, X4), X5), X6) -> U18_AG(X1, X2, X3, X4, X5, X6, in_ordercA_in_aa(X3, X7)) 10.92/3.67 U18_AG(X1, X2, X3, X4, X5, X6, in_ordercA_out_aa(X3, X7)) -> U19_AG(X1, X2, X3, X4, X5, X6, in_orderA_in_aa(X4, X8)) 10.92/3.67 U18_AG(X1, X2, X3, X4, X5, X6, in_ordercA_out_aa(X3, X7)) -> IN_ORDERA_IN_AA(X4, X8) 10.92/3.67 U18_AG(X1, X2, X3, X4, X5, X6, in_ordercA_out_aa(X3, X7)) -> U20_AG(X1, X2, X3, X4, X5, X6, X7, in_ordercA_in_aa(X4, X8)) 10.92/3.67 U20_AG(X1, X2, X3, X4, X5, X6, X7, in_ordercA_out_aa(X4, X8)) -> U21_AG(X1, X2, X3, X4, X5, X6, appB_in_gaga(X7, X2, X8, X9)) 10.92/3.67 U20_AG(X1, X2, X3, X4, X5, X6, X7, in_ordercA_out_aa(X4, X8)) -> APPB_IN_GAGA(X7, X2, X8, X9) 10.92/3.67 U20_AG(X1, X2, X3, X4, X5, X6, X7, in_ordercA_out_aa(X4, X8)) -> U22_AG(X1, X2, X3, X4, X5, X6, appcB_in_gaga(X7, X2, X8, X9)) 10.92/3.67 U22_AG(X1, X2, X3, X4, X5, X6, appcB_out_gaga(X7, X2, X8, X9)) -> U23_AG(X1, X2, X3, X4, X5, X6, in_orderA_in_aa(X5, X10)) 10.92/3.67 U22_AG(X1, X2, X3, X4, X5, X6, appcB_out_gaga(X7, X2, X8, X9)) -> IN_ORDERA_IN_AA(X5, X10) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, tree(X2, X3, X4), X5), .(X6, X7)) -> U24_AG(X1, X2, X3, X4, X5, X6, X7, in_ordercA_in_aa(X3, X8)) 10.92/3.67 U24_AG(X1, X2, X3, X4, X5, X6, X7, in_ordercA_out_aa(X3, X8)) -> U25_AG(X1, X2, X3, X4, X5, X6, X7, X8, in_ordercA_in_aa(X4, X9)) 10.92/3.67 U25_AG(X1, X2, X3, X4, X5, X6, X7, X8, in_ordercA_out_aa(X4, X9)) -> U26_AG(X1, X2, X3, X4, X5, X6, X7, appcB_in_gaga(X8, X2, X9, .(X6, X10))) 10.92/3.67 U26_AG(X1, X2, X3, X4, X5, X6, X7, appcB_out_gaga(X8, X2, X9, .(X6, X10))) -> U27_AG(X1, X2, X3, X4, X5, X6, X7, X10, in_ordercA_in_aa(X5, X11)) 10.92/3.67 U27_AG(X1, X2, X3, X4, X5, X6, X7, X10, in_ordercA_out_aa(X5, X11)) -> U28_AG(X1, X2, X3, X4, X5, X6, X7, appC_in_gagg(X10, X1, X11, X7)) 10.92/3.67 U27_AG(X1, X2, X3, X4, X5, X6, X7, X10, in_ordercA_out_aa(X5, X11)) -> APPC_IN_GAGG(X10, X1, X11, X7) 10.92/3.67 APPC_IN_GAGG(.(X1, X2), X3, X4, .(X1, X5)) -> U7_GAGG(X1, X2, X3, X4, X5, appC_in_gagg(X2, X3, X4, X5)) 10.92/3.67 APPC_IN_GAGG(.(X1, X2), X3, X4, .(X1, X5)) -> APPC_IN_GAGG(X2, X3, X4, X5) 10.92/3.67 10.92/3.67 The TRS R consists of the following rules: 10.92/3.67 10.92/3.67 in_ordercA_in_aa(void, []) -> in_ordercA_out_aa(void, []) 10.92/3.67 in_ordercA_in_aa(tree(X1, X2, X3), X4) -> U30_aa(X1, X2, X3, X4, in_ordercA_in_aa(X2, X5)) 10.92/3.67 U30_aa(X1, X2, X3, X4, in_ordercA_out_aa(X2, X5)) -> U31_aa(X1, X2, X3, X4, X5, in_ordercA_in_aa(X3, X6)) 10.92/3.67 U31_aa(X1, X2, X3, X4, X5, in_ordercA_out_aa(X3, X6)) -> U32_aa(X1, X2, X3, X4, appcB_in_gaga(X5, X1, X6, X4)) 10.92/3.67 appcB_in_gaga([], X1, X2, .(X1, X2)) -> appcB_out_gaga([], X1, X2, .(X1, X2)) 10.92/3.67 appcB_in_gaga(.(X1, X2), X3, X4, .(X1, X5)) -> U33_gaga(X1, X2, X3, X4, X5, appcB_in_gaga(X2, X3, X4, X5)) 10.92/3.67 U33_gaga(X1, X2, X3, X4, X5, appcB_out_gaga(X2, X3, X4, X5)) -> appcB_out_gaga(.(X1, X2), X3, X4, .(X1, X5)) 10.92/3.67 U32_aa(X1, X2, X3, X4, appcB_out_gaga(X5, X1, X6, X4)) -> in_ordercA_out_aa(tree(X1, X2, X3), X4) 10.92/3.67 10.92/3.67 The argument filtering Pi contains the following mapping: 10.92/3.67 [] = [] 10.92/3.67 10.92/3.67 in_orderA_in_aa(x1, x2) = in_orderA_in_aa 10.92/3.67 10.92/3.67 in_ordercA_in_aa(x1, x2) = in_ordercA_in_aa 10.92/3.67 10.92/3.67 in_ordercA_out_aa(x1, x2) = in_ordercA_out_aa(x1, x2) 10.92/3.67 10.92/3.67 U30_aa(x1, x2, x3, x4, x5) = U30_aa(x5) 10.92/3.67 10.92/3.67 U31_aa(x1, x2, x3, x4, x5, x6) = U31_aa(x2, x5, x6) 10.92/3.67 10.92/3.67 U32_aa(x1, x2, x3, x4, x5) = U32_aa(x2, x3, x5) 10.92/3.67 10.92/3.67 appcB_in_gaga(x1, x2, x3, x4) = appcB_in_gaga(x1, x3) 10.92/3.67 10.92/3.67 appcB_out_gaga(x1, x2, x3, x4) = appcB_out_gaga(x1, x3, x4) 10.92/3.67 10.92/3.67 .(x1, x2) = .(x2) 10.92/3.67 10.92/3.67 U33_gaga(x1, x2, x3, x4, x5, x6) = U33_gaga(x2, x4, x6) 10.92/3.67 10.92/3.67 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.67 10.92/3.67 appB_in_gaga(x1, x2, x3, x4) = appB_in_gaga(x1, x3) 10.92/3.67 10.92/3.67 appC_in_gagg(x1, x2, x3, x4) = appC_in_gagg(x1, x3, x4) 10.92/3.67 10.92/3.67 IN_ORDERD_IN_AG(x1, x2) = IN_ORDERD_IN_AG(x2) 10.92/3.67 10.92/3.67 U8_AG(x1, x2, x3) = U8_AG(x3) 10.92/3.67 10.92/3.67 IN_ORDERA_IN_AA(x1, x2) = IN_ORDERA_IN_AA 10.92/3.67 10.92/3.67 U1_AA(x1, x2, x3, x4, x5) = U1_AA(x5) 10.92/3.67 10.92/3.67 U2_AA(x1, x2, x3, x4, x5) = U2_AA(x5) 10.92/3.67 10.92/3.67 U3_AA(x1, x2, x3, x4, x5) = U3_AA(x5) 10.92/3.67 10.92/3.67 U4_AA(x1, x2, x3, x4, x5, x6) = U4_AA(x5, x6) 10.92/3.67 10.92/3.67 U5_AA(x1, x2, x3, x4, x5) = U5_AA(x5) 10.92/3.67 10.92/3.67 APPB_IN_GAGA(x1, x2, x3, x4) = APPB_IN_GAGA(x1, x3) 10.92/3.67 10.92/3.67 U6_GAGA(x1, x2, x3, x4, x5, x6) = U6_GAGA(x2, x4, x6) 10.92/3.67 10.92/3.67 U9_AG(x1, x2, x3, x4, x5, x6) = U9_AG(x6) 10.92/3.67 10.92/3.67 U10_AG(x1, x2, x3, x4, x5, x6) = U10_AG(x6) 10.92/3.67 10.92/3.67 U11_AG(x1, x2, x3, x4, x5, x6) = U11_AG(x6) 10.92/3.67 10.92/3.67 U12_AG(x1, x2, x3, x4, x5, x6, x7) = U12_AG(x6, x7) 10.92/3.67 10.92/3.67 U13_AG(x1, x2, x3, x4, x5, x6) = U13_AG(x6) 10.92/3.67 10.92/3.67 U14_AG(x1, x2, x3, x4, x5, x6) = U14_AG(x6) 10.92/3.67 10.92/3.67 U15_AG(x1, x2, x3, x4, x5, x6) = U15_AG(x6) 10.92/3.67 10.92/3.67 U16_AG(x1, x2, x3, x4) = U16_AG(x3, x4) 10.92/3.67 10.92/3.67 U17_AG(x1, x2, x3, x4, x5, x6, x7) = U17_AG(x6, x7) 10.92/3.67 10.92/3.67 U18_AG(x1, x2, x3, x4, x5, x6, x7) = U18_AG(x6, x7) 10.92/3.67 10.92/3.67 U19_AG(x1, x2, x3, x4, x5, x6, x7) = U19_AG(x6, x7) 10.92/3.67 10.92/3.67 U20_AG(x1, x2, x3, x4, x5, x6, x7, x8) = U20_AG(x6, x7, x8) 10.92/3.67 10.92/3.67 U21_AG(x1, x2, x3, x4, x5, x6, x7) = U21_AG(x6, x7) 10.92/3.67 10.92/3.67 U22_AG(x1, x2, x3, x4, x5, x6, x7) = U22_AG(x6, x7) 10.92/3.67 10.92/3.67 U23_AG(x1, x2, x3, x4, x5, x6, x7) = U23_AG(x6, x7) 10.92/3.67 10.92/3.67 U24_AG(x1, x2, x3, x4, x5, x6, x7, x8) = U24_AG(x7, x8) 10.92/3.67 10.92/3.67 U25_AG(x1, x2, x3, x4, x5, x6, x7, x8, x9) = U25_AG(x7, x8, x9) 10.92/3.67 10.92/3.67 U26_AG(x1, x2, x3, x4, x5, x6, x7, x8) = U26_AG(x7, x8) 10.92/3.67 10.92/3.67 U27_AG(x1, x2, x3, x4, x5, x6, x7, x8, x9) = U27_AG(x7, x8, x9) 10.92/3.67 10.92/3.67 U28_AG(x1, x2, x3, x4, x5, x6, x7, x8) = U28_AG(x7, x8) 10.92/3.67 10.92/3.67 APPC_IN_GAGG(x1, x2, x3, x4) = APPC_IN_GAGG(x1, x3, x4) 10.92/3.67 10.92/3.67 U7_GAGG(x1, x2, x3, x4, x5, x6) = U7_GAGG(x2, x4, x5, x6) 10.92/3.67 10.92/3.67 10.92/3.67 We have to consider all (P,R,Pi)-chains 10.92/3.67 10.92/3.67 10.92/3.67 Infinitary Constructor Rewriting Termination of PiDP implies Termination of TRIPLES 10.92/3.67 10.92/3.67 10.92/3.67 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (66) 10.92/3.67 Obligation: 10.92/3.67 Pi DP problem: 10.92/3.67 The TRS P consists of the following rules: 10.92/3.67 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, void, X2), []) -> U8_AG(X1, X2, in_orderA_in_aa(X2, X3)) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, void, X2), []) -> IN_ORDERA_IN_AA(X2, X3) 10.92/3.67 IN_ORDERA_IN_AA(tree(X1, X2, X3), X4) -> U1_AA(X1, X2, X3, X4, in_orderA_in_aa(X2, X5)) 10.92/3.67 IN_ORDERA_IN_AA(tree(X1, X2, X3), X4) -> IN_ORDERA_IN_AA(X2, X5) 10.92/3.67 IN_ORDERA_IN_AA(tree(X1, X2, X3), X4) -> U2_AA(X1, X2, X3, X4, in_ordercA_in_aa(X2, X5)) 10.92/3.67 U2_AA(X1, X2, X3, X4, in_ordercA_out_aa(X2, X5)) -> U3_AA(X1, X2, X3, X4, in_orderA_in_aa(X3, X6)) 10.92/3.67 U2_AA(X1, X2, X3, X4, in_ordercA_out_aa(X2, X5)) -> IN_ORDERA_IN_AA(X3, X6) 10.92/3.67 U2_AA(X1, X2, X3, X4, in_ordercA_out_aa(X2, X5)) -> U4_AA(X1, X2, X3, X4, X5, in_ordercA_in_aa(X3, X6)) 10.92/3.67 U4_AA(X1, X2, X3, X4, X5, in_ordercA_out_aa(X3, X6)) -> U5_AA(X1, X2, X3, X4, appB_in_gaga(X5, X1, X6, X4)) 10.92/3.67 U4_AA(X1, X2, X3, X4, X5, in_ordercA_out_aa(X3, X6)) -> APPB_IN_GAGA(X5, X1, X6, X4) 10.92/3.67 APPB_IN_GAGA(.(X1, X2), X3, X4, .(X1, X5)) -> U6_GAGA(X1, X2, X3, X4, X5, appB_in_gaga(X2, X3, X4, X5)) 10.92/3.67 APPB_IN_GAGA(.(X1, X2), X3, X4, .(X1, X5)) -> APPB_IN_GAGA(X2, X3, X4, X5) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, tree(X2, X3, X4), X5), []) -> U9_AG(X1, X2, X3, X4, X5, in_orderA_in_aa(X3, X6)) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, tree(X2, X3, X4), X5), []) -> IN_ORDERA_IN_AA(X3, X6) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, tree(X2, X3, X4), X5), []) -> U10_AG(X1, X2, X3, X4, X5, in_ordercA_in_aa(X3, X6)) 10.92/3.67 U10_AG(X1, X2, X3, X4, X5, in_ordercA_out_aa(X3, X6)) -> U11_AG(X1, X2, X3, X4, X5, in_orderA_in_aa(X4, X7)) 10.92/3.67 U10_AG(X1, X2, X3, X4, X5, in_ordercA_out_aa(X3, X6)) -> IN_ORDERA_IN_AA(X4, X7) 10.92/3.67 U10_AG(X1, X2, X3, X4, X5, in_ordercA_out_aa(X3, X6)) -> U12_AG(X1, X2, X3, X4, X5, X6, in_ordercA_in_aa(X4, X7)) 10.92/3.67 U12_AG(X1, X2, X3, X4, X5, X6, in_ordercA_out_aa(X4, X7)) -> U13_AG(X1, X2, X3, X4, X5, appB_in_gaga(X6, X2, X7, X8)) 10.92/3.67 U12_AG(X1, X2, X3, X4, X5, X6, in_ordercA_out_aa(X4, X7)) -> APPB_IN_GAGA(X6, X2, X7, X8) 10.92/3.67 U12_AG(X1, X2, X3, X4, X5, X6, in_ordercA_out_aa(X4, X7)) -> U14_AG(X1, X2, X3, X4, X5, appcB_in_gaga(X6, X2, X7, X8)) 10.92/3.67 U14_AG(X1, X2, X3, X4, X5, appcB_out_gaga(X6, X2, X7, X8)) -> U15_AG(X1, X2, X3, X4, X5, in_orderA_in_aa(X5, X9)) 10.92/3.67 U14_AG(X1, X2, X3, X4, X5, appcB_out_gaga(X6, X2, X7, X8)) -> IN_ORDERA_IN_AA(X5, X9) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, void, X2), X3) -> U16_AG(X1, X2, X3, in_orderA_in_aa(X2, X4)) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, void, X2), X3) -> IN_ORDERA_IN_AA(X2, X4) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, tree(X2, X3, X4), X5), X6) -> U17_AG(X1, X2, X3, X4, X5, X6, in_orderA_in_aa(X3, X7)) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, tree(X2, X3, X4), X5), X6) -> IN_ORDERA_IN_AA(X3, X7) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, tree(X2, X3, X4), X5), X6) -> U18_AG(X1, X2, X3, X4, X5, X6, in_ordercA_in_aa(X3, X7)) 10.92/3.67 U18_AG(X1, X2, X3, X4, X5, X6, in_ordercA_out_aa(X3, X7)) -> U19_AG(X1, X2, X3, X4, X5, X6, in_orderA_in_aa(X4, X8)) 10.92/3.67 U18_AG(X1, X2, X3, X4, X5, X6, in_ordercA_out_aa(X3, X7)) -> IN_ORDERA_IN_AA(X4, X8) 10.92/3.67 U18_AG(X1, X2, X3, X4, X5, X6, in_ordercA_out_aa(X3, X7)) -> U20_AG(X1, X2, X3, X4, X5, X6, X7, in_ordercA_in_aa(X4, X8)) 10.92/3.67 U20_AG(X1, X2, X3, X4, X5, X6, X7, in_ordercA_out_aa(X4, X8)) -> U21_AG(X1, X2, X3, X4, X5, X6, appB_in_gaga(X7, X2, X8, X9)) 10.92/3.67 U20_AG(X1, X2, X3, X4, X5, X6, X7, in_ordercA_out_aa(X4, X8)) -> APPB_IN_GAGA(X7, X2, X8, X9) 10.92/3.67 U20_AG(X1, X2, X3, X4, X5, X6, X7, in_ordercA_out_aa(X4, X8)) -> U22_AG(X1, X2, X3, X4, X5, X6, appcB_in_gaga(X7, X2, X8, X9)) 10.92/3.67 U22_AG(X1, X2, X3, X4, X5, X6, appcB_out_gaga(X7, X2, X8, X9)) -> U23_AG(X1, X2, X3, X4, X5, X6, in_orderA_in_aa(X5, X10)) 10.92/3.67 U22_AG(X1, X2, X3, X4, X5, X6, appcB_out_gaga(X7, X2, X8, X9)) -> IN_ORDERA_IN_AA(X5, X10) 10.92/3.67 IN_ORDERD_IN_AG(tree(X1, tree(X2, X3, X4), X5), .(X6, X7)) -> U24_AG(X1, X2, X3, X4, X5, X6, X7, in_ordercA_in_aa(X3, X8)) 10.92/3.67 U24_AG(X1, X2, X3, X4, X5, X6, X7, in_ordercA_out_aa(X3, X8)) -> U25_AG(X1, X2, X3, X4, X5, X6, X7, X8, in_ordercA_in_aa(X4, X9)) 10.92/3.67 U25_AG(X1, X2, X3, X4, X5, X6, X7, X8, in_ordercA_out_aa(X4, X9)) -> U26_AG(X1, X2, X3, X4, X5, X6, X7, appcB_in_gaga(X8, X2, X9, .(X6, X10))) 10.92/3.67 U26_AG(X1, X2, X3, X4, X5, X6, X7, appcB_out_gaga(X8, X2, X9, .(X6, X10))) -> U27_AG(X1, X2, X3, X4, X5, X6, X7, X10, in_ordercA_in_aa(X5, X11)) 10.92/3.67 U27_AG(X1, X2, X3, X4, X5, X6, X7, X10, in_ordercA_out_aa(X5, X11)) -> U28_AG(X1, X2, X3, X4, X5, X6, X7, appC_in_gagg(X10, X1, X11, X7)) 10.92/3.67 U27_AG(X1, X2, X3, X4, X5, X6, X7, X10, in_ordercA_out_aa(X5, X11)) -> APPC_IN_GAGG(X10, X1, X11, X7) 10.92/3.67 APPC_IN_GAGG(.(X1, X2), X3, X4, .(X1, X5)) -> U7_GAGG(X1, X2, X3, X4, X5, appC_in_gagg(X2, X3, X4, X5)) 10.92/3.67 APPC_IN_GAGG(.(X1, X2), X3, X4, .(X1, X5)) -> APPC_IN_GAGG(X2, X3, X4, X5) 10.92/3.67 10.92/3.67 The TRS R consists of the following rules: 10.92/3.67 10.92/3.67 in_ordercA_in_aa(void, []) -> in_ordercA_out_aa(void, []) 10.92/3.67 in_ordercA_in_aa(tree(X1, X2, X3), X4) -> U30_aa(X1, X2, X3, X4, in_ordercA_in_aa(X2, X5)) 10.92/3.67 U30_aa(X1, X2, X3, X4, in_ordercA_out_aa(X2, X5)) -> U31_aa(X1, X2, X3, X4, X5, in_ordercA_in_aa(X3, X6)) 10.92/3.67 U31_aa(X1, X2, X3, X4, X5, in_ordercA_out_aa(X3, X6)) -> U32_aa(X1, X2, X3, X4, appcB_in_gaga(X5, X1, X6, X4)) 10.92/3.67 appcB_in_gaga([], X1, X2, .(X1, X2)) -> appcB_out_gaga([], X1, X2, .(X1, X2)) 10.92/3.67 appcB_in_gaga(.(X1, X2), X3, X4, .(X1, X5)) -> U33_gaga(X1, X2, X3, X4, X5, appcB_in_gaga(X2, X3, X4, X5)) 10.92/3.67 U33_gaga(X1, X2, X3, X4, X5, appcB_out_gaga(X2, X3, X4, X5)) -> appcB_out_gaga(.(X1, X2), X3, X4, .(X1, X5)) 10.92/3.67 U32_aa(X1, X2, X3, X4, appcB_out_gaga(X5, X1, X6, X4)) -> in_ordercA_out_aa(tree(X1, X2, X3), X4) 10.92/3.67 10.92/3.67 The argument filtering Pi contains the following mapping: 10.92/3.67 [] = [] 10.92/3.67 10.92/3.67 in_orderA_in_aa(x1, x2) = in_orderA_in_aa 10.92/3.67 10.92/3.67 in_ordercA_in_aa(x1, x2) = in_ordercA_in_aa 10.92/3.67 10.92/3.67 in_ordercA_out_aa(x1, x2) = in_ordercA_out_aa(x1, x2) 10.92/3.67 10.92/3.67 U30_aa(x1, x2, x3, x4, x5) = U30_aa(x5) 10.92/3.67 10.92/3.67 U31_aa(x1, x2, x3, x4, x5, x6) = U31_aa(x2, x5, x6) 10.92/3.67 10.92/3.67 U32_aa(x1, x2, x3, x4, x5) = U32_aa(x2, x3, x5) 10.92/3.67 10.92/3.67 appcB_in_gaga(x1, x2, x3, x4) = appcB_in_gaga(x1, x3) 10.92/3.67 10.92/3.67 appcB_out_gaga(x1, x2, x3, x4) = appcB_out_gaga(x1, x3, x4) 10.92/3.67 10.92/3.67 .(x1, x2) = .(x2) 10.92/3.67 10.92/3.67 U33_gaga(x1, x2, x3, x4, x5, x6) = U33_gaga(x2, x4, x6) 10.92/3.67 10.92/3.67 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.67 10.92/3.67 appB_in_gaga(x1, x2, x3, x4) = appB_in_gaga(x1, x3) 10.92/3.67 10.92/3.67 appC_in_gagg(x1, x2, x3, x4) = appC_in_gagg(x1, x3, x4) 10.92/3.67 10.92/3.67 IN_ORDERD_IN_AG(x1, x2) = IN_ORDERD_IN_AG(x2) 10.92/3.67 10.92/3.67 U8_AG(x1, x2, x3) = U8_AG(x3) 10.92/3.67 10.92/3.67 IN_ORDERA_IN_AA(x1, x2) = IN_ORDERA_IN_AA 10.92/3.67 10.92/3.67 U1_AA(x1, x2, x3, x4, x5) = U1_AA(x5) 10.92/3.67 10.92/3.67 U2_AA(x1, x2, x3, x4, x5) = U2_AA(x5) 10.92/3.67 10.92/3.67 U3_AA(x1, x2, x3, x4, x5) = U3_AA(x5) 10.92/3.67 10.92/3.67 U4_AA(x1, x2, x3, x4, x5, x6) = U4_AA(x5, x6) 10.92/3.67 10.92/3.67 U5_AA(x1, x2, x3, x4, x5) = U5_AA(x5) 10.92/3.67 10.92/3.67 APPB_IN_GAGA(x1, x2, x3, x4) = APPB_IN_GAGA(x1, x3) 10.92/3.67 10.92/3.67 U6_GAGA(x1, x2, x3, x4, x5, x6) = U6_GAGA(x2, x4, x6) 10.92/3.67 10.92/3.67 U9_AG(x1, x2, x3, x4, x5, x6) = U9_AG(x6) 10.92/3.67 10.92/3.67 U10_AG(x1, x2, x3, x4, x5, x6) = U10_AG(x6) 10.92/3.67 10.92/3.67 U11_AG(x1, x2, x3, x4, x5, x6) = U11_AG(x6) 10.92/3.67 10.92/3.67 U12_AG(x1, x2, x3, x4, x5, x6, x7) = U12_AG(x6, x7) 10.92/3.67 10.92/3.67 U13_AG(x1, x2, x3, x4, x5, x6) = U13_AG(x6) 10.92/3.67 10.92/3.67 U14_AG(x1, x2, x3, x4, x5, x6) = U14_AG(x6) 10.92/3.67 10.92/3.67 U15_AG(x1, x2, x3, x4, x5, x6) = U15_AG(x6) 10.92/3.67 10.92/3.67 U16_AG(x1, x2, x3, x4) = U16_AG(x3, x4) 10.92/3.67 10.92/3.67 U17_AG(x1, x2, x3, x4, x5, x6, x7) = U17_AG(x6, x7) 10.92/3.67 10.92/3.67 U18_AG(x1, x2, x3, x4, x5, x6, x7) = U18_AG(x6, x7) 10.92/3.67 10.92/3.67 U19_AG(x1, x2, x3, x4, x5, x6, x7) = U19_AG(x6, x7) 10.92/3.67 10.92/3.67 U20_AG(x1, x2, x3, x4, x5, x6, x7, x8) = U20_AG(x6, x7, x8) 10.92/3.67 10.92/3.67 U21_AG(x1, x2, x3, x4, x5, x6, x7) = U21_AG(x6, x7) 10.92/3.67 10.92/3.67 U22_AG(x1, x2, x3, x4, x5, x6, x7) = U22_AG(x6, x7) 10.92/3.67 10.92/3.67 U23_AG(x1, x2, x3, x4, x5, x6, x7) = U23_AG(x6, x7) 10.92/3.67 10.92/3.67 U24_AG(x1, x2, x3, x4, x5, x6, x7, x8) = U24_AG(x7, x8) 10.92/3.67 10.92/3.67 U25_AG(x1, x2, x3, x4, x5, x6, x7, x8, x9) = U25_AG(x7, x8, x9) 10.92/3.67 10.92/3.67 U26_AG(x1, x2, x3, x4, x5, x6, x7, x8) = U26_AG(x7, x8) 10.92/3.67 10.92/3.67 U27_AG(x1, x2, x3, x4, x5, x6, x7, x8, x9) = U27_AG(x7, x8, x9) 10.92/3.67 10.92/3.67 U28_AG(x1, x2, x3, x4, x5, x6, x7, x8) = U28_AG(x7, x8) 10.92/3.67 10.92/3.67 APPC_IN_GAGG(x1, x2, x3, x4) = APPC_IN_GAGG(x1, x3, x4) 10.92/3.67 10.92/3.67 U7_GAGG(x1, x2, x3, x4, x5, x6) = U7_GAGG(x2, x4, x5, x6) 10.92/3.67 10.92/3.67 10.92/3.67 We have to consider all (P,R,Pi)-chains 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (67) DependencyGraphProof (EQUIVALENT) 10.92/3.67 The approximation of the Dependency Graph [LOPSTR] contains 3 SCCs with 39 less nodes. 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (68) 10.92/3.67 Complex Obligation (AND) 10.92/3.67 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (69) 10.92/3.67 Obligation: 10.92/3.67 Pi DP problem: 10.92/3.67 The TRS P consists of the following rules: 10.92/3.67 10.92/3.67 APPC_IN_GAGG(.(X1, X2), X3, X4, .(X1, X5)) -> APPC_IN_GAGG(X2, X3, X4, X5) 10.92/3.67 10.92/3.67 The TRS R consists of the following rules: 10.92/3.67 10.92/3.67 in_ordercA_in_aa(void, []) -> in_ordercA_out_aa(void, []) 10.92/3.67 in_ordercA_in_aa(tree(X1, X2, X3), X4) -> U30_aa(X1, X2, X3, X4, in_ordercA_in_aa(X2, X5)) 10.92/3.67 U30_aa(X1, X2, X3, X4, in_ordercA_out_aa(X2, X5)) -> U31_aa(X1, X2, X3, X4, X5, in_ordercA_in_aa(X3, X6)) 10.92/3.67 U31_aa(X1, X2, X3, X4, X5, in_ordercA_out_aa(X3, X6)) -> U32_aa(X1, X2, X3, X4, appcB_in_gaga(X5, X1, X6, X4)) 10.92/3.67 appcB_in_gaga([], X1, X2, .(X1, X2)) -> appcB_out_gaga([], X1, X2, .(X1, X2)) 10.92/3.67 appcB_in_gaga(.(X1, X2), X3, X4, .(X1, X5)) -> U33_gaga(X1, X2, X3, X4, X5, appcB_in_gaga(X2, X3, X4, X5)) 10.92/3.67 U33_gaga(X1, X2, X3, X4, X5, appcB_out_gaga(X2, X3, X4, X5)) -> appcB_out_gaga(.(X1, X2), X3, X4, .(X1, X5)) 10.92/3.67 U32_aa(X1, X2, X3, X4, appcB_out_gaga(X5, X1, X6, X4)) -> in_ordercA_out_aa(tree(X1, X2, X3), X4) 10.92/3.67 10.92/3.67 The argument filtering Pi contains the following mapping: 10.92/3.67 [] = [] 10.92/3.67 10.92/3.67 in_ordercA_in_aa(x1, x2) = in_ordercA_in_aa 10.92/3.67 10.92/3.67 in_ordercA_out_aa(x1, x2) = in_ordercA_out_aa(x1, x2) 10.92/3.67 10.92/3.67 U30_aa(x1, x2, x3, x4, x5) = U30_aa(x5) 10.92/3.67 10.92/3.67 U31_aa(x1, x2, x3, x4, x5, x6) = U31_aa(x2, x5, x6) 10.92/3.67 10.92/3.67 U32_aa(x1, x2, x3, x4, x5) = U32_aa(x2, x3, x5) 10.92/3.67 10.92/3.67 appcB_in_gaga(x1, x2, x3, x4) = appcB_in_gaga(x1, x3) 10.92/3.67 10.92/3.67 appcB_out_gaga(x1, x2, x3, x4) = appcB_out_gaga(x1, x3, x4) 10.92/3.67 10.92/3.67 .(x1, x2) = .(x2) 10.92/3.67 10.92/3.67 U33_gaga(x1, x2, x3, x4, x5, x6) = U33_gaga(x2, x4, x6) 10.92/3.67 10.92/3.67 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.67 10.92/3.67 APPC_IN_GAGG(x1, x2, x3, x4) = APPC_IN_GAGG(x1, x3, x4) 10.92/3.67 10.92/3.67 10.92/3.67 We have to consider all (P,R,Pi)-chains 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (70) UsableRulesProof (EQUIVALENT) 10.92/3.67 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (71) 10.92/3.67 Obligation: 10.92/3.67 Pi DP problem: 10.92/3.67 The TRS P consists of the following rules: 10.92/3.67 10.92/3.67 APPC_IN_GAGG(.(X1, X2), X3, X4, .(X1, X5)) -> APPC_IN_GAGG(X2, X3, X4, X5) 10.92/3.67 10.92/3.67 R is empty. 10.92/3.67 The argument filtering Pi contains the following mapping: 10.92/3.67 .(x1, x2) = .(x2) 10.92/3.67 10.92/3.67 APPC_IN_GAGG(x1, x2, x3, x4) = APPC_IN_GAGG(x1, x3, x4) 10.92/3.67 10.92/3.67 10.92/3.67 We have to consider all (P,R,Pi)-chains 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (72) PiDPToQDPProof (SOUND) 10.92/3.67 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (73) 10.92/3.67 Obligation: 10.92/3.67 Q DP problem: 10.92/3.67 The TRS P consists of the following rules: 10.92/3.67 10.92/3.67 APPC_IN_GAGG(.(X2), X4, .(X5)) -> APPC_IN_GAGG(X2, X4, X5) 10.92/3.67 10.92/3.67 R is empty. 10.92/3.67 Q is empty. 10.92/3.67 We have to consider all (P,Q,R)-chains. 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (74) QDPSizeChangeProof (EQUIVALENT) 10.92/3.67 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. 10.92/3.67 10.92/3.67 From the DPs we obtained the following set of size-change graphs: 10.92/3.67 *APPC_IN_GAGG(.(X2), X4, .(X5)) -> APPC_IN_GAGG(X2, X4, X5) 10.92/3.67 The graph contains the following edges 1 > 1, 2 >= 2, 3 > 3 10.92/3.67 10.92/3.67 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (75) 10.92/3.67 YES 10.92/3.67 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (76) 10.92/3.67 Obligation: 10.92/3.67 Pi DP problem: 10.92/3.67 The TRS P consists of the following rules: 10.92/3.67 10.92/3.67 APPB_IN_GAGA(.(X1, X2), X3, X4, .(X1, X5)) -> APPB_IN_GAGA(X2, X3, X4, X5) 10.92/3.67 10.92/3.67 The TRS R consists of the following rules: 10.92/3.67 10.92/3.67 in_ordercA_in_aa(void, []) -> in_ordercA_out_aa(void, []) 10.92/3.67 in_ordercA_in_aa(tree(X1, X2, X3), X4) -> U30_aa(X1, X2, X3, X4, in_ordercA_in_aa(X2, X5)) 10.92/3.67 U30_aa(X1, X2, X3, X4, in_ordercA_out_aa(X2, X5)) -> U31_aa(X1, X2, X3, X4, X5, in_ordercA_in_aa(X3, X6)) 10.92/3.67 U31_aa(X1, X2, X3, X4, X5, in_ordercA_out_aa(X3, X6)) -> U32_aa(X1, X2, X3, X4, appcB_in_gaga(X5, X1, X6, X4)) 10.92/3.67 appcB_in_gaga([], X1, X2, .(X1, X2)) -> appcB_out_gaga([], X1, X2, .(X1, X2)) 10.92/3.67 appcB_in_gaga(.(X1, X2), X3, X4, .(X1, X5)) -> U33_gaga(X1, X2, X3, X4, X5, appcB_in_gaga(X2, X3, X4, X5)) 10.92/3.67 U33_gaga(X1, X2, X3, X4, X5, appcB_out_gaga(X2, X3, X4, X5)) -> appcB_out_gaga(.(X1, X2), X3, X4, .(X1, X5)) 10.92/3.67 U32_aa(X1, X2, X3, X4, appcB_out_gaga(X5, X1, X6, X4)) -> in_ordercA_out_aa(tree(X1, X2, X3), X4) 10.92/3.67 10.92/3.67 The argument filtering Pi contains the following mapping: 10.92/3.67 [] = [] 10.92/3.67 10.92/3.67 in_ordercA_in_aa(x1, x2) = in_ordercA_in_aa 10.92/3.67 10.92/3.67 in_ordercA_out_aa(x1, x2) = in_ordercA_out_aa(x1, x2) 10.92/3.67 10.92/3.67 U30_aa(x1, x2, x3, x4, x5) = U30_aa(x5) 10.92/3.67 10.92/3.67 U31_aa(x1, x2, x3, x4, x5, x6) = U31_aa(x2, x5, x6) 10.92/3.67 10.92/3.67 U32_aa(x1, x2, x3, x4, x5) = U32_aa(x2, x3, x5) 10.92/3.67 10.92/3.67 appcB_in_gaga(x1, x2, x3, x4) = appcB_in_gaga(x1, x3) 10.92/3.67 10.92/3.67 appcB_out_gaga(x1, x2, x3, x4) = appcB_out_gaga(x1, x3, x4) 10.92/3.67 10.92/3.67 .(x1, x2) = .(x2) 10.92/3.67 10.92/3.67 U33_gaga(x1, x2, x3, x4, x5, x6) = U33_gaga(x2, x4, x6) 10.92/3.67 10.92/3.67 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.67 10.92/3.67 APPB_IN_GAGA(x1, x2, x3, x4) = APPB_IN_GAGA(x1, x3) 10.92/3.67 10.92/3.67 10.92/3.67 We have to consider all (P,R,Pi)-chains 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (77) UsableRulesProof (EQUIVALENT) 10.92/3.67 For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R. 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (78) 10.92/3.67 Obligation: 10.92/3.67 Pi DP problem: 10.92/3.67 The TRS P consists of the following rules: 10.92/3.67 10.92/3.67 APPB_IN_GAGA(.(X1, X2), X3, X4, .(X1, X5)) -> APPB_IN_GAGA(X2, X3, X4, X5) 10.92/3.67 10.92/3.67 R is empty. 10.92/3.67 The argument filtering Pi contains the following mapping: 10.92/3.67 .(x1, x2) = .(x2) 10.92/3.67 10.92/3.67 APPB_IN_GAGA(x1, x2, x3, x4) = APPB_IN_GAGA(x1, x3) 10.92/3.67 10.92/3.67 10.92/3.67 We have to consider all (P,R,Pi)-chains 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (79) PiDPToQDPProof (SOUND) 10.92/3.67 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (80) 10.92/3.67 Obligation: 10.92/3.67 Q DP problem: 10.92/3.67 The TRS P consists of the following rules: 10.92/3.67 10.92/3.67 APPB_IN_GAGA(.(X2), X4) -> APPB_IN_GAGA(X2, X4) 10.92/3.67 10.92/3.67 R is empty. 10.92/3.67 Q is empty. 10.92/3.67 We have to consider all (P,Q,R)-chains. 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (81) QDPSizeChangeProof (EQUIVALENT) 10.92/3.67 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. 10.92/3.67 10.92/3.67 From the DPs we obtained the following set of size-change graphs: 10.92/3.67 *APPB_IN_GAGA(.(X2), X4) -> APPB_IN_GAGA(X2, X4) 10.92/3.67 The graph contains the following edges 1 > 1, 2 >= 2 10.92/3.67 10.92/3.67 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (82) 10.92/3.67 YES 10.92/3.67 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (83) 10.92/3.67 Obligation: 10.92/3.67 Pi DP problem: 10.92/3.67 The TRS P consists of the following rules: 10.92/3.67 10.92/3.67 IN_ORDERA_IN_AA(tree(X1, X2, X3), X4) -> U2_AA(X1, X2, X3, X4, in_ordercA_in_aa(X2, X5)) 10.92/3.67 U2_AA(X1, X2, X3, X4, in_ordercA_out_aa(X2, X5)) -> IN_ORDERA_IN_AA(X3, X6) 10.92/3.67 IN_ORDERA_IN_AA(tree(X1, X2, X3), X4) -> IN_ORDERA_IN_AA(X2, X5) 10.92/3.67 10.92/3.67 The TRS R consists of the following rules: 10.92/3.67 10.92/3.67 in_ordercA_in_aa(void, []) -> in_ordercA_out_aa(void, []) 10.92/3.67 in_ordercA_in_aa(tree(X1, X2, X3), X4) -> U30_aa(X1, X2, X3, X4, in_ordercA_in_aa(X2, X5)) 10.92/3.67 U30_aa(X1, X2, X3, X4, in_ordercA_out_aa(X2, X5)) -> U31_aa(X1, X2, X3, X4, X5, in_ordercA_in_aa(X3, X6)) 10.92/3.67 U31_aa(X1, X2, X3, X4, X5, in_ordercA_out_aa(X3, X6)) -> U32_aa(X1, X2, X3, X4, appcB_in_gaga(X5, X1, X6, X4)) 10.92/3.67 appcB_in_gaga([], X1, X2, .(X1, X2)) -> appcB_out_gaga([], X1, X2, .(X1, X2)) 10.92/3.67 appcB_in_gaga(.(X1, X2), X3, X4, .(X1, X5)) -> U33_gaga(X1, X2, X3, X4, X5, appcB_in_gaga(X2, X3, X4, X5)) 10.92/3.67 U33_gaga(X1, X2, X3, X4, X5, appcB_out_gaga(X2, X3, X4, X5)) -> appcB_out_gaga(.(X1, X2), X3, X4, .(X1, X5)) 10.92/3.67 U32_aa(X1, X2, X3, X4, appcB_out_gaga(X5, X1, X6, X4)) -> in_ordercA_out_aa(tree(X1, X2, X3), X4) 10.92/3.67 10.92/3.67 The argument filtering Pi contains the following mapping: 10.92/3.67 [] = [] 10.92/3.67 10.92/3.67 in_ordercA_in_aa(x1, x2) = in_ordercA_in_aa 10.92/3.67 10.92/3.67 in_ordercA_out_aa(x1, x2) = in_ordercA_out_aa(x1, x2) 10.92/3.67 10.92/3.67 U30_aa(x1, x2, x3, x4, x5) = U30_aa(x5) 10.92/3.67 10.92/3.67 U31_aa(x1, x2, x3, x4, x5, x6) = U31_aa(x2, x5, x6) 10.92/3.67 10.92/3.67 U32_aa(x1, x2, x3, x4, x5) = U32_aa(x2, x3, x5) 10.92/3.67 10.92/3.67 appcB_in_gaga(x1, x2, x3, x4) = appcB_in_gaga(x1, x3) 10.92/3.67 10.92/3.67 appcB_out_gaga(x1, x2, x3, x4) = appcB_out_gaga(x1, x3, x4) 10.92/3.67 10.92/3.67 .(x1, x2) = .(x2) 10.92/3.67 10.92/3.67 U33_gaga(x1, x2, x3, x4, x5, x6) = U33_gaga(x2, x4, x6) 10.92/3.67 10.92/3.67 tree(x1, x2, x3) = tree(x2, x3) 10.92/3.67 10.92/3.67 IN_ORDERA_IN_AA(x1, x2) = IN_ORDERA_IN_AA 10.92/3.67 10.92/3.67 U2_AA(x1, x2, x3, x4, x5) = U2_AA(x5) 10.92/3.67 10.92/3.67 10.92/3.67 We have to consider all (P,R,Pi)-chains 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (84) PiDPToQDPProof (SOUND) 10.92/3.67 Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi. 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (85) 10.92/3.67 Obligation: 10.92/3.67 Q DP problem: 10.92/3.67 The TRS P consists of the following rules: 10.92/3.67 10.92/3.67 IN_ORDERA_IN_AA -> U2_AA(in_ordercA_in_aa) 10.92/3.67 U2_AA(in_ordercA_out_aa(X2, X5)) -> IN_ORDERA_IN_AA 10.92/3.67 IN_ORDERA_IN_AA -> IN_ORDERA_IN_AA 10.92/3.67 10.92/3.67 The TRS R consists of the following rules: 10.92/3.67 10.92/3.67 in_ordercA_in_aa -> in_ordercA_out_aa(void, []) 10.92/3.67 in_ordercA_in_aa -> U30_aa(in_ordercA_in_aa) 10.92/3.67 U30_aa(in_ordercA_out_aa(X2, X5)) -> U31_aa(X2, X5, in_ordercA_in_aa) 10.92/3.67 U31_aa(X2, X5, in_ordercA_out_aa(X3, X6)) -> U32_aa(X2, X3, appcB_in_gaga(X5, X6)) 10.92/3.67 appcB_in_gaga([], X2) -> appcB_out_gaga([], X2, .(X2)) 10.92/3.67 appcB_in_gaga(.(X2), X4) -> U33_gaga(X2, X4, appcB_in_gaga(X2, X4)) 10.92/3.67 U33_gaga(X2, X4, appcB_out_gaga(X2, X4, X5)) -> appcB_out_gaga(.(X2), X4, .(X5)) 10.92/3.67 U32_aa(X2, X3, appcB_out_gaga(X5, X6, X4)) -> in_ordercA_out_aa(tree(X2, X3), X4) 10.92/3.67 10.92/3.67 The set Q consists of the following terms: 10.92/3.67 10.92/3.67 in_ordercA_in_aa 10.92/3.67 U30_aa(x0) 10.92/3.67 U31_aa(x0, x1, x2) 10.92/3.67 appcB_in_gaga(x0, x1) 10.92/3.67 U33_gaga(x0, x1, x2) 10.92/3.67 U32_aa(x0, x1, x2) 10.92/3.67 10.92/3.67 We have to consider all (P,Q,R)-chains. 10.92/3.67 ---------------------------------------- 10.92/3.67 10.92/3.67 (86) PrologToIRSwTTransformerProof (SOUND) 10.92/3.67 Transformed Prolog program to IRSwT according to method in Master Thesis of A. Weinert 10.92/3.67 10.92/3.67 { 10.92/3.67 "root": 4, 10.92/3.67 "program": { 10.92/3.67 "directives": [], 10.92/3.67 "clauses": [ 10.92/3.67 [ 10.92/3.67 "(in_order (void) ([]))", 10.92/3.67 null 10.92/3.67 ], 10.92/3.67 [ 10.92/3.67 "(in_order (tree X Left Right) Xs)", 10.92/3.67 "(',' (in_order Left Ls) (',' (in_order Right Rs) (app Ls (. X Rs) Xs)))" 10.92/3.67 ], 10.92/3.67 [ 10.92/3.67 "(app ([]) X X)", 10.92/3.67 null 10.92/3.67 ], 10.92/3.67 [ 10.92/3.67 "(app (. X Xs) Ys (. X Zs))", 10.92/3.67 "(app Xs Ys Zs)" 10.92/3.67 ] 10.92/3.67 ] 10.92/3.67 }, 10.92/3.67 "graph": { 10.92/3.67 "nodes": { 10.92/3.67 "type": "Nodes", 10.92/3.67 "370": { 10.92/3.68 "goal": [], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": [], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "371": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": -1, 10.92/3.68 "scope": -1, 10.92/3.68 "term": "(app T65 (. T66 T67) X57)" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": ["X57"], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "372": { 10.92/3.68 "goal": [], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": [], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "298": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": -1, 10.92/3.68 "scope": -1, 10.92/3.68 "term": "(',' (in_order T30 X33) (',' (in_order T31 X34) (app X33 (. T32 X34) X35)))" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": [ 10.92/3.68 "X35", 10.92/3.68 "X33", 10.92/3.68 "X34" 10.92/3.68 ], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "375": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": -1, 10.92/3.68 "scope": -1, 10.92/3.68 "term": "(in_order T19 X16)" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": ["X16"], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "376": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": -1, 10.92/3.68 "scope": -1, 10.92/3.68 "term": "(app T73 (. T74 T72) T14)" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": ["T14"], 10.92/3.68 "free": [], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "113": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": -1, 10.92/3.68 "scope": -1, 10.92/3.68 "term": "(in_order T15 X15)" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": ["X15"], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "114": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": -1, 10.92/3.68 "scope": -1, 10.92/3.68 "term": "(',' (in_order T19 X16) (app T18 (. T20 X16) T14))" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": ["T14"], 10.92/3.68 "free": ["X16"], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "312": { 10.92/3.68 "goal": [ 10.92/3.68 { 10.92/3.68 "clause": 2, 10.92/3.68 "scope": 3, 10.92/3.68 "term": "(app T37 (. T38 T36) X35)" 10.92/3.68 }, 10.92/3.68 { 10.92/3.68 "clause": 3, 10.92/3.68 "scope": 3, 10.92/3.68 "term": "(app T37 (. T38 T36) X35)" 10.92/3.68 } 10.92/3.68 ], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": ["X35"], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "115": { 10.92/3.68 "goal": [ 10.92/3.68 { 10.92/3.68 "clause": 0, 10.92/3.68 "scope": 2, 10.92/3.68 "term": "(in_order T15 X15)" 10.92/3.68 }, 10.92/3.68 { 10.92/3.68 "clause": 1, 10.92/3.68 "scope": 2, 10.92/3.68 "term": "(in_order T15 X15)" 10.92/3.68 } 10.92/3.68 ], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": ["X15"], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "313": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": 2, 10.92/3.68 "scope": 3, 10.92/3.68 "term": "(app T37 (. T38 T36) X35)" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": ["X35"], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "379": { 10.92/3.68 "goal": [ 10.92/3.68 { 10.92/3.68 "clause": 2, 10.92/3.68 "scope": 4, 10.92/3.68 "term": "(app T73 (. T74 T72) T14)" 10.92/3.68 }, 10.92/3.68 { 10.92/3.68 "clause": 3, 10.92/3.68 "scope": 4, 10.92/3.68 "term": "(app T73 (. T74 T72) T14)" 10.92/3.68 } 10.92/3.68 ], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": ["T14"], 10.92/3.68 "free": [], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "116": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": 0, 10.92/3.68 "scope": 2, 10.92/3.68 "term": "(in_order T15 X15)" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": ["X15"], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "314": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": 3, 10.92/3.68 "scope": 3, 10.92/3.68 "term": "(app T37 (. T38 T36) X35)" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": ["X35"], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "118": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": 1, 10.92/3.68 "scope": 2, 10.92/3.68 "term": "(in_order T15 X15)" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": ["X15"], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "380": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": 2, 10.92/3.68 "scope": 4, 10.92/3.68 "term": "(app T73 (. T74 T72) T14)" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": ["T14"], 10.92/3.68 "free": [], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "381": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": 3, 10.92/3.68 "scope": 4, 10.92/3.68 "term": "(app T73 (. T74 T72) T14)" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": ["T14"], 10.92/3.68 "free": [], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "382": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": -1, 10.92/3.68 "scope": -1, 10.92/3.68 "term": "(true)" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": [], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "383": { 10.92/3.68 "goal": [], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": [], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "120": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": -1, 10.92/3.68 "scope": -1, 10.92/3.68 "term": "(true)" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": [], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "384": { 10.92/3.68 "goal": [], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": [], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "385": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": -1, 10.92/3.68 "scope": -1, 10.92/3.68 "term": "(app T104 (. T105 T106) T103)" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": ["T103"], 10.92/3.68 "free": [], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "122": { 10.92/3.68 "goal": [], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": [], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "386": { 10.92/3.68 "goal": [], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": [], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "101": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": 0, 10.92/3.68 "scope": 1, 10.92/3.68 "term": "(in_order T1 T2)" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": ["T2"], 10.92/3.68 "free": [], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "123": { 10.92/3.68 "goal": [], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": [], 10.92/3.68 "free": [], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "102": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": 1, 10.92/3.68 "scope": 1, 10.92/3.68 "term": "(in_order T1 T2)" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": ["T2"], 10.92/3.68 "free": [], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "4": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": -1, 10.92/3.68 "scope": -1, 10.92/3.68 "term": "(in_order T1 T2)" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 10.92/3.68 "intvars": {}, 10.92/3.68 "arithmetic": { 10.92/3.68 "type": "PlainIntegerRelationState", 10.92/3.68 "relations": [] 10.92/3.68 }, 10.92/3.68 "ground": ["T2"], 10.92/3.68 "free": [], 10.92/3.68 "exprvars": [] 10.92/3.68 } 10.92/3.68 }, 10.92/3.68 "103": { 10.92/3.68 "goal": [{ 10.92/3.68 "clause": -1, 10.92/3.68 "scope": -1, 10.92/3.68 "term": "(true)" 10.92/3.68 }], 10.92/3.68 "kb": { 10.92/3.68 "nonunifying": [], 11.26/3.68 "intvars": {}, 11.26/3.68 "arithmetic": { 11.26/3.68 "type": "PlainIntegerRelationState", 11.26/3.68 "relations": [] 11.26/3.68 }, 11.26/3.68 "ground": [], 11.26/3.68 "free": [], 11.26/3.68 "exprvars": [] 11.26/3.68 } 11.26/3.68 }, 11.26/3.68 "301": { 11.26/3.68 "goal": [], 11.26/3.68 "kb": { 11.26/3.68 "nonunifying": [], 11.26/3.68 "intvars": {}, 11.26/3.68 "arithmetic": { 11.26/3.68 "type": "PlainIntegerRelationState", 11.26/3.68 "relations": [] 11.26/3.68 }, 11.26/3.68 "ground": [], 11.26/3.68 "free": [], 11.26/3.68 "exprvars": [] 11.26/3.68 } 11.26/3.68 }, 11.26/3.68 "5": { 11.26/3.68 "goal": [ 11.26/3.68 { 11.26/3.68 "clause": 0, 11.26/3.68 "scope": 1, 11.26/3.68 "term": "(in_order T1 T2)" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "clause": 1, 11.26/3.68 "scope": 1, 11.26/3.68 "term": "(in_order T1 T2)" 11.26/3.68 } 11.26/3.68 ], 11.26/3.68 "kb": { 11.26/3.68 "nonunifying": [], 11.26/3.68 "intvars": {}, 11.26/3.68 "arithmetic": { 11.26/3.68 "type": "PlainIntegerRelationState", 11.26/3.68 "relations": [] 11.26/3.68 }, 11.26/3.68 "ground": ["T2"], 11.26/3.68 "free": [], 11.26/3.68 "exprvars": [] 11.26/3.68 } 11.26/3.68 }, 11.26/3.68 "104": { 11.26/3.68 "goal": [], 11.26/3.68 "kb": { 11.26/3.68 "nonunifying": [], 11.26/3.68 "intvars": {}, 11.26/3.68 "arithmetic": { 11.26/3.68 "type": "PlainIntegerRelationState", 11.26/3.68 "relations": [] 11.26/3.68 }, 11.26/3.68 "ground": [], 11.26/3.68 "free": [], 11.26/3.68 "exprvars": [] 11.26/3.68 } 11.26/3.68 }, 11.26/3.68 "302": { 11.26/3.68 "goal": [{ 11.26/3.68 "clause": -1, 11.26/3.68 "scope": -1, 11.26/3.68 "term": "(in_order T30 X33)" 11.26/3.68 }], 11.26/3.68 "kb": { 11.26/3.68 "nonunifying": [], 11.26/3.68 "intvars": {}, 11.26/3.68 "arithmetic": { 11.26/3.68 "type": "PlainIntegerRelationState", 11.26/3.68 "relations": [] 11.26/3.68 }, 11.26/3.68 "ground": [], 11.26/3.68 "free": ["X33"], 11.26/3.68 "exprvars": [] 11.26/3.68 } 11.26/3.68 }, 11.26/3.68 "368": { 11.26/3.68 "goal": [{ 11.26/3.68 "clause": -1, 11.26/3.68 "scope": -1, 11.26/3.68 "term": "(true)" 11.26/3.68 }], 11.26/3.68 "kb": { 11.26/3.68 "nonunifying": [], 11.26/3.68 "intvars": {}, 11.26/3.68 "arithmetic": { 11.26/3.68 "type": "PlainIntegerRelationState", 11.26/3.68 "relations": [] 11.26/3.68 }, 11.26/3.68 "ground": [], 11.26/3.68 "free": [], 11.26/3.68 "exprvars": [] 11.26/3.68 } 11.26/3.68 }, 11.26/3.68 "105": { 11.26/3.68 "goal": [], 11.26/3.68 "kb": { 11.26/3.68 "nonunifying": [], 11.26/3.68 "intvars": {}, 11.26/3.68 "arithmetic": { 11.26/3.68 "type": "PlainIntegerRelationState", 11.26/3.68 "relations": [] 11.26/3.68 }, 11.26/3.68 "ground": [], 11.26/3.68 "free": [], 11.26/3.68 "exprvars": [] 11.26/3.68 } 11.26/3.68 }, 11.26/3.68 "369": { 11.26/3.68 "goal": [], 11.26/3.68 "kb": { 11.26/3.68 "nonunifying": [], 11.26/3.68 "intvars": {}, 11.26/3.68 "arithmetic": { 11.26/3.68 "type": "PlainIntegerRelationState", 11.26/3.68 "relations": [] 11.26/3.68 }, 11.26/3.68 "ground": [], 11.26/3.68 "free": [], 11.26/3.68 "exprvars": [] 11.26/3.68 } 11.26/3.68 }, 11.26/3.68 "304": { 11.26/3.68 "goal": [{ 11.26/3.68 "clause": -1, 11.26/3.68 "scope": -1, 11.26/3.68 "term": "(',' (in_order T34 X34) (app T33 (. T35 X34) X35))" 11.26/3.68 }], 11.26/3.68 "kb": { 11.26/3.68 "nonunifying": [], 11.26/3.68 "intvars": {}, 11.26/3.68 "arithmetic": { 11.26/3.68 "type": "PlainIntegerRelationState", 11.26/3.68 "relations": [] 11.26/3.68 }, 11.26/3.68 "ground": [], 11.26/3.68 "free": [ 11.26/3.68 "X35", 11.26/3.68 "X34" 11.26/3.68 ], 11.26/3.68 "exprvars": [] 11.26/3.68 } 11.26/3.68 }, 11.26/3.68 "108": { 11.26/3.68 "goal": [{ 11.26/3.68 "clause": -1, 11.26/3.68 "scope": -1, 11.26/3.68 "term": "(',' (in_order T15 X15) (',' (in_order T16 X16) (app X15 (. T17 X16) T14)))" 11.26/3.68 }], 11.26/3.68 "kb": { 11.26/3.68 "nonunifying": [], 11.26/3.68 "intvars": {}, 11.26/3.68 "arithmetic": { 11.26/3.68 "type": "PlainIntegerRelationState", 11.26/3.68 "relations": [] 11.26/3.68 }, 11.26/3.68 "ground": ["T14"], 11.26/3.68 "free": [ 11.26/3.68 "X15", 11.26/3.68 "X16" 11.26/3.68 ], 11.26/3.68 "exprvars": [] 11.26/3.68 } 11.26/3.68 }, 11.26/3.68 "109": { 11.26/3.68 "goal": [], 11.26/3.68 "kb": { 11.26/3.68 "nonunifying": [], 11.26/3.68 "intvars": {}, 11.26/3.68 "arithmetic": { 11.26/3.68 "type": "PlainIntegerRelationState", 11.26/3.68 "relations": [] 11.26/3.68 }, 11.26/3.68 "ground": [], 11.26/3.68 "free": [], 11.26/3.68 "exprvars": [] 11.26/3.68 } 11.26/3.68 }, 11.26/3.68 "308": { 11.26/3.68 "goal": [{ 11.26/3.68 "clause": -1, 11.26/3.68 "scope": -1, 11.26/3.68 "term": "(in_order T34 X34)" 11.26/3.68 }], 11.26/3.68 "kb": { 11.26/3.68 "nonunifying": [], 11.26/3.68 "intvars": {}, 11.26/3.68 "arithmetic": { 11.26/3.68 "type": "PlainIntegerRelationState", 11.26/3.68 "relations": [] 11.26/3.68 }, 11.26/3.68 "ground": [], 11.26/3.68 "free": ["X34"], 11.26/3.68 "exprvars": [] 11.26/3.68 } 11.26/3.68 }, 11.26/3.68 "309": { 11.26/3.68 "goal": [{ 11.26/3.68 "clause": -1, 11.26/3.68 "scope": -1, 11.26/3.68 "term": "(app T37 (. T38 T36) X35)" 11.26/3.68 }], 11.26/3.68 "kb": { 11.26/3.68 "nonunifying": [], 11.26/3.68 "intvars": {}, 11.26/3.68 "arithmetic": { 11.26/3.68 "type": "PlainIntegerRelationState", 11.26/3.68 "relations": [] 11.26/3.68 }, 11.26/3.68 "ground": [], 11.26/3.68 "free": ["X35"], 11.26/3.68 "exprvars": [] 11.26/3.68 } 11.26/3.68 } 11.26/3.68 }, 11.26/3.68 "edges": [ 11.26/3.68 { 11.26/3.68 "from": 4, 11.26/3.68 "to": 5, 11.26/3.68 "label": "CASE" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 5, 11.26/3.68 "to": 101, 11.26/3.68 "label": "PARALLEL" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 5, 11.26/3.68 "to": 102, 11.26/3.68 "label": "PARALLEL" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 101, 11.26/3.68 "to": 103, 11.26/3.68 "label": "EVAL with clause\nin_order(void, []).\nand substitutionT1 -> void,\nT2 -> []" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 101, 11.26/3.68 "to": 104, 11.26/3.68 "label": "EVAL-BACKTRACK" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 102, 11.26/3.68 "to": 108, 11.26/3.68 "label": "EVAL with clause\nin_order(tree(X11, X12, X13), X14) :- ','(in_order(X12, X15), ','(in_order(X13, X16), app(X15, .(X11, X16), X14))).\nand substitutionX11 -> T17,\nX12 -> T15,\nX13 -> T16,\nT1 -> tree(T17, T15, T16),\nT2 -> T14,\nX14 -> T14,\nT12 -> T15,\nT13 -> T16,\nT11 -> T17" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 102, 11.26/3.68 "to": 109, 11.26/3.68 "label": "EVAL-BACKTRACK" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 103, 11.26/3.68 "to": 105, 11.26/3.68 "label": "SUCCESS" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 108, 11.26/3.68 "to": 113, 11.26/3.68 "label": "SPLIT 1" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 108, 11.26/3.68 "to": 114, 11.26/3.68 "label": "SPLIT 2\nreplacements:X15 -> T18,\nT16 -> T19,\nT17 -> T20" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 113, 11.26/3.68 "to": 115, 11.26/3.68 "label": "CASE" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 114, 11.26/3.68 "to": 375, 11.26/3.68 "label": "SPLIT 1" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 114, 11.26/3.68 "to": 376, 11.26/3.68 "label": "SPLIT 2\nreplacements:X16 -> T72,\nT18 -> T73,\nT20 -> T74" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 115, 11.26/3.68 "to": 116, 11.26/3.68 "label": "PARALLEL" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 115, 11.26/3.68 "to": 118, 11.26/3.68 "label": "PARALLEL" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 116, 11.26/3.68 "to": 120, 11.26/3.68 "label": "EVAL with clause\nin_order(void, []).\nand substitutionT15 -> void,\nX15 -> []" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 116, 11.26/3.68 "to": 122, 11.26/3.68 "label": "EVAL-BACKTRACK" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 118, 11.26/3.68 "to": 298, 11.26/3.68 "label": "EVAL with clause\nin_order(tree(X29, X30, X31), X32) :- ','(in_order(X30, X33), ','(in_order(X31, X34), app(X33, .(X29, X34), X32))).\nand substitutionX29 -> T32,\nX30 -> T30,\nX31 -> T31,\nT15 -> tree(T32, T30, T31),\nX15 -> X35,\nX32 -> X35,\nT28 -> T30,\nT29 -> T31,\nT27 -> T32" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 118, 11.26/3.68 "to": 301, 11.26/3.68 "label": "EVAL-BACKTRACK" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 120, 11.26/3.68 "to": 123, 11.26/3.68 "label": "SUCCESS" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 298, 11.26/3.68 "to": 302, 11.26/3.68 "label": "SPLIT 1" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 298, 11.26/3.68 "to": 304, 11.26/3.68 "label": "SPLIT 2\nreplacements:X33 -> T33,\nT31 -> T34,\nT32 -> T35" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 302, 11.26/3.68 "to": 113, 11.26/3.68 "label": "INSTANCE with matching:\nT15 -> T30\nX15 -> X33" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 304, 11.26/3.68 "to": 308, 11.26/3.68 "label": "SPLIT 1" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 304, 11.26/3.68 "to": 309, 11.26/3.68 "label": "SPLIT 2\nreplacements:X34 -> T36,\nT33 -> T37,\nT35 -> T38" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 308, 11.26/3.68 "to": 113, 11.26/3.68 "label": "INSTANCE with matching:\nT15 -> T34\nX15 -> X34" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 309, 11.26/3.68 "to": 312, 11.26/3.68 "label": "CASE" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 312, 11.26/3.68 "to": 313, 11.26/3.68 "label": "PARALLEL" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 312, 11.26/3.68 "to": 314, 11.26/3.68 "label": "PARALLEL" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 313, 11.26/3.68 "to": 368, 11.26/3.68 "label": "EVAL with clause\napp([], X42, X42).\nand substitutionT37 -> [],\nT38 -> T51,\nT36 -> T52,\nX42 -> .(T51, T52),\nX35 -> .(T51, T52)" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 313, 11.26/3.68 "to": 369, 11.26/3.68 "label": "EVAL-BACKTRACK" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 314, 11.26/3.68 "to": 371, 11.26/3.68 "label": "EVAL with clause\napp(.(X53, X54), X55, .(X53, X56)) :- app(X54, X55, X56).\nand substitutionX53 -> T61,\nX54 -> T65,\nT37 -> .(T61, T65),\nT38 -> T66,\nT36 -> T67,\nX55 -> .(T66, T67),\nX56 -> X57,\nX35 -> .(T61, X57),\nT62 -> T65,\nT63 -> T66,\nT64 -> T67" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 314, 11.26/3.68 "to": 372, 11.26/3.68 "label": "EVAL-BACKTRACK" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 368, 11.26/3.68 "to": 370, 11.26/3.68 "label": "SUCCESS" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 371, 11.26/3.68 "to": 309, 11.26/3.68 "label": "INSTANCE with matching:\nT37 -> T65\nT38 -> T66\nT36 -> T67\nX35 -> X57" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 375, 11.26/3.68 "to": 113, 11.26/3.68 "label": "INSTANCE with matching:\nT15 -> T19\nX15 -> X16" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 376, 11.26/3.68 "to": 379, 11.26/3.68 "label": "CASE" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 379, 11.26/3.68 "to": 380, 11.26/3.68 "label": "PARALLEL" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 379, 11.26/3.68 "to": 381, 11.26/3.68 "label": "PARALLEL" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 380, 11.26/3.68 "to": 382, 11.26/3.68 "label": "EVAL with clause\napp([], X66, X66).\nand substitutionT73 -> [],\nT74 -> T87,\nT72 -> T88,\nX66 -> .(T87, T88),\nT14 -> .(T87, T88)" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 380, 11.26/3.68 "to": 383, 11.26/3.68 "label": "EVAL-BACKTRACK" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 381, 11.26/3.68 "to": 385, 11.26/3.68 "label": "EVAL with clause\napp(.(X75, X76), X77, .(X75, X78)) :- app(X76, X77, X78).\nand substitutionX75 -> T99,\nX76 -> T104,\nT73 -> .(T99, T104),\nT74 -> T105,\nT72 -> T106,\nX77 -> .(T105, T106),\nX78 -> T103,\nT14 -> .(T99, T103),\nT100 -> T104,\nT101 -> T105,\nT102 -> T106" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 381, 11.26/3.68 "to": 386, 11.26/3.68 "label": "EVAL-BACKTRACK" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 382, 11.26/3.68 "to": 384, 11.26/3.68 "label": "SUCCESS" 11.26/3.68 }, 11.26/3.68 { 11.26/3.68 "from": 385, 11.26/3.68 "to": 376, 11.26/3.68 "label": "INSTANCE with matching:\nT73 -> T104\nT74 -> T105\nT72 -> T106\nT14 -> T103" 11.26/3.68 } 11.26/3.68 ], 11.26/3.68 "type": "Graph" 11.26/3.68 } 11.26/3.68 } 11.26/3.68 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (87) 11.26/3.68 Complex Obligation (AND) 11.26/3.68 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (88) 11.26/3.68 Obligation: 11.26/3.68 Rules: 11.26/3.68 f379_in(T14) -> f380_in(T14) :|: TRUE 11.26/3.68 f380_out(x) -> f379_out(x) :|: TRUE 11.26/3.68 f379_in(x1) -> f381_in(x1) :|: TRUE 11.26/3.68 f381_out(x2) -> f379_out(x2) :|: TRUE 11.26/3.68 f379_out(x3) -> f376_out(x3) :|: TRUE 11.26/3.68 f376_in(x4) -> f379_in(x4) :|: TRUE 11.26/3.68 f385_in(T103) -> f376_in(T103) :|: TRUE 11.26/3.68 f376_out(x5) -> f385_out(x5) :|: TRUE 11.26/3.68 f381_in(x6) -> f386_in :|: TRUE 11.26/3.68 f385_out(x7) -> f381_out(.(x8, x7)) :|: TRUE 11.26/3.68 f381_in(.(x9, x10)) -> f385_in(x10) :|: TRUE 11.26/3.68 f386_out -> f381_out(x11) :|: TRUE 11.26/3.68 f5_out(T2) -> f4_out(T2) :|: TRUE 11.26/3.68 f4_in(x12) -> f5_in(x12) :|: TRUE 11.26/3.68 f102_out(x13) -> f5_out(x13) :|: TRUE 11.26/3.68 f5_in(x14) -> f101_in(x14) :|: TRUE 11.26/3.68 f101_out(x15) -> f5_out(x15) :|: TRUE 11.26/3.68 f5_in(x16) -> f102_in(x16) :|: TRUE 11.26/3.68 f102_in(x17) -> f109_in :|: TRUE 11.26/3.68 f108_out(x18) -> f102_out(x18) :|: TRUE 11.26/3.68 f109_out -> f102_out(x19) :|: TRUE 11.26/3.68 f102_in(x20) -> f108_in(x20) :|: TRUE 11.26/3.68 f113_out -> f114_in(x21) :|: TRUE 11.26/3.68 f114_out(x22) -> f108_out(x22) :|: TRUE 11.26/3.68 f108_in(x23) -> f113_in :|: TRUE 11.26/3.68 f114_in(x24) -> f375_in :|: TRUE 11.26/3.68 f375_out -> f376_in(x25) :|: TRUE 11.26/3.68 f376_out(x26) -> f114_out(x26) :|: TRUE 11.26/3.68 Start term: f4_in(T2) 11.26/3.68 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (89) IRSwTSimpleDependencyGraphProof (EQUIVALENT) 11.26/3.68 Constructed simple dependency graph. 11.26/3.68 11.26/3.68 Simplified to the following IRSwTs: 11.26/3.68 11.26/3.68 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (90) 11.26/3.68 TRUE 11.26/3.68 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (91) 11.26/3.68 Obligation: 11.26/3.68 Rules: 11.26/3.68 f314_out -> f312_out :|: TRUE 11.26/3.68 f312_in -> f313_in :|: TRUE 11.26/3.68 f313_out -> f312_out :|: TRUE 11.26/3.68 f312_in -> f314_in :|: TRUE 11.26/3.68 f309_in -> f312_in :|: TRUE 11.26/3.68 f312_out -> f309_out :|: TRUE 11.26/3.68 f372_out -> f314_out :|: TRUE 11.26/3.68 f314_in -> f371_in :|: TRUE 11.26/3.68 f314_in -> f372_in :|: TRUE 11.26/3.68 f371_out -> f314_out :|: TRUE 11.26/3.68 f309_out -> f371_out :|: TRUE 11.26/3.68 f371_in -> f309_in :|: TRUE 11.26/3.68 f5_out(T2) -> f4_out(T2) :|: TRUE 11.26/3.68 f4_in(x) -> f5_in(x) :|: TRUE 11.26/3.68 f102_out(x1) -> f5_out(x1) :|: TRUE 11.26/3.68 f5_in(x2) -> f101_in(x2) :|: TRUE 11.26/3.68 f101_out(x3) -> f5_out(x3) :|: TRUE 11.26/3.68 f5_in(x4) -> f102_in(x4) :|: TRUE 11.26/3.68 f102_in(x5) -> f109_in :|: TRUE 11.26/3.68 f108_out(T14) -> f102_out(T14) :|: TRUE 11.26/3.68 f109_out -> f102_out(x6) :|: TRUE 11.26/3.68 f102_in(x7) -> f108_in(x7) :|: TRUE 11.26/3.68 f113_out -> f114_in(x8) :|: TRUE 11.26/3.68 f114_out(x9) -> f108_out(x9) :|: TRUE 11.26/3.68 f108_in(x10) -> f113_in :|: TRUE 11.26/3.68 f115_out -> f113_out :|: TRUE 11.26/3.68 f113_in -> f115_in :|: TRUE 11.26/3.68 f118_out -> f115_out :|: TRUE 11.26/3.68 f116_out -> f115_out :|: TRUE 11.26/3.68 f115_in -> f116_in :|: TRUE 11.26/3.68 f115_in -> f118_in :|: TRUE 11.26/3.68 f118_in -> f298_in :|: TRUE 11.26/3.68 f298_out -> f118_out :|: TRUE 11.26/3.68 f118_in -> f301_in :|: TRUE 11.26/3.68 f301_out -> f118_out :|: TRUE 11.26/3.68 f304_out -> f298_out :|: TRUE 11.26/3.68 f302_out -> f304_in :|: TRUE 11.26/3.68 f298_in -> f302_in :|: TRUE 11.26/3.68 f304_in -> f308_in :|: TRUE 11.26/3.68 f308_out -> f309_in :|: TRUE 11.26/3.68 f309_out -> f304_out :|: TRUE 11.26/3.68 f114_in(x11) -> f375_in :|: TRUE 11.26/3.68 f375_out -> f376_in(x12) :|: TRUE 11.26/3.68 f376_out(x13) -> f114_out(x13) :|: TRUE 11.26/3.68 f375_in -> f113_in :|: TRUE 11.26/3.68 f113_out -> f375_out :|: TRUE 11.26/3.68 Start term: f4_in(T2) 11.26/3.68 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (92) IRSwTSimpleDependencyGraphProof (EQUIVALENT) 11.26/3.68 Constructed simple dependency graph. 11.26/3.68 11.26/3.68 Simplified to the following IRSwTs: 11.26/3.68 11.26/3.68 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (93) 11.26/3.68 TRUE 11.26/3.68 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (94) 11.26/3.68 Obligation: 11.26/3.68 Rules: 11.26/3.68 f304_out -> f298_out :|: TRUE 11.26/3.68 f302_out -> f304_in :|: TRUE 11.26/3.68 f298_in -> f302_in :|: TRUE 11.26/3.68 f368_in -> f368_out :|: TRUE 11.26/3.68 f309_in -> f312_in :|: TRUE 11.26/3.68 f312_out -> f309_out :|: TRUE 11.26/3.68 f308_in -> f113_in :|: TRUE 11.26/3.68 f113_out -> f308_out :|: TRUE 11.26/3.68 f369_out -> f313_out :|: TRUE 11.26/3.68 f313_in -> f368_in :|: TRUE 11.26/3.68 f313_in -> f369_in :|: TRUE 11.26/3.68 f368_out -> f313_out :|: TRUE 11.26/3.68 f113_out -> f302_out :|: TRUE 11.26/3.68 f302_in -> f113_in :|: TRUE 11.26/3.68 f115_out -> f113_out :|: TRUE 11.26/3.68 f113_in -> f115_in :|: TRUE 11.26/3.68 f309_out -> f371_out :|: TRUE 11.26/3.68 f371_in -> f309_in :|: TRUE 11.26/3.68 f118_out -> f115_out :|: TRUE 11.26/3.68 f116_out -> f115_out :|: TRUE 11.26/3.68 f115_in -> f116_in :|: TRUE 11.26/3.68 f115_in -> f118_in :|: TRUE 11.26/3.68 f314_out -> f312_out :|: TRUE 11.26/3.68 f312_in -> f313_in :|: TRUE 11.26/3.68 f313_out -> f312_out :|: TRUE 11.26/3.68 f312_in -> f314_in :|: TRUE 11.26/3.68 f304_in -> f308_in :|: TRUE 11.26/3.68 f308_out -> f309_in :|: TRUE 11.26/3.68 f309_out -> f304_out :|: TRUE 11.26/3.68 f372_out -> f314_out :|: TRUE 11.26/3.68 f314_in -> f371_in :|: TRUE 11.26/3.68 f314_in -> f372_in :|: TRUE 11.26/3.68 f371_out -> f314_out :|: TRUE 11.26/3.68 f118_in -> f298_in :|: TRUE 11.26/3.68 f298_out -> f118_out :|: TRUE 11.26/3.68 f118_in -> f301_in :|: TRUE 11.26/3.68 f301_out -> f118_out :|: TRUE 11.26/3.68 f5_out(T2) -> f4_out(T2) :|: TRUE 11.26/3.68 f4_in(x) -> f5_in(x) :|: TRUE 11.26/3.68 f102_out(x1) -> f5_out(x1) :|: TRUE 11.26/3.68 f5_in(x2) -> f101_in(x2) :|: TRUE 11.26/3.68 f101_out(x3) -> f5_out(x3) :|: TRUE 11.26/3.68 f5_in(x4) -> f102_in(x4) :|: TRUE 11.26/3.68 f102_in(x5) -> f109_in :|: TRUE 11.26/3.68 f108_out(T14) -> f102_out(T14) :|: TRUE 11.26/3.68 f109_out -> f102_out(x6) :|: TRUE 11.26/3.68 f102_in(x7) -> f108_in(x7) :|: TRUE 11.26/3.68 f113_out -> f114_in(x8) :|: TRUE 11.26/3.68 f114_out(x9) -> f108_out(x9) :|: TRUE 11.26/3.68 f108_in(x10) -> f113_in :|: TRUE 11.26/3.68 f114_in(x11) -> f375_in :|: TRUE 11.26/3.68 f375_out -> f376_in(x12) :|: TRUE 11.26/3.68 f376_out(x13) -> f114_out(x13) :|: TRUE 11.26/3.68 f375_in -> f113_in :|: TRUE 11.26/3.68 f113_out -> f375_out :|: TRUE 11.26/3.68 Start term: f4_in(T2) 11.26/3.68 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (95) IRSwTSimpleDependencyGraphProof (EQUIVALENT) 11.26/3.68 Constructed simple dependency graph. 11.26/3.68 11.26/3.68 Simplified to the following IRSwTs: 11.26/3.68 11.26/3.68 intTRSProblem: 11.26/3.68 f298_in -> f302_in :|: TRUE 11.26/3.68 f302_in -> f113_in :|: TRUE 11.26/3.68 f113_in -> f115_in :|: TRUE 11.26/3.68 f115_in -> f118_in :|: TRUE 11.26/3.68 f118_in -> f298_in :|: TRUE 11.26/3.68 11.26/3.68 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (96) 11.26/3.68 Obligation: 11.26/3.68 Rules: 11.26/3.68 f298_in -> f302_in :|: TRUE 11.26/3.68 f302_in -> f113_in :|: TRUE 11.26/3.68 f113_in -> f115_in :|: TRUE 11.26/3.68 f115_in -> f118_in :|: TRUE 11.26/3.68 f118_in -> f298_in :|: TRUE 11.26/3.68 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (97) IntTRSCompressionProof (EQUIVALENT) 11.26/3.68 Compressed rules. 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (98) 11.26/3.68 Obligation: 11.26/3.68 Rules: 11.26/3.68 f298_in -> f298_in :|: TRUE 11.26/3.68 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (99) IRSFormatTransformerProof (EQUIVALENT) 11.26/3.68 Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (100) 11.26/3.68 Obligation: 11.26/3.68 Rules: 11.26/3.68 f298_in -> f298_in :|: TRUE 11.26/3.68 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (101) IRSwTTerminationDigraphProof (EQUIVALENT) 11.26/3.68 Constructed termination digraph! 11.26/3.68 Nodes: 11.26/3.68 (1) f298_in -> f298_in :|: TRUE 11.26/3.68 11.26/3.68 Arcs: 11.26/3.68 (1) -> (1) 11.26/3.68 11.26/3.68 This digraph is fully evaluated! 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (102) 11.26/3.68 Obligation: 11.26/3.68 11.26/3.68 Termination digraph: 11.26/3.68 Nodes: 11.26/3.68 (1) f298_in -> f298_in :|: TRUE 11.26/3.68 11.26/3.68 Arcs: 11.26/3.68 (1) -> (1) 11.26/3.68 11.26/3.68 This digraph is fully evaluated! 11.26/3.68 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (103) FilterProof (EQUIVALENT) 11.26/3.68 Used the following sort dictionary for filtering: 11.26/3.68 f298_in() 11.26/3.68 Replaced non-predefined constructor symbols by 0. 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (104) 11.26/3.68 Obligation: 11.26/3.68 Rules: 11.26/3.68 f298_in -> f298_in :|: TRUE 11.26/3.68 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (105) IntTRSPeriodicNontermProof (COMPLETE) 11.26/3.68 Normalized system to the following form: 11.26/3.68 f(pc) -> f(1) :|: pc = 1 && TRUE 11.26/3.68 Witness term starting non-terminating reduction: f(1) 11.26/3.68 ---------------------------------------- 11.26/3.68 11.26/3.68 (106) 11.26/3.68 NO 11.32/3.72 EOF