/export/starexec/sandbox/solver/bin/starexec_run_Transition /export/starexec/sandbox/benchmark/theBenchmark.smt2 /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- YES DP problem for innermost termination. P = init#(x1, x2, x3) -> f1#(rnd1, rnd2, rnd3) f5#(I0, I1, I2) -> f5#(I0 - 1, I3, I4) [0 <= I0 - 1] f1#(I5, I6, I7) -> f5#(I8, I9, I10) [-1 <= y2 - 1 /\ 1 <= I6 - 1 /\ -1 <= y1 - 1 /\ 0 <= I5 - 1 /\ y1 - 1 = I8] f4#(I11, I12, I13) -> f3#(I14, I15, I16) [-1 <= I13 - 1 /\ 0 <= I12 - 1 /\ I15 <= I13 - 1 /\ I15 <= I12 - 1 /\ I11 - 2 * I17 = 1 /\ I14 <= I11 /\ 0 <= I15 - 1 /\ 0 <= I11 - 2 * I17 /\ I11 - 2 * I17 <= 1 /\ I11 - 2 * I14 <= 1 /\ 0 <= I11 - 2 * I14 /\ I15 = I16] f3#(I18, I19, I20) -> f4#(I18, I19, I20) [-1 <= I20 - 1 /\ 0 <= I19 - 1 /\ I21 <= I20 - 1 /\ I21 <= I19 - 1 /\ I18 - 2 * I22 = 1 /\ 0 <= I21 - 1 /\ y3 <= I18] f4#(I23, I24, I25) -> f3#(I26, I27, I28) [-1 <= I25 - 1 /\ 0 <= I24 - 1 /\ I28 <= I25 - 1 /\ I29 <= I24 - 1 /\ I23 - 2 * I30 = 1 /\ I26 <= I23 /\ -1 <= I29 - 1 /\ 0 <= I28 - 1 /\ I27 <= I29 /\ 0 <= I23 - 2 * I30 /\ I23 - 2 * I30 <= 1 /\ I23 - 2 * I26 <= 1 /\ 0 <= I23 - 2 * I26] f3#(I31, I32, I33) -> f4#(I31, I32, I33) [-1 <= I33 - 1 /\ 0 <= I32 - 1 /\ I34 <= I33 - 1 /\ I35 <= I32 - 1 /\ I31 - 2 * I36 = 1 /\ y4 <= I31 /\ -1 <= I35 - 1 /\ y5 <= I35 /\ 0 <= I34 - 1] f4#(I37, I38, I39) -> f3#(I40, I41, I42) [-1 <= I43 - 1 /\ 0 <= I38 - 1 /\ I43 <= I42 - 1 /\ -1 <= I39 - 1 /\ I43 <= I39 - 1 /\ I43 <= I44 - 1 /\ I41 <= I38 - 1 /\ I43 <= I41 - 1 /\ I43 <= I45 - 1 /\ I37 - 2 * I46 = 0 /\ I40 <= I37 /\ 0 <= I37 - 2 * I46 /\ I37 - 2 * I46 <= 1 /\ I37 - 2 * I40 <= 1 /\ 0 <= I37 - 2 * I40] f3#(I47, I48, I49) -> f4#(I47, I48, I49) [-1 <= I50 - 1 /\ 0 <= I48 - 1 /\ I50 <= I51 - 1 /\ -1 <= I49 - 1 /\ I50 <= I49 - 1 /\ I50 <= I52 - 1 /\ I53 <= I48 - 1 /\ I50 <= I53 - 1 /\ I50 <= I54 - 1 /\ y6 <= I47 /\ I47 - 2 * y7 = 0] f2#(I55, I56, I57) -> f3#(I55, I56, I56) [0 <= I56 - 1] f1#(I58, I59, I60) -> f2#(I61, I62, I63) [-1 <= I64 - 1 /\ 1 <= I59 - 1 /\ I62 <= 0 /\ -1 <= I61 - 1 /\ 0 <= I58 - 1] f1#(I65, I66, I67) -> f2#(I68, I69, I70) [-1 <= I71 - 1 /\ 1 <= I66 - 1 /\ -1 <= I68 - 1 /\ I69 <= I72 - 1 /\ -1 <= I72 - 1 /\ 0 <= I65 - 1] R = init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) f5(I0, I1, I2) -> f5(I0 - 1, I3, I4) [0 <= I0 - 1] f1(I5, I6, I7) -> f5(I8, I9, I10) [-1 <= y2 - 1 /\ 1 <= I6 - 1 /\ -1 <= y1 - 1 /\ 0 <= I5 - 1 /\ y1 - 1 = I8] f4(I11, I12, I13) -> f3(I14, I15, I16) [-1 <= I13 - 1 /\ 0 <= I12 - 1 /\ I15 <= I13 - 1 /\ I15 <= I12 - 1 /\ I11 - 2 * I17 = 1 /\ I14 <= I11 /\ 0 <= I15 - 1 /\ 0 <= I11 - 2 * I17 /\ I11 - 2 * I17 <= 1 /\ I11 - 2 * I14 <= 1 /\ 0 <= I11 - 2 * I14 /\ I15 = I16] f3(I18, I19, I20) -> f4(I18, I19, I20) [-1 <= I20 - 1 /\ 0 <= I19 - 1 /\ I21 <= I20 - 1 /\ I21 <= I19 - 1 /\ I18 - 2 * I22 = 1 /\ 0 <= I21 - 1 /\ y3 <= I18] f4(I23, I24, I25) -> f3(I26, I27, I28) [-1 <= I25 - 1 /\ 0 <= I24 - 1 /\ I28 <= I25 - 1 /\ I29 <= I24 - 1 /\ I23 - 2 * I30 = 1 /\ I26 <= I23 /\ -1 <= I29 - 1 /\ 0 <= I28 - 1 /\ I27 <= I29 /\ 0 <= I23 - 2 * I30 /\ I23 - 2 * I30 <= 1 /\ I23 - 2 * I26 <= 1 /\ 0 <= I23 - 2 * I26] f3(I31, I32, I33) -> f4(I31, I32, I33) [-1 <= I33 - 1 /\ 0 <= I32 - 1 /\ I34 <= I33 - 1 /\ I35 <= I32 - 1 /\ I31 - 2 * I36 = 1 /\ y4 <= I31 /\ -1 <= I35 - 1 /\ y5 <= I35 /\ 0 <= I34 - 1] f4(I37, I38, I39) -> f3(I40, I41, I42) [-1 <= I43 - 1 /\ 0 <= I38 - 1 /\ I43 <= I42 - 1 /\ -1 <= I39 - 1 /\ I43 <= I39 - 1 /\ I43 <= I44 - 1 /\ I41 <= I38 - 1 /\ I43 <= I41 - 1 /\ I43 <= I45 - 1 /\ I37 - 2 * I46 = 0 /\ I40 <= I37 /\ 0 <= I37 - 2 * I46 /\ I37 - 2 * I46 <= 1 /\ I37 - 2 * I40 <= 1 /\ 0 <= I37 - 2 * I40] f3(I47, I48, I49) -> f4(I47, I48, I49) [-1 <= I50 - 1 /\ 0 <= I48 - 1 /\ I50 <= I51 - 1 /\ -1 <= I49 - 1 /\ I50 <= I49 - 1 /\ I50 <= I52 - 1 /\ I53 <= I48 - 1 /\ I50 <= I53 - 1 /\ I50 <= I54 - 1 /\ y6 <= I47 /\ I47 - 2 * y7 = 0] f2(I55, I56, I57) -> f3(I55, I56, I56) [0 <= I56 - 1] f1(I58, I59, I60) -> f2(I61, I62, I63) [-1 <= I64 - 1 /\ 1 <= I59 - 1 /\ I62 <= 0 /\ -1 <= I61 - 1 /\ 0 <= I58 - 1] f1(I65, I66, I67) -> f2(I68, I69, I70) [-1 <= I71 - 1 /\ 1 <= I66 - 1 /\ -1 <= I68 - 1 /\ I69 <= I72 - 1 /\ -1 <= I72 - 1 /\ 0 <= I65 - 1] The dependency graph for this problem is: 0 -> 2, 10, 11 1 -> 1 2 -> 1 3 -> 4, 6, 8 4 -> 3, 5 5 -> 4, 6, 8 6 -> 3, 5 7 -> 4, 6, 8 8 -> 7 9 -> 4, 6, 8 10 -> 11 -> 9 Where: 0) init#(x1, x2, x3) -> f1#(rnd1, rnd2, rnd3) 1) f5#(I0, I1, I2) -> f5#(I0 - 1, I3, I4) [0 <= I0 - 1] 2) f1#(I5, I6, I7) -> f5#(I8, I9, I10) [-1 <= y2 - 1 /\ 1 <= I6 - 1 /\ -1 <= y1 - 1 /\ 0 <= I5 - 1 /\ y1 - 1 = I8] 3) f4#(I11, I12, I13) -> f3#(I14, I15, I16) [-1 <= I13 - 1 /\ 0 <= I12 - 1 /\ I15 <= I13 - 1 /\ I15 <= I12 - 1 /\ I11 - 2 * I17 = 1 /\ I14 <= I11 /\ 0 <= I15 - 1 /\ 0 <= I11 - 2 * I17 /\ I11 - 2 * I17 <= 1 /\ I11 - 2 * I14 <= 1 /\ 0 <= I11 - 2 * I14 /\ I15 = I16] 4) f3#(I18, I19, I20) -> f4#(I18, I19, I20) [-1 <= I20 - 1 /\ 0 <= I19 - 1 /\ I21 <= I20 - 1 /\ I21 <= I19 - 1 /\ I18 - 2 * I22 = 1 /\ 0 <= I21 - 1 /\ y3 <= I18] 5) f4#(I23, I24, I25) -> f3#(I26, I27, I28) [-1 <= I25 - 1 /\ 0 <= I24 - 1 /\ I28 <= I25 - 1 /\ I29 <= I24 - 1 /\ I23 - 2 * I30 = 1 /\ I26 <= I23 /\ -1 <= I29 - 1 /\ 0 <= I28 - 1 /\ I27 <= I29 /\ 0 <= I23 - 2 * I30 /\ I23 - 2 * I30 <= 1 /\ I23 - 2 * I26 <= 1 /\ 0 <= I23 - 2 * I26] 6) f3#(I31, I32, I33) -> f4#(I31, I32, I33) [-1 <= I33 - 1 /\ 0 <= I32 - 1 /\ I34 <= I33 - 1 /\ I35 <= I32 - 1 /\ I31 - 2 * I36 = 1 /\ y4 <= I31 /\ -1 <= I35 - 1 /\ y5 <= I35 /\ 0 <= I34 - 1] 7) f4#(I37, I38, I39) -> f3#(I40, I41, I42) [-1 <= I43 - 1 /\ 0 <= I38 - 1 /\ I43 <= I42 - 1 /\ -1 <= I39 - 1 /\ I43 <= I39 - 1 /\ I43 <= I44 - 1 /\ I41 <= I38 - 1 /\ I43 <= I41 - 1 /\ I43 <= I45 - 1 /\ I37 - 2 * I46 = 0 /\ I40 <= I37 /\ 0 <= I37 - 2 * I46 /\ I37 - 2 * I46 <= 1 /\ I37 - 2 * I40 <= 1 /\ 0 <= I37 - 2 * I40] 8) f3#(I47, I48, I49) -> f4#(I47, I48, I49) [-1 <= I50 - 1 /\ 0 <= I48 - 1 /\ I50 <= I51 - 1 /\ -1 <= I49 - 1 /\ I50 <= I49 - 1 /\ I50 <= I52 - 1 /\ I53 <= I48 - 1 /\ I50 <= I53 - 1 /\ I50 <= I54 - 1 /\ y6 <= I47 /\ I47 - 2 * y7 = 0] 9) f2#(I55, I56, I57) -> f3#(I55, I56, I56) [0 <= I56 - 1] 10) f1#(I58, I59, I60) -> f2#(I61, I62, I63) [-1 <= I64 - 1 /\ 1 <= I59 - 1 /\ I62 <= 0 /\ -1 <= I61 - 1 /\ 0 <= I58 - 1] 11) f1#(I65, I66, I67) -> f2#(I68, I69, I70) [-1 <= I71 - 1 /\ 1 <= I66 - 1 /\ -1 <= I68 - 1 /\ I69 <= I72 - 1 /\ -1 <= I72 - 1 /\ 0 <= I65 - 1] We have the following SCCs. { 1 } { 3, 4, 5, 6, 7, 8 } DP problem for innermost termination. P = f4#(I11, I12, I13) -> f3#(I14, I15, I16) [-1 <= I13 - 1 /\ 0 <= I12 - 1 /\ I15 <= I13 - 1 /\ I15 <= I12 - 1 /\ I11 - 2 * I17 = 1 /\ I14 <= I11 /\ 0 <= I15 - 1 /\ 0 <= I11 - 2 * I17 /\ I11 - 2 * I17 <= 1 /\ I11 - 2 * I14 <= 1 /\ 0 <= I11 - 2 * I14 /\ I15 = I16] f3#(I18, I19, I20) -> f4#(I18, I19, I20) [-1 <= I20 - 1 /\ 0 <= I19 - 1 /\ I21 <= I20 - 1 /\ I21 <= I19 - 1 /\ I18 - 2 * I22 = 1 /\ 0 <= I21 - 1 /\ y3 <= I18] f4#(I23, I24, I25) -> f3#(I26, I27, I28) [-1 <= I25 - 1 /\ 0 <= I24 - 1 /\ I28 <= I25 - 1 /\ I29 <= I24 - 1 /\ I23 - 2 * I30 = 1 /\ I26 <= I23 /\ -1 <= I29 - 1 /\ 0 <= I28 - 1 /\ I27 <= I29 /\ 0 <= I23 - 2 * I30 /\ I23 - 2 * I30 <= 1 /\ I23 - 2 * I26 <= 1 /\ 0 <= I23 - 2 * I26] f3#(I31, I32, I33) -> f4#(I31, I32, I33) [-1 <= I33 - 1 /\ 0 <= I32 - 1 /\ I34 <= I33 - 1 /\ I35 <= I32 - 1 /\ I31 - 2 * I36 = 1 /\ y4 <= I31 /\ -1 <= I35 - 1 /\ y5 <= I35 /\ 0 <= I34 - 1] f4#(I37, I38, I39) -> f3#(I40, I41, I42) [-1 <= I43 - 1 /\ 0 <= I38 - 1 /\ I43 <= I42 - 1 /\ -1 <= I39 - 1 /\ I43 <= I39 - 1 /\ I43 <= I44 - 1 /\ I41 <= I38 - 1 /\ I43 <= I41 - 1 /\ I43 <= I45 - 1 /\ I37 - 2 * I46 = 0 /\ I40 <= I37 /\ 0 <= I37 - 2 * I46 /\ I37 - 2 * I46 <= 1 /\ I37 - 2 * I40 <= 1 /\ 0 <= I37 - 2 * I40] f3#(I47, I48, I49) -> f4#(I47, I48, I49) [-1 <= I50 - 1 /\ 0 <= I48 - 1 /\ I50 <= I51 - 1 /\ -1 <= I49 - 1 /\ I50 <= I49 - 1 /\ I50 <= I52 - 1 /\ I53 <= I48 - 1 /\ I50 <= I53 - 1 /\ I50 <= I54 - 1 /\ y6 <= I47 /\ I47 - 2 * y7 = 0] R = init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) f5(I0, I1, I2) -> f5(I0 - 1, I3, I4) [0 <= I0 - 1] f1(I5, I6, I7) -> f5(I8, I9, I10) [-1 <= y2 - 1 /\ 1 <= I6 - 1 /\ -1 <= y1 - 1 /\ 0 <= I5 - 1 /\ y1 - 1 = I8] f4(I11, I12, I13) -> f3(I14, I15, I16) [-1 <= I13 - 1 /\ 0 <= I12 - 1 /\ I15 <= I13 - 1 /\ I15 <= I12 - 1 /\ I11 - 2 * I17 = 1 /\ I14 <= I11 /\ 0 <= I15 - 1 /\ 0 <= I11 - 2 * I17 /\ I11 - 2 * I17 <= 1 /\ I11 - 2 * I14 <= 1 /\ 0 <= I11 - 2 * I14 /\ I15 = I16] f3(I18, I19, I20) -> f4(I18, I19, I20) [-1 <= I20 - 1 /\ 0 <= I19 - 1 /\ I21 <= I20 - 1 /\ I21 <= I19 - 1 /\ I18 - 2 * I22 = 1 /\ 0 <= I21 - 1 /\ y3 <= I18] f4(I23, I24, I25) -> f3(I26, I27, I28) [-1 <= I25 - 1 /\ 0 <= I24 - 1 /\ I28 <= I25 - 1 /\ I29 <= I24 - 1 /\ I23 - 2 * I30 = 1 /\ I26 <= I23 /\ -1 <= I29 - 1 /\ 0 <= I28 - 1 /\ I27 <= I29 /\ 0 <= I23 - 2 * I30 /\ I23 - 2 * I30 <= 1 /\ I23 - 2 * I26 <= 1 /\ 0 <= I23 - 2 * I26] f3(I31, I32, I33) -> f4(I31, I32, I33) [-1 <= I33 - 1 /\ 0 <= I32 - 1 /\ I34 <= I33 - 1 /\ I35 <= I32 - 1 /\ I31 - 2 * I36 = 1 /\ y4 <= I31 /\ -1 <= I35 - 1 /\ y5 <= I35 /\ 0 <= I34 - 1] f4(I37, I38, I39) -> f3(I40, I41, I42) [-1 <= I43 - 1 /\ 0 <= I38 - 1 /\ I43 <= I42 - 1 /\ -1 <= I39 - 1 /\ I43 <= I39 - 1 /\ I43 <= I44 - 1 /\ I41 <= I38 - 1 /\ I43 <= I41 - 1 /\ I43 <= I45 - 1 /\ I37 - 2 * I46 = 0 /\ I40 <= I37 /\ 0 <= I37 - 2 * I46 /\ I37 - 2 * I46 <= 1 /\ I37 - 2 * I40 <= 1 /\ 0 <= I37 - 2 * I40] f3(I47, I48, I49) -> f4(I47, I48, I49) [-1 <= I50 - 1 /\ 0 <= I48 - 1 /\ I50 <= I51 - 1 /\ -1 <= I49 - 1 /\ I50 <= I49 - 1 /\ I50 <= I52 - 1 /\ I53 <= I48 - 1 /\ I50 <= I53 - 1 /\ I50 <= I54 - 1 /\ y6 <= I47 /\ I47 - 2 * y7 = 0] f2(I55, I56, I57) -> f3(I55, I56, I56) [0 <= I56 - 1] f1(I58, I59, I60) -> f2(I61, I62, I63) [-1 <= I64 - 1 /\ 1 <= I59 - 1 /\ I62 <= 0 /\ -1 <= I61 - 1 /\ 0 <= I58 - 1] f1(I65, I66, I67) -> f2(I68, I69, I70) [-1 <= I71 - 1 /\ 1 <= I66 - 1 /\ -1 <= I68 - 1 /\ I69 <= I72 - 1 /\ -1 <= I72 - 1 /\ 0 <= I65 - 1] We use the basic value criterion with the projection function NU: NU[f3#(z1,z2,z3)] = z2 NU[f4#(z1,z2,z3)] = z2 This gives the following inequalities: -1 <= I13 - 1 /\ 0 <= I12 - 1 /\ I15 <= I13 - 1 /\ I15 <= I12 - 1 /\ I11 - 2 * I17 = 1 /\ I14 <= I11 /\ 0 <= I15 - 1 /\ 0 <= I11 - 2 * I17 /\ I11 - 2 * I17 <= 1 /\ I11 - 2 * I14 <= 1 /\ 0 <= I11 - 2 * I14 /\ I15 = I16 ==> I12 >! I15 -1 <= I20 - 1 /\ 0 <= I19 - 1 /\ I21 <= I20 - 1 /\ I21 <= I19 - 1 /\ I18 - 2 * I22 = 1 /\ 0 <= I21 - 1 /\ y3 <= I18 ==> I19 (>! \union =) I19 -1 <= I25 - 1 /\ 0 <= I24 - 1 /\ I28 <= I25 - 1 /\ I29 <= I24 - 1 /\ I23 - 2 * I30 = 1 /\ I26 <= I23 /\ -1 <= I29 - 1 /\ 0 <= I28 - 1 /\ I27 <= I29 /\ 0 <= I23 - 2 * I30 /\ I23 - 2 * I30 <= 1 /\ I23 - 2 * I26 <= 1 /\ 0 <= I23 - 2 * I26 ==> I24 >! I27 -1 <= I33 - 1 /\ 0 <= I32 - 1 /\ I34 <= I33 - 1 /\ I35 <= I32 - 1 /\ I31 - 2 * I36 = 1 /\ y4 <= I31 /\ -1 <= I35 - 1 /\ y5 <= I35 /\ 0 <= I34 - 1 ==> I32 (>! \union =) I32 -1 <= I43 - 1 /\ 0 <= I38 - 1 /\ I43 <= I42 - 1 /\ -1 <= I39 - 1 /\ I43 <= I39 - 1 /\ I43 <= I44 - 1 /\ I41 <= I38 - 1 /\ I43 <= I41 - 1 /\ I43 <= I45 - 1 /\ I37 - 2 * I46 = 0 /\ I40 <= I37 /\ 0 <= I37 - 2 * I46 /\ I37 - 2 * I46 <= 1 /\ I37 - 2 * I40 <= 1 /\ 0 <= I37 - 2 * I40 ==> I38 >! I41 -1 <= I50 - 1 /\ 0 <= I48 - 1 /\ I50 <= I51 - 1 /\ -1 <= I49 - 1 /\ I50 <= I49 - 1 /\ I50 <= I52 - 1 /\ I53 <= I48 - 1 /\ I50 <= I53 - 1 /\ I50 <= I54 - 1 /\ y6 <= I47 /\ I47 - 2 * y7 = 0 ==> I48 (>! \union =) I48 We remove all the strictly oriented dependency pairs. DP problem for innermost termination. P = f3#(I18, I19, I20) -> f4#(I18, I19, I20) [-1 <= I20 - 1 /\ 0 <= I19 - 1 /\ I21 <= I20 - 1 /\ I21 <= I19 - 1 /\ I18 - 2 * I22 = 1 /\ 0 <= I21 - 1 /\ y3 <= I18] f3#(I31, I32, I33) -> f4#(I31, I32, I33) [-1 <= I33 - 1 /\ 0 <= I32 - 1 /\ I34 <= I33 - 1 /\ I35 <= I32 - 1 /\ I31 - 2 * I36 = 1 /\ y4 <= I31 /\ -1 <= I35 - 1 /\ y5 <= I35 /\ 0 <= I34 - 1] f3#(I47, I48, I49) -> f4#(I47, I48, I49) [-1 <= I50 - 1 /\ 0 <= I48 - 1 /\ I50 <= I51 - 1 /\ -1 <= I49 - 1 /\ I50 <= I49 - 1 /\ I50 <= I52 - 1 /\ I53 <= I48 - 1 /\ I50 <= I53 - 1 /\ I50 <= I54 - 1 /\ y6 <= I47 /\ I47 - 2 * y7 = 0] R = init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) f5(I0, I1, I2) -> f5(I0 - 1, I3, I4) [0 <= I0 - 1] f1(I5, I6, I7) -> f5(I8, I9, I10) [-1 <= y2 - 1 /\ 1 <= I6 - 1 /\ -1 <= y1 - 1 /\ 0 <= I5 - 1 /\ y1 - 1 = I8] f4(I11, I12, I13) -> f3(I14, I15, I16) [-1 <= I13 - 1 /\ 0 <= I12 - 1 /\ I15 <= I13 - 1 /\ I15 <= I12 - 1 /\ I11 - 2 * I17 = 1 /\ I14 <= I11 /\ 0 <= I15 - 1 /\ 0 <= I11 - 2 * I17 /\ I11 - 2 * I17 <= 1 /\ I11 - 2 * I14 <= 1 /\ 0 <= I11 - 2 * I14 /\ I15 = I16] f3(I18, I19, I20) -> f4(I18, I19, I20) [-1 <= I20 - 1 /\ 0 <= I19 - 1 /\ I21 <= I20 - 1 /\ I21 <= I19 - 1 /\ I18 - 2 * I22 = 1 /\ 0 <= I21 - 1 /\ y3 <= I18] f4(I23, I24, I25) -> f3(I26, I27, I28) [-1 <= I25 - 1 /\ 0 <= I24 - 1 /\ I28 <= I25 - 1 /\ I29 <= I24 - 1 /\ I23 - 2 * I30 = 1 /\ I26 <= I23 /\ -1 <= I29 - 1 /\ 0 <= I28 - 1 /\ I27 <= I29 /\ 0 <= I23 - 2 * I30 /\ I23 - 2 * I30 <= 1 /\ I23 - 2 * I26 <= 1 /\ 0 <= I23 - 2 * I26] f3(I31, I32, I33) -> f4(I31, I32, I33) [-1 <= I33 - 1 /\ 0 <= I32 - 1 /\ I34 <= I33 - 1 /\ I35 <= I32 - 1 /\ I31 - 2 * I36 = 1 /\ y4 <= I31 /\ -1 <= I35 - 1 /\ y5 <= I35 /\ 0 <= I34 - 1] f4(I37, I38, I39) -> f3(I40, I41, I42) [-1 <= I43 - 1 /\ 0 <= I38 - 1 /\ I43 <= I42 - 1 /\ -1 <= I39 - 1 /\ I43 <= I39 - 1 /\ I43 <= I44 - 1 /\ I41 <= I38 - 1 /\ I43 <= I41 - 1 /\ I43 <= I45 - 1 /\ I37 - 2 * I46 = 0 /\ I40 <= I37 /\ 0 <= I37 - 2 * I46 /\ I37 - 2 * I46 <= 1 /\ I37 - 2 * I40 <= 1 /\ 0 <= I37 - 2 * I40] f3(I47, I48, I49) -> f4(I47, I48, I49) [-1 <= I50 - 1 /\ 0 <= I48 - 1 /\ I50 <= I51 - 1 /\ -1 <= I49 - 1 /\ I50 <= I49 - 1 /\ I50 <= I52 - 1 /\ I53 <= I48 - 1 /\ I50 <= I53 - 1 /\ I50 <= I54 - 1 /\ y6 <= I47 /\ I47 - 2 * y7 = 0] f2(I55, I56, I57) -> f3(I55, I56, I56) [0 <= I56 - 1] f1(I58, I59, I60) -> f2(I61, I62, I63) [-1 <= I64 - 1 /\ 1 <= I59 - 1 /\ I62 <= 0 /\ -1 <= I61 - 1 /\ 0 <= I58 - 1] f1(I65, I66, I67) -> f2(I68, I69, I70) [-1 <= I71 - 1 /\ 1 <= I66 - 1 /\ -1 <= I68 - 1 /\ I69 <= I72 - 1 /\ -1 <= I72 - 1 /\ 0 <= I65 - 1] The dependency graph for this problem is: 4 -> 6 -> 8 -> Where: 4) f3#(I18, I19, I20) -> f4#(I18, I19, I20) [-1 <= I20 - 1 /\ 0 <= I19 - 1 /\ I21 <= I20 - 1 /\ I21 <= I19 - 1 /\ I18 - 2 * I22 = 1 /\ 0 <= I21 - 1 /\ y3 <= I18] 6) f3#(I31, I32, I33) -> f4#(I31, I32, I33) [-1 <= I33 - 1 /\ 0 <= I32 - 1 /\ I34 <= I33 - 1 /\ I35 <= I32 - 1 /\ I31 - 2 * I36 = 1 /\ y4 <= I31 /\ -1 <= I35 - 1 /\ y5 <= I35 /\ 0 <= I34 - 1] 8) f3#(I47, I48, I49) -> f4#(I47, I48, I49) [-1 <= I50 - 1 /\ 0 <= I48 - 1 /\ I50 <= I51 - 1 /\ -1 <= I49 - 1 /\ I50 <= I49 - 1 /\ I50 <= I52 - 1 /\ I53 <= I48 - 1 /\ I50 <= I53 - 1 /\ I50 <= I54 - 1 /\ y6 <= I47 /\ I47 - 2 * y7 = 0] We have the following SCCs. DP problem for innermost termination. P = f5#(I0, I1, I2) -> f5#(I0 - 1, I3, I4) [0 <= I0 - 1] R = init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) f5(I0, I1, I2) -> f5(I0 - 1, I3, I4) [0 <= I0 - 1] f1(I5, I6, I7) -> f5(I8, I9, I10) [-1 <= y2 - 1 /\ 1 <= I6 - 1 /\ -1 <= y1 - 1 /\ 0 <= I5 - 1 /\ y1 - 1 = I8] f4(I11, I12, I13) -> f3(I14, I15, I16) [-1 <= I13 - 1 /\ 0 <= I12 - 1 /\ I15 <= I13 - 1 /\ I15 <= I12 - 1 /\ I11 - 2 * I17 = 1 /\ I14 <= I11 /\ 0 <= I15 - 1 /\ 0 <= I11 - 2 * I17 /\ I11 - 2 * I17 <= 1 /\ I11 - 2 * I14 <= 1 /\ 0 <= I11 - 2 * I14 /\ I15 = I16] f3(I18, I19, I20) -> f4(I18, I19, I20) [-1 <= I20 - 1 /\ 0 <= I19 - 1 /\ I21 <= I20 - 1 /\ I21 <= I19 - 1 /\ I18 - 2 * I22 = 1 /\ 0 <= I21 - 1 /\ y3 <= I18] f4(I23, I24, I25) -> f3(I26, I27, I28) [-1 <= I25 - 1 /\ 0 <= I24 - 1 /\ I28 <= I25 - 1 /\ I29 <= I24 - 1 /\ I23 - 2 * I30 = 1 /\ I26 <= I23 /\ -1 <= I29 - 1 /\ 0 <= I28 - 1 /\ I27 <= I29 /\ 0 <= I23 - 2 * I30 /\ I23 - 2 * I30 <= 1 /\ I23 - 2 * I26 <= 1 /\ 0 <= I23 - 2 * I26] f3(I31, I32, I33) -> f4(I31, I32, I33) [-1 <= I33 - 1 /\ 0 <= I32 - 1 /\ I34 <= I33 - 1 /\ I35 <= I32 - 1 /\ I31 - 2 * I36 = 1 /\ y4 <= I31 /\ -1 <= I35 - 1 /\ y5 <= I35 /\ 0 <= I34 - 1] f4(I37, I38, I39) -> f3(I40, I41, I42) [-1 <= I43 - 1 /\ 0 <= I38 - 1 /\ I43 <= I42 - 1 /\ -1 <= I39 - 1 /\ I43 <= I39 - 1 /\ I43 <= I44 - 1 /\ I41 <= I38 - 1 /\ I43 <= I41 - 1 /\ I43 <= I45 - 1 /\ I37 - 2 * I46 = 0 /\ I40 <= I37 /\ 0 <= I37 - 2 * I46 /\ I37 - 2 * I46 <= 1 /\ I37 - 2 * I40 <= 1 /\ 0 <= I37 - 2 * I40] f3(I47, I48, I49) -> f4(I47, I48, I49) [-1 <= I50 - 1 /\ 0 <= I48 - 1 /\ I50 <= I51 - 1 /\ -1 <= I49 - 1 /\ I50 <= I49 - 1 /\ I50 <= I52 - 1 /\ I53 <= I48 - 1 /\ I50 <= I53 - 1 /\ I50 <= I54 - 1 /\ y6 <= I47 /\ I47 - 2 * y7 = 0] f2(I55, I56, I57) -> f3(I55, I56, I56) [0 <= I56 - 1] f1(I58, I59, I60) -> f2(I61, I62, I63) [-1 <= I64 - 1 /\ 1 <= I59 - 1 /\ I62 <= 0 /\ -1 <= I61 - 1 /\ 0 <= I58 - 1] f1(I65, I66, I67) -> f2(I68, I69, I70) [-1 <= I71 - 1 /\ 1 <= I66 - 1 /\ -1 <= I68 - 1 /\ I69 <= I72 - 1 /\ -1 <= I72 - 1 /\ 0 <= I65 - 1] We use the basic value criterion with the projection function NU: NU[f5#(z1,z2,z3)] = z1 This gives the following inequalities: 0 <= I0 - 1 ==> I0 >! I0 - 1 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed.