/export/starexec/sandbox2/solver/bin/starexec_run_Transition /export/starexec/sandbox2/benchmark/theBenchmark.smt2 /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- MAYBE DP problem for innermost termination. P = init#(x1, x2) -> f3#(rnd1, rnd2) f5#(I0, I1) -> f5#(I0 - 1, I1 + 1) [0 <= I1 - 1 /\ 0 <= I0 - 1] f3#(I2, I3) -> f5#(I4, 1) [0 <= I2 - 1 /\ -1 <= I4 - 1 /\ -1 <= I3 - 1] f4#(I5, I6) -> f4#(I7, I8) [I7 + 2 <= I5 /\ y1 <= 0 /\ 2 <= I5 - 1 /\ 0 <= I7 - 1] f4#(I9, I10) -> f4#(I11, I12) [I11 <= I9 /\ 0 <= I13 - 1 /\ 0 <= I9 - 1 /\ 0 <= I11 - 1] f4#(I14, I15) -> f4#(I16, I17) [I16 + 2 <= I14 /\ I18 <= 0 /\ 1 <= I14 - 1 /\ -1 <= I16 - 1] f2#(I19, I20) -> f4#(I21, I22) [I21 <= I19 /\ 0 <= I23 - 1 /\ -1 <= I19 - 1 /\ -1 <= I21 - 1] f3#(I24, I25) -> f2#(I26, I27) [-1 <= I26 - 1 /\ 0 <= I24 - 1] f1#(I28, I29) -> f2#(I30, I31) [-1 <= I30 - 1 /\ -1 <= I28 - 1 /\ I30 <= I28] R = init(x1, x2) -> f3(rnd1, rnd2) f5(I0, I1) -> f5(I0 - 1, I1 + 1) [0 <= I1 - 1 /\ 0 <= I0 - 1] f3(I2, I3) -> f5(I4, 1) [0 <= I2 - 1 /\ -1 <= I4 - 1 /\ -1 <= I3 - 1] f4(I5, I6) -> f4(I7, I8) [I7 + 2 <= I5 /\ y1 <= 0 /\ 2 <= I5 - 1 /\ 0 <= I7 - 1] f4(I9, I10) -> f4(I11, I12) [I11 <= I9 /\ 0 <= I13 - 1 /\ 0 <= I9 - 1 /\ 0 <= I11 - 1] f4(I14, I15) -> f4(I16, I17) [I16 + 2 <= I14 /\ I18 <= 0 /\ 1 <= I14 - 1 /\ -1 <= I16 - 1] f2(I19, I20) -> f4(I21, I22) [I21 <= I19 /\ 0 <= I23 - 1 /\ -1 <= I19 - 1 /\ -1 <= I21 - 1] f3(I24, I25) -> f2(I26, I27) [-1 <= I26 - 1 /\ 0 <= I24 - 1] f1(I28, I29) -> f2(I30, I31) [-1 <= I30 - 1 /\ -1 <= I28 - 1 /\ I30 <= I28] The dependency graph for this problem is: 0 -> 2, 7 1 -> 1 2 -> 1 3 -> 3, 4, 5 4 -> 3, 4, 5 5 -> 3, 4, 5 6 -> 3, 4, 5 7 -> 6 8 -> 6 Where: 0) init#(x1, x2) -> f3#(rnd1, rnd2) 1) f5#(I0, I1) -> f5#(I0 - 1, I1 + 1) [0 <= I1 - 1 /\ 0 <= I0 - 1] 2) f3#(I2, I3) -> f5#(I4, 1) [0 <= I2 - 1 /\ -1 <= I4 - 1 /\ -1 <= I3 - 1] 3) f4#(I5, I6) -> f4#(I7, I8) [I7 + 2 <= I5 /\ y1 <= 0 /\ 2 <= I5 - 1 /\ 0 <= I7 - 1] 4) f4#(I9, I10) -> f4#(I11, I12) [I11 <= I9 /\ 0 <= I13 - 1 /\ 0 <= I9 - 1 /\ 0 <= I11 - 1] 5) f4#(I14, I15) -> f4#(I16, I17) [I16 + 2 <= I14 /\ I18 <= 0 /\ 1 <= I14 - 1 /\ -1 <= I16 - 1] 6) f2#(I19, I20) -> f4#(I21, I22) [I21 <= I19 /\ 0 <= I23 - 1 /\ -1 <= I19 - 1 /\ -1 <= I21 - 1] 7) f3#(I24, I25) -> f2#(I26, I27) [-1 <= I26 - 1 /\ 0 <= I24 - 1] 8) f1#(I28, I29) -> f2#(I30, I31) [-1 <= I30 - 1 /\ -1 <= I28 - 1 /\ I30 <= I28] We have the following SCCs. { 1 } { 3, 4, 5 } DP problem for innermost termination. P = f4#(I5, I6) -> f4#(I7, I8) [I7 + 2 <= I5 /\ y1 <= 0 /\ 2 <= I5 - 1 /\ 0 <= I7 - 1] f4#(I9, I10) -> f4#(I11, I12) [I11 <= I9 /\ 0 <= I13 - 1 /\ 0 <= I9 - 1 /\ 0 <= I11 - 1] f4#(I14, I15) -> f4#(I16, I17) [I16 + 2 <= I14 /\ I18 <= 0 /\ 1 <= I14 - 1 /\ -1 <= I16 - 1] R = init(x1, x2) -> f3(rnd1, rnd2) f5(I0, I1) -> f5(I0 - 1, I1 + 1) [0 <= I1 - 1 /\ 0 <= I0 - 1] f3(I2, I3) -> f5(I4, 1) [0 <= I2 - 1 /\ -1 <= I4 - 1 /\ -1 <= I3 - 1] f4(I5, I6) -> f4(I7, I8) [I7 + 2 <= I5 /\ y1 <= 0 /\ 2 <= I5 - 1 /\ 0 <= I7 - 1] f4(I9, I10) -> f4(I11, I12) [I11 <= I9 /\ 0 <= I13 - 1 /\ 0 <= I9 - 1 /\ 0 <= I11 - 1] f4(I14, I15) -> f4(I16, I17) [I16 + 2 <= I14 /\ I18 <= 0 /\ 1 <= I14 - 1 /\ -1 <= I16 - 1] f2(I19, I20) -> f4(I21, I22) [I21 <= I19 /\ 0 <= I23 - 1 /\ -1 <= I19 - 1 /\ -1 <= I21 - 1] f3(I24, I25) -> f2(I26, I27) [-1 <= I26 - 1 /\ 0 <= I24 - 1] f1(I28, I29) -> f2(I30, I31) [-1 <= I30 - 1 /\ -1 <= I28 - 1 /\ I30 <= I28] We use the basic value criterion with the projection function NU: NU[f4#(z1,z2)] = z1 This gives the following inequalities: I7 + 2 <= I5 /\ y1 <= 0 /\ 2 <= I5 - 1 /\ 0 <= I7 - 1 ==> I5 >! I7 I11 <= I9 /\ 0 <= I13 - 1 /\ 0 <= I9 - 1 /\ 0 <= I11 - 1 ==> I9 (>! \union =) I11 I16 + 2 <= I14 /\ I18 <= 0 /\ 1 <= I14 - 1 /\ -1 <= I16 - 1 ==> I14 >! I16 We remove all the strictly oriented dependency pairs. DP problem for innermost termination. P = f4#(I9, I10) -> f4#(I11, I12) [I11 <= I9 /\ 0 <= I13 - 1 /\ 0 <= I9 - 1 /\ 0 <= I11 - 1] R = init(x1, x2) -> f3(rnd1, rnd2) f5(I0, I1) -> f5(I0 - 1, I1 + 1) [0 <= I1 - 1 /\ 0 <= I0 - 1] f3(I2, I3) -> f5(I4, 1) [0 <= I2 - 1 /\ -1 <= I4 - 1 /\ -1 <= I3 - 1] f4(I5, I6) -> f4(I7, I8) [I7 + 2 <= I5 /\ y1 <= 0 /\ 2 <= I5 - 1 /\ 0 <= I7 - 1] f4(I9, I10) -> f4(I11, I12) [I11 <= I9 /\ 0 <= I13 - 1 /\ 0 <= I9 - 1 /\ 0 <= I11 - 1] f4(I14, I15) -> f4(I16, I17) [I16 + 2 <= I14 /\ I18 <= 0 /\ 1 <= I14 - 1 /\ -1 <= I16 - 1] f2(I19, I20) -> f4(I21, I22) [I21 <= I19 /\ 0 <= I23 - 1 /\ -1 <= I19 - 1 /\ -1 <= I21 - 1] f3(I24, I25) -> f2(I26, I27) [-1 <= I26 - 1 /\ 0 <= I24 - 1] f1(I28, I29) -> f2(I30, I31) [-1 <= I30 - 1 /\ -1 <= I28 - 1 /\ I30 <= I28]