3.73/3.72 YES 3.73/3.72 3.73/3.72 DP problem for innermost termination. 3.73/3.72 P = 3.73/3.72 init#(x1, x2, x3) -> f1#(rnd1, rnd2, rnd3) 3.73/3.72 f5#(I0, I1, I2) -> f5#(I0 - 1, I3, I4) [0 <= I0 - 1] 3.73/3.72 f1#(I5, I6, I7) -> f5#(I8, I9, I10) [-1 <= y2 - 1 /\ 1 <= I6 - 1 /\ -1 <= y1 - 1 /\ 0 <= I5 - 1 /\ y1 - 1 = I8] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 f2#(I55, I56, I57) -> f3#(I55, I56, I56) [0 <= I56 - 1] 3.73/3.72 f1#(I58, I59, I60) -> f2#(I61, I62, I63) [-1 <= I64 - 1 /\ 1 <= I59 - 1 /\ I62 <= 0 /\ -1 <= I61 - 1 /\ 0 <= I58 - 1] 3.73/3.72 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] 3.73/3.72 R = 3.73/3.72 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.73/3.72 f5(I0, I1, I2) -> f5(I0 - 1, I3, I4) [0 <= I0 - 1] 3.73/3.72 f1(I5, I6, I7) -> f5(I8, I9, I10) [-1 <= y2 - 1 /\ 1 <= I6 - 1 /\ -1 <= y1 - 1 /\ 0 <= I5 - 1 /\ y1 - 1 = I8] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 f2(I55, I56, I57) -> f3(I55, I56, I56) [0 <= I56 - 1] 3.73/3.72 f1(I58, I59, I60) -> f2(I61, I62, I63) [-1 <= I64 - 1 /\ 1 <= I59 - 1 /\ I62 <= 0 /\ -1 <= I61 - 1 /\ 0 <= I58 - 1] 3.73/3.72 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] 3.73/3.72 3.73/3.72 The dependency graph for this problem is: 3.73/3.72 0 -> 2, 10, 11 3.73/3.72 1 -> 1 3.73/3.72 2 -> 1 3.73/3.72 3 -> 4, 6, 8 3.73/3.72 4 -> 3, 5 3.73/3.72 5 -> 4, 6, 8 3.73/3.72 6 -> 3, 5 3.73/3.72 7 -> 4, 6, 8 3.73/3.72 8 -> 7 3.73/3.72 9 -> 4, 6, 8 3.73/3.72 10 -> 3.73/3.72 11 -> 9 3.73/3.72 Where: 3.73/3.72 0) init#(x1, x2, x3) -> f1#(rnd1, rnd2, rnd3) 3.73/3.72 1) f5#(I0, I1, I2) -> f5#(I0 - 1, I3, I4) [0 <= I0 - 1] 3.73/3.72 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.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 9) f2#(I55, I56, I57) -> f3#(I55, I56, I56) [0 <= I56 - 1] 3.73/3.72 10) f1#(I58, I59, I60) -> f2#(I61, I62, I63) [-1 <= I64 - 1 /\ 1 <= I59 - 1 /\ I62 <= 0 /\ -1 <= I61 - 1 /\ 0 <= I58 - 1] 3.73/3.72 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] 3.73/3.72 3.73/3.72 We have the following SCCs. 3.73/3.72 { 1 } 3.73/3.72 { 3, 4, 5, 6, 7, 8 } 3.73/3.72 3.73/3.72 DP problem for innermost termination. 3.73/3.72 P = 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 R = 3.73/3.72 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.73/3.72 f5(I0, I1, I2) -> f5(I0 - 1, I3, I4) [0 <= I0 - 1] 3.73/3.72 f1(I5, I6, I7) -> f5(I8, I9, I10) [-1 <= y2 - 1 /\ 1 <= I6 - 1 /\ -1 <= y1 - 1 /\ 0 <= I5 - 1 /\ y1 - 1 = I8] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 f2(I55, I56, I57) -> f3(I55, I56, I56) [0 <= I56 - 1] 3.73/3.72 f1(I58, I59, I60) -> f2(I61, I62, I63) [-1 <= I64 - 1 /\ 1 <= I59 - 1 /\ I62 <= 0 /\ -1 <= I61 - 1 /\ 0 <= I58 - 1] 3.73/3.72 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] 3.73/3.72 3.73/3.72 We use the basic value criterion with the projection function NU: 3.73/3.72 NU[f3#(z1,z2,z3)] = z2 3.73/3.72 NU[f4#(z1,z2,z3)] = z2 3.73/3.72 3.73/3.72 This gives the following inequalities: 3.73/3.72 -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 3.73/3.72 -1 <= I20 - 1 /\ 0 <= I19 - 1 /\ I21 <= I20 - 1 /\ I21 <= I19 - 1 /\ I18 - 2 * I22 = 1 /\ 0 <= I21 - 1 /\ y3 <= I18 ==> I19 (>! \union =) I19 3.73/3.72 -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 3.73/3.72 -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 3.73/3.72 -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 3.73/3.72 -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 3.73/3.72 3.73/3.72 We remove all the strictly oriented dependency pairs. 3.73/3.72 3.73/3.72 DP problem for innermost termination. 3.73/3.72 P = 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 R = 3.73/3.72 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.73/3.72 f5(I0, I1, I2) -> f5(I0 - 1, I3, I4) [0 <= I0 - 1] 3.73/3.72 f1(I5, I6, I7) -> f5(I8, I9, I10) [-1 <= y2 - 1 /\ 1 <= I6 - 1 /\ -1 <= y1 - 1 /\ 0 <= I5 - 1 /\ y1 - 1 = I8] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 f2(I55, I56, I57) -> f3(I55, I56, I56) [0 <= I56 - 1] 3.73/3.72 f1(I58, I59, I60) -> f2(I61, I62, I63) [-1 <= I64 - 1 /\ 1 <= I59 - 1 /\ I62 <= 0 /\ -1 <= I61 - 1 /\ 0 <= I58 - 1] 3.73/3.72 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] 3.73/3.72 3.73/3.72 The dependency graph for this problem is: 3.73/3.72 4 -> 3.73/3.72 6 -> 3.73/3.72 8 -> 3.73/3.72 Where: 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 3.73/3.72 We have the following SCCs. 3.73/3.72 3.73/3.72 3.73/3.72 DP problem for innermost termination. 3.73/3.72 P = 3.73/3.72 f5#(I0, I1, I2) -> f5#(I0 - 1, I3, I4) [0 <= I0 - 1] 3.73/3.72 R = 3.73/3.72 init(x1, x2, x3) -> f1(rnd1, rnd2, rnd3) 3.73/3.72 f5(I0, I1, I2) -> f5(I0 - 1, I3, I4) [0 <= I0 - 1] 3.73/3.72 f1(I5, I6, I7) -> f5(I8, I9, I10) [-1 <= y2 - 1 /\ 1 <= I6 - 1 /\ -1 <= y1 - 1 /\ 0 <= I5 - 1 /\ y1 - 1 = I8] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 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] 3.73/3.72 f2(I55, I56, I57) -> f3(I55, I56, I56) [0 <= I56 - 1] 3.73/3.72 f1(I58, I59, I60) -> f2(I61, I62, I63) [-1 <= I64 - 1 /\ 1 <= I59 - 1 /\ I62 <= 0 /\ -1 <= I61 - 1 /\ 0 <= I58 - 1] 3.73/3.72 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] 3.73/3.72 3.73/3.72 We use the basic value criterion with the projection function NU: 3.73/3.72 NU[f5#(z1,z2,z3)] = z1 3.73/3.72 3.73/3.72 This gives the following inequalities: 3.73/3.72 0 <= I0 - 1 ==> I0 >! I0 - 1 3.73/3.72 3.73/3.72 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 3.73/6.71 EOF