/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, x3, x4) -> f1#(rnd1, rnd2, rnd3, rnd4) f3#(I0, I1, I2, I3) -> f3#(1, I4, I5, I6) [I5 <= I1 - 1 /\ 0 <= I1 - 1 /\ I6 <= y1 - 1 /\ -1 <= y1 - 1 /\ I1 = I2] f3#(I7, I8, I9, I10) -> f3#(I11, I8, I12, I13) [0 <= I7 - 1 /\ 0 <= I10 - 1 /\ 0 <= I9 - 1 /\ I7 <= I11 - 1 /\ I7 <= I8 - 1 /\ I12 <= I9 - 1 /\ I13 <= I10 - 1 /\ I7 <= I14 - 1] f2#(I15, I16, I17, I18) -> f3#(0, I17, I17, 0) [0 <= I17 - 1 /\ I16 <= 0] f2#(I19, I20, I21, I22) -> f2#(I19 - 1, I19, 1, I23) [0 <= I20 - 1] f2#(I24, I25, I26, I27) -> f2#(I24 - 1, I24, I28, I29) [0 <= I26 - 1 /\ I26 <= I28 - 1 /\ 0 <= I25 - 1] f1#(I30, I31, I32, I33) -> f2#(I31 - 1, I31, 0, I34) [-1 <= I31 - 1 /\ 0 <= I30 - 1] R = init(x1, x2, x3, x4) -> f1(rnd1, rnd2, rnd3, rnd4) f3(I0, I1, I2, I3) -> f3(1, I4, I5, I6) [I5 <= I1 - 1 /\ 0 <= I1 - 1 /\ I6 <= y1 - 1 /\ -1 <= y1 - 1 /\ I1 = I2] f3(I7, I8, I9, I10) -> f3(I11, I8, I12, I13) [0 <= I7 - 1 /\ 0 <= I10 - 1 /\ 0 <= I9 - 1 /\ I7 <= I11 - 1 /\ I7 <= I8 - 1 /\ I12 <= I9 - 1 /\ I13 <= I10 - 1 /\ I7 <= I14 - 1] f2(I15, I16, I17, I18) -> f3(0, I17, I17, 0) [0 <= I17 - 1 /\ I16 <= 0] f2(I19, I20, I21, I22) -> f2(I19 - 1, I19, 1, I23) [0 <= I20 - 1] f2(I24, I25, I26, I27) -> f2(I24 - 1, I24, I28, I29) [0 <= I26 - 1 /\ I26 <= I28 - 1 /\ 0 <= I25 - 1] f1(I30, I31, I32, I33) -> f2(I31 - 1, I31, 0, I34) [-1 <= I31 - 1 /\ 0 <= I30 - 1] The dependency graph for this problem is: 0 -> 6 1 -> 1, 2 2 -> 1, 2 3 -> 1 4 -> 3, 4, 5 5 -> 3, 4, 5 6 -> 4 Where: 0) init#(x1, x2, x3, x4) -> f1#(rnd1, rnd2, rnd3, rnd4) 1) f3#(I0, I1, I2, I3) -> f3#(1, I4, I5, I6) [I5 <= I1 - 1 /\ 0 <= I1 - 1 /\ I6 <= y1 - 1 /\ -1 <= y1 - 1 /\ I1 = I2] 2) f3#(I7, I8, I9, I10) -> f3#(I11, I8, I12, I13) [0 <= I7 - 1 /\ 0 <= I10 - 1 /\ 0 <= I9 - 1 /\ I7 <= I11 - 1 /\ I7 <= I8 - 1 /\ I12 <= I9 - 1 /\ I13 <= I10 - 1 /\ I7 <= I14 - 1] 3) f2#(I15, I16, I17, I18) -> f3#(0, I17, I17, 0) [0 <= I17 - 1 /\ I16 <= 0] 4) f2#(I19, I20, I21, I22) -> f2#(I19 - 1, I19, 1, I23) [0 <= I20 - 1] 5) f2#(I24, I25, I26, I27) -> f2#(I24 - 1, I24, I28, I29) [0 <= I26 - 1 /\ I26 <= I28 - 1 /\ 0 <= I25 - 1] 6) f1#(I30, I31, I32, I33) -> f2#(I31 - 1, I31, 0, I34) [-1 <= I31 - 1 /\ 0 <= I30 - 1] We have the following SCCs. { 4, 5 } { 1, 2 } DP problem for innermost termination. P = f3#(I0, I1, I2, I3) -> f3#(1, I4, I5, I6) [I5 <= I1 - 1 /\ 0 <= I1 - 1 /\ I6 <= y1 - 1 /\ -1 <= y1 - 1 /\ I1 = I2] f3#(I7, I8, I9, I10) -> f3#(I11, I8, I12, I13) [0 <= I7 - 1 /\ 0 <= I10 - 1 /\ 0 <= I9 - 1 /\ I7 <= I11 - 1 /\ I7 <= I8 - 1 /\ I12 <= I9 - 1 /\ I13 <= I10 - 1 /\ I7 <= I14 - 1] R = init(x1, x2, x3, x4) -> f1(rnd1, rnd2, rnd3, rnd4) f3(I0, I1, I2, I3) -> f3(1, I4, I5, I6) [I5 <= I1 - 1 /\ 0 <= I1 - 1 /\ I6 <= y1 - 1 /\ -1 <= y1 - 1 /\ I1 = I2] f3(I7, I8, I9, I10) -> f3(I11, I8, I12, I13) [0 <= I7 - 1 /\ 0 <= I10 - 1 /\ 0 <= I9 - 1 /\ I7 <= I11 - 1 /\ I7 <= I8 - 1 /\ I12 <= I9 - 1 /\ I13 <= I10 - 1 /\ I7 <= I14 - 1] f2(I15, I16, I17, I18) -> f3(0, I17, I17, 0) [0 <= I17 - 1 /\ I16 <= 0] f2(I19, I20, I21, I22) -> f2(I19 - 1, I19, 1, I23) [0 <= I20 - 1] f2(I24, I25, I26, I27) -> f2(I24 - 1, I24, I28, I29) [0 <= I26 - 1 /\ I26 <= I28 - 1 /\ 0 <= I25 - 1] f1(I30, I31, I32, I33) -> f2(I31 - 1, I31, 0, I34) [-1 <= I31 - 1 /\ 0 <= I30 - 1] We use the basic value criterion with the projection function NU: NU[f3#(z1,z2,z3,z4)] = z3 This gives the following inequalities: I5 <= I1 - 1 /\ 0 <= I1 - 1 /\ I6 <= y1 - 1 /\ -1 <= y1 - 1 /\ I1 = I2 ==> I2 >! I5 0 <= I7 - 1 /\ 0 <= I10 - 1 /\ 0 <= I9 - 1 /\ I7 <= I11 - 1 /\ I7 <= I8 - 1 /\ I12 <= I9 - 1 /\ I13 <= I10 - 1 /\ I7 <= I14 - 1 ==> I9 >! I12 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. DP problem for innermost termination. P = f2#(I19, I20, I21, I22) -> f2#(I19 - 1, I19, 1, I23) [0 <= I20 - 1] f2#(I24, I25, I26, I27) -> f2#(I24 - 1, I24, I28, I29) [0 <= I26 - 1 /\ I26 <= I28 - 1 /\ 0 <= I25 - 1] R = init(x1, x2, x3, x4) -> f1(rnd1, rnd2, rnd3, rnd4) f3(I0, I1, I2, I3) -> f3(1, I4, I5, I6) [I5 <= I1 - 1 /\ 0 <= I1 - 1 /\ I6 <= y1 - 1 /\ -1 <= y1 - 1 /\ I1 = I2] f3(I7, I8, I9, I10) -> f3(I11, I8, I12, I13) [0 <= I7 - 1 /\ 0 <= I10 - 1 /\ 0 <= I9 - 1 /\ I7 <= I11 - 1 /\ I7 <= I8 - 1 /\ I12 <= I9 - 1 /\ I13 <= I10 - 1 /\ I7 <= I14 - 1] f2(I15, I16, I17, I18) -> f3(0, I17, I17, 0) [0 <= I17 - 1 /\ I16 <= 0] f2(I19, I20, I21, I22) -> f2(I19 - 1, I19, 1, I23) [0 <= I20 - 1] f2(I24, I25, I26, I27) -> f2(I24 - 1, I24, I28, I29) [0 <= I26 - 1 /\ I26 <= I28 - 1 /\ 0 <= I25 - 1] f1(I30, I31, I32, I33) -> f2(I31 - 1, I31, 0, I34) [-1 <= I31 - 1 /\ 0 <= I30 - 1]