/export/starexec/sandbox/solver/bin/starexec_run_Transition /export/starexec/sandbox/benchmark/theBenchmark.smt2 /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- MAYBE DP problem for innermost termination. P = init#(x1, x2) -> f1#(rnd1, rnd2) f2#(I0, I1) -> f2#(I0 + 1, I2) [-5 <= I0 - 1 /\ I0 <= 0 /\ I0 <= -1] f2#(I3, I4) -> f2#(I3 + 1, I5) [I3 <= -5 - 1 /\ I3 <= 0 /\ I3 <= -1] f2#(I6, I7) -> f2#(-5, I8) [-5 = I6] f1#(I9, I10) -> f2#(-1 * I10, I11) [0 <= I9 - 1 /\ -1 <= I10 - 1 /\ -1 * I10 <= 0] R = init(x1, x2) -> f1(rnd1, rnd2) f2(I0, I1) -> f2(I0 + 1, I2) [-5 <= I0 - 1 /\ I0 <= 0 /\ I0 <= -1] f2(I3, I4) -> f2(I3 + 1, I5) [I3 <= -5 - 1 /\ I3 <= 0 /\ I3 <= -1] f2(I6, I7) -> f2(-5, I8) [-5 = I6] f1(I9, I10) -> f2(-1 * I10, I11) [0 <= I9 - 1 /\ -1 <= I10 - 1 /\ -1 * I10 <= 0] The dependency graph for this problem is: 0 -> 4 1 -> 1 2 -> 2, 3 3 -> 3 4 -> 1, 2, 3 Where: 0) init#(x1, x2) -> f1#(rnd1, rnd2) 1) f2#(I0, I1) -> f2#(I0 + 1, I2) [-5 <= I0 - 1 /\ I0 <= 0 /\ I0 <= -1] 2) f2#(I3, I4) -> f2#(I3 + 1, I5) [I3 <= -5 - 1 /\ I3 <= 0 /\ I3 <= -1] 3) f2#(I6, I7) -> f2#(-5, I8) [-5 = I6] 4) f1#(I9, I10) -> f2#(-1 * I10, I11) [0 <= I9 - 1 /\ -1 <= I10 - 1 /\ -1 * I10 <= 0] We have the following SCCs. { 2 } { 3 } { 1 } DP problem for innermost termination. P = f2#(I0, I1) -> f2#(I0 + 1, I2) [-5 <= I0 - 1 /\ I0 <= 0 /\ I0 <= -1] R = init(x1, x2) -> f1(rnd1, rnd2) f2(I0, I1) -> f2(I0 + 1, I2) [-5 <= I0 - 1 /\ I0 <= 0 /\ I0 <= -1] f2(I3, I4) -> f2(I3 + 1, I5) [I3 <= -5 - 1 /\ I3 <= 0 /\ I3 <= -1] f2(I6, I7) -> f2(-5, I8) [-5 = I6] f1(I9, I10) -> f2(-1 * I10, I11) [0 <= I9 - 1 /\ -1 <= I10 - 1 /\ -1 * I10 <= 0] We use the reverse value criterion with the projection function NU: NU[f2#(z1,z2)] = 0 + -1 * z1 This gives the following inequalities: -5 <= I0 - 1 /\ I0 <= 0 /\ I0 <= -1 ==> 0 + -1 * I0 > 0 + -1 * (I0 + 1) with 0 + -1 * I0 >= 0 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. DP problem for innermost termination. P = f2#(I6, I7) -> f2#(-5, I8) [-5 = I6] R = init(x1, x2) -> f1(rnd1, rnd2) f2(I0, I1) -> f2(I0 + 1, I2) [-5 <= I0 - 1 /\ I0 <= 0 /\ I0 <= -1] f2(I3, I4) -> f2(I3 + 1, I5) [I3 <= -5 - 1 /\ I3 <= 0 /\ I3 <= -1] f2(I6, I7) -> f2(-5, I8) [-5 = I6] f1(I9, I10) -> f2(-1 * I10, I11) [0 <= I9 - 1 /\ -1 <= I10 - 1 /\ -1 * I10 <= 0]