YES DP problem for innermost termination. P = f7#(x1, x2, x3, x4, x5, x6, x7, x8) -> f1#(x1, x2, x3, x4, x5, x6, x7, x8) f6#(I0, I1, I2, I3, I4, I5, I6, I7) -> f3#(I0, I1, I2, I3, I4, I5, I6, I7) f3#(I8, I9, I10, I11, I12, I13, I14, I15) -> f6#(I8, I9, -1 + I10, I11, rnd5, -1 + I13, I14, rnd8) [1 <= rnd8 /\ -1 + rnd8 <= -1 + I13 /\ -1 + I13 <= -1 + rnd8 /\ -1 + rnd5 <= -1 + I10 /\ -1 + I10 <= -1 + rnd5 /\ 1 <= I13 /\ rnd8 = rnd8 /\ rnd5 = rnd5] f3#(I16, I17, I18, I19, I20, I21, I22, I23) -> f2#(I16, I17, I18, I19, I20, I21, I22, I23) [I21 <= 0 /\ I21 <= 0] f5#(I24, I25, I26, I27, I28, I29, I30, I31) -> f3#(I24, I25, -1 + I26, rnd4, I28, -1 + I29, rnd7, I31) [1 <= rnd7 /\ 1 <= rnd4 /\ -1 + rnd7 <= -1 + I29 /\ -1 + I29 <= -1 + rnd7 /\ -1 + rnd4 <= -1 + I26 /\ -1 + I26 <= -1 + rnd4 /\ 1 <= I29 /\ rnd7 = rnd7 /\ rnd4 = rnd4] f2#(I40, I41, I42, I43, I44, I45, I46, I47) -> f3#(I40, I41, I42, I43, I44, rnd6, I46, I47) [1 <= I42 /\ 1 <= rnd6 /\ rnd6 = rnd6 /\ 1 <= I42] f1#(I48, I49, I50, I51, I52, I53, I54, I55) -> f2#(I48, I49, rnd3, I51, I52, I56, I54, I55) [I56 = I56 /\ rnd3 = rnd3] R = f7(x1, x2, x3, x4, x5, x6, x7, x8) -> f1(x1, x2, x3, x4, x5, x6, x7, x8) f6(I0, I1, I2, I3, I4, I5, I6, I7) -> f3(I0, I1, I2, I3, I4, I5, I6, I7) f3(I8, I9, I10, I11, I12, I13, I14, I15) -> f6(I8, I9, -1 + I10, I11, rnd5, -1 + I13, I14, rnd8) [1 <= rnd8 /\ -1 + rnd8 <= -1 + I13 /\ -1 + I13 <= -1 + rnd8 /\ -1 + rnd5 <= -1 + I10 /\ -1 + I10 <= -1 + rnd5 /\ 1 <= I13 /\ rnd8 = rnd8 /\ rnd5 = rnd5] f3(I16, I17, I18, I19, I20, I21, I22, I23) -> f2(I16, I17, I18, I19, I20, I21, I22, I23) [I21 <= 0 /\ I21 <= 0] f5(I24, I25, I26, I27, I28, I29, I30, I31) -> f3(I24, I25, -1 + I26, rnd4, I28, -1 + I29, rnd7, I31) [1 <= rnd7 /\ 1 <= rnd4 /\ -1 + rnd7 <= -1 + I29 /\ -1 + I29 <= -1 + rnd7 /\ -1 + rnd4 <= -1 + I26 /\ -1 + I26 <= -1 + rnd4 /\ 1 <= I29 /\ rnd7 = rnd7 /\ rnd4 = rnd4] f2(I32, I33, I34, I35, I36, I37, I38, I39) -> f4(I33, I33, I34, I35, I36, I37, I38, I39) [I34 <= 0] f2(I40, I41, I42, I43, I44, I45, I46, I47) -> f3(I40, I41, I42, I43, I44, rnd6, I46, I47) [1 <= I42 /\ 1 <= rnd6 /\ rnd6 = rnd6 /\ 1 <= I42] f1(I48, I49, I50, I51, I52, I53, I54, I55) -> f2(I48, I49, rnd3, I51, I52, I56, I54, I55) [I56 = I56 /\ rnd3 = rnd3] The dependency graph for this problem is: 0 -> 6 1 -> 2, 3 2 -> 1 3 -> 5 4 -> 2, 3 5 -> 2 6 -> 5 Where: 0) f7#(x1, x2, x3, x4, x5, x6, x7, x8) -> f1#(x1, x2, x3, x4, x5, x6, x7, x8) 1) f6#(I0, I1, I2, I3, I4, I5, I6, I7) -> f3#(I0, I1, I2, I3, I4, I5, I6, I7) 2) f3#(I8, I9, I10, I11, I12, I13, I14, I15) -> f6#(I8, I9, -1 + I10, I11, rnd5, -1 + I13, I14, rnd8) [1 <= rnd8 /\ -1 + rnd8 <= -1 + I13 /\ -1 + I13 <= -1 + rnd8 /\ -1 + rnd5 <= -1 + I10 /\ -1 + I10 <= -1 + rnd5 /\ 1 <= I13 /\ rnd8 = rnd8 /\ rnd5 = rnd5] 3) f3#(I16, I17, I18, I19, I20, I21, I22, I23) -> f2#(I16, I17, I18, I19, I20, I21, I22, I23) [I21 <= 0 /\ I21 <= 0] 4) f5#(I24, I25, I26, I27, I28, I29, I30, I31) -> f3#(I24, I25, -1 + I26, rnd4, I28, -1 + I29, rnd7, I31) [1 <= rnd7 /\ 1 <= rnd4 /\ -1 + rnd7 <= -1 + I29 /\ -1 + I29 <= -1 + rnd7 /\ -1 + rnd4 <= -1 + I26 /\ -1 + I26 <= -1 + rnd4 /\ 1 <= I29 /\ rnd7 = rnd7 /\ rnd4 = rnd4] 5) f2#(I40, I41, I42, I43, I44, I45, I46, I47) -> f3#(I40, I41, I42, I43, I44, rnd6, I46, I47) [1 <= I42 /\ 1 <= rnd6 /\ rnd6 = rnd6 /\ 1 <= I42] 6) f1#(I48, I49, I50, I51, I52, I53, I54, I55) -> f2#(I48, I49, rnd3, I51, I52, I56, I54, I55) [I56 = I56 /\ rnd3 = rnd3] We have the following SCCs. { 1, 2, 3, 5 } DP problem for innermost termination. P = f6#(I0, I1, I2, I3, I4, I5, I6, I7) -> f3#(I0, I1, I2, I3, I4, I5, I6, I7) f3#(I8, I9, I10, I11, I12, I13, I14, I15) -> f6#(I8, I9, -1 + I10, I11, rnd5, -1 + I13, I14, rnd8) [1 <= rnd8 /\ -1 + rnd8 <= -1 + I13 /\ -1 + I13 <= -1 + rnd8 /\ -1 + rnd5 <= -1 + I10 /\ -1 + I10 <= -1 + rnd5 /\ 1 <= I13 /\ rnd8 = rnd8 /\ rnd5 = rnd5] f3#(I16, I17, I18, I19, I20, I21, I22, I23) -> f2#(I16, I17, I18, I19, I20, I21, I22, I23) [I21 <= 0 /\ I21 <= 0] f2#(I40, I41, I42, I43, I44, I45, I46, I47) -> f3#(I40, I41, I42, I43, I44, rnd6, I46, I47) [1 <= I42 /\ 1 <= rnd6 /\ rnd6 = rnd6 /\ 1 <= I42] R = f7(x1, x2, x3, x4, x5, x6, x7, x8) -> f1(x1, x2, x3, x4, x5, x6, x7, x8) f6(I0, I1, I2, I3, I4, I5, I6, I7) -> f3(I0, I1, I2, I3, I4, I5, I6, I7) f3(I8, I9, I10, I11, I12, I13, I14, I15) -> f6(I8, I9, -1 + I10, I11, rnd5, -1 + I13, I14, rnd8) [1 <= rnd8 /\ -1 + rnd8 <= -1 + I13 /\ -1 + I13 <= -1 + rnd8 /\ -1 + rnd5 <= -1 + I10 /\ -1 + I10 <= -1 + rnd5 /\ 1 <= I13 /\ rnd8 = rnd8 /\ rnd5 = rnd5] f3(I16, I17, I18, I19, I20, I21, I22, I23) -> f2(I16, I17, I18, I19, I20, I21, I22, I23) [I21 <= 0 /\ I21 <= 0] f5(I24, I25, I26, I27, I28, I29, I30, I31) -> f3(I24, I25, -1 + I26, rnd4, I28, -1 + I29, rnd7, I31) [1 <= rnd7 /\ 1 <= rnd4 /\ -1 + rnd7 <= -1 + I29 /\ -1 + I29 <= -1 + rnd7 /\ -1 + rnd4 <= -1 + I26 /\ -1 + I26 <= -1 + rnd4 /\ 1 <= I29 /\ rnd7 = rnd7 /\ rnd4 = rnd4] f2(I32, I33, I34, I35, I36, I37, I38, I39) -> f4(I33, I33, I34, I35, I36, I37, I38, I39) [I34 <= 0] f2(I40, I41, I42, I43, I44, I45, I46, I47) -> f3(I40, I41, I42, I43, I44, rnd6, I46, I47) [1 <= I42 /\ 1 <= rnd6 /\ rnd6 = rnd6 /\ 1 <= I42] f1(I48, I49, I50, I51, I52, I53, I54, I55) -> f2(I48, I49, rnd3, I51, I52, I56, I54, I55) [I56 = I56 /\ rnd3 = rnd3] We use the extended value criterion with the projection function NU: NU[f2#(x0,x1,x2,x3,x4,x5,x6,x7)] = x2 - 1 NU[f3#(x0,x1,x2,x3,x4,x5,x6,x7)] = x2 - x5 - 1 NU[f6#(x0,x1,x2,x3,x4,x5,x6,x7)] = x2 - x5 - 1 This gives the following inequalities: ==> I2 - I5 - 1 >= I2 - I5 - 1 1 <= rnd8 /\ -1 + rnd8 <= -1 + I13 /\ -1 + I13 <= -1 + rnd8 /\ -1 + rnd5 <= -1 + I10 /\ -1 + I10 <= -1 + rnd5 /\ 1 <= I13 /\ rnd8 = rnd8 /\ rnd5 = rnd5 ==> I10 - I13 - 1 >= (-1 + I10) - (-1 + I13) - 1 I21 <= 0 /\ I21 <= 0 ==> I18 - I21 - 1 >= I18 - 1 1 <= I42 /\ 1 <= rnd6 /\ rnd6 = rnd6 /\ 1 <= I42 ==> I42 - 1 > I42 - rnd6 - 1 with I42 - 1 >= 0 We remove all the strictly oriented dependency pairs. DP problem for innermost termination. P = f6#(I0, I1, I2, I3, I4, I5, I6, I7) -> f3#(I0, I1, I2, I3, I4, I5, I6, I7) f3#(I8, I9, I10, I11, I12, I13, I14, I15) -> f6#(I8, I9, -1 + I10, I11, rnd5, -1 + I13, I14, rnd8) [1 <= rnd8 /\ -1 + rnd8 <= -1 + I13 /\ -1 + I13 <= -1 + rnd8 /\ -1 + rnd5 <= -1 + I10 /\ -1 + I10 <= -1 + rnd5 /\ 1 <= I13 /\ rnd8 = rnd8 /\ rnd5 = rnd5] f3#(I16, I17, I18, I19, I20, I21, I22, I23) -> f2#(I16, I17, I18, I19, I20, I21, I22, I23) [I21 <= 0 /\ I21 <= 0] R = f7(x1, x2, x3, x4, x5, x6, x7, x8) -> f1(x1, x2, x3, x4, x5, x6, x7, x8) f6(I0, I1, I2, I3, I4, I5, I6, I7) -> f3(I0, I1, I2, I3, I4, I5, I6, I7) f3(I8, I9, I10, I11, I12, I13, I14, I15) -> f6(I8, I9, -1 + I10, I11, rnd5, -1 + I13, I14, rnd8) [1 <= rnd8 /\ -1 + rnd8 <= -1 + I13 /\ -1 + I13 <= -1 + rnd8 /\ -1 + rnd5 <= -1 + I10 /\ -1 + I10 <= -1 + rnd5 /\ 1 <= I13 /\ rnd8 = rnd8 /\ rnd5 = rnd5] f3(I16, I17, I18, I19, I20, I21, I22, I23) -> f2(I16, I17, I18, I19, I20, I21, I22, I23) [I21 <= 0 /\ I21 <= 0] f5(I24, I25, I26, I27, I28, I29, I30, I31) -> f3(I24, I25, -1 + I26, rnd4, I28, -1 + I29, rnd7, I31) [1 <= rnd7 /\ 1 <= rnd4 /\ -1 + rnd7 <= -1 + I29 /\ -1 + I29 <= -1 + rnd7 /\ -1 + rnd4 <= -1 + I26 /\ -1 + I26 <= -1 + rnd4 /\ 1 <= I29 /\ rnd7 = rnd7 /\ rnd4 = rnd4] f2(I32, I33, I34, I35, I36, I37, I38, I39) -> f4(I33, I33, I34, I35, I36, I37, I38, I39) [I34 <= 0] f2(I40, I41, I42, I43, I44, I45, I46, I47) -> f3(I40, I41, I42, I43, I44, rnd6, I46, I47) [1 <= I42 /\ 1 <= rnd6 /\ rnd6 = rnd6 /\ 1 <= I42] f1(I48, I49, I50, I51, I52, I53, I54, I55) -> f2(I48, I49, rnd3, I51, I52, I56, I54, I55) [I56 = I56 /\ rnd3 = rnd3] The dependency graph for this problem is: 1 -> 2, 3 2 -> 1 3 -> Where: 1) f6#(I0, I1, I2, I3, I4, I5, I6, I7) -> f3#(I0, I1, I2, I3, I4, I5, I6, I7) 2) f3#(I8, I9, I10, I11, I12, I13, I14, I15) -> f6#(I8, I9, -1 + I10, I11, rnd5, -1 + I13, I14, rnd8) [1 <= rnd8 /\ -1 + rnd8 <= -1 + I13 /\ -1 + I13 <= -1 + rnd8 /\ -1 + rnd5 <= -1 + I10 /\ -1 + I10 <= -1 + rnd5 /\ 1 <= I13 /\ rnd8 = rnd8 /\ rnd5 = rnd5] 3) f3#(I16, I17, I18, I19, I20, I21, I22, I23) -> f2#(I16, I17, I18, I19, I20, I21, I22, I23) [I21 <= 0 /\ I21 <= 0] We have the following SCCs. { 1, 2 } DP problem for innermost termination. P = f6#(I0, I1, I2, I3, I4, I5, I6, I7) -> f3#(I0, I1, I2, I3, I4, I5, I6, I7) f3#(I8, I9, I10, I11, I12, I13, I14, I15) -> f6#(I8, I9, -1 + I10, I11, rnd5, -1 + I13, I14, rnd8) [1 <= rnd8 /\ -1 + rnd8 <= -1 + I13 /\ -1 + I13 <= -1 + rnd8 /\ -1 + rnd5 <= -1 + I10 /\ -1 + I10 <= -1 + rnd5 /\ 1 <= I13 /\ rnd8 = rnd8 /\ rnd5 = rnd5] R = f7(x1, x2, x3, x4, x5, x6, x7, x8) -> f1(x1, x2, x3, x4, x5, x6, x7, x8) f6(I0, I1, I2, I3, I4, I5, I6, I7) -> f3(I0, I1, I2, I3, I4, I5, I6, I7) f3(I8, I9, I10, I11, I12, I13, I14, I15) -> f6(I8, I9, -1 + I10, I11, rnd5, -1 + I13, I14, rnd8) [1 <= rnd8 /\ -1 + rnd8 <= -1 + I13 /\ -1 + I13 <= -1 + rnd8 /\ -1 + rnd5 <= -1 + I10 /\ -1 + I10 <= -1 + rnd5 /\ 1 <= I13 /\ rnd8 = rnd8 /\ rnd5 = rnd5] f3(I16, I17, I18, I19, I20, I21, I22, I23) -> f2(I16, I17, I18, I19, I20, I21, I22, I23) [I21 <= 0 /\ I21 <= 0] f5(I24, I25, I26, I27, I28, I29, I30, I31) -> f3(I24, I25, -1 + I26, rnd4, I28, -1 + I29, rnd7, I31) [1 <= rnd7 /\ 1 <= rnd4 /\ -1 + rnd7 <= -1 + I29 /\ -1 + I29 <= -1 + rnd7 /\ -1 + rnd4 <= -1 + I26 /\ -1 + I26 <= -1 + rnd4 /\ 1 <= I29 /\ rnd7 = rnd7 /\ rnd4 = rnd4] f2(I32, I33, I34, I35, I36, I37, I38, I39) -> f4(I33, I33, I34, I35, I36, I37, I38, I39) [I34 <= 0] f2(I40, I41, I42, I43, I44, I45, I46, I47) -> f3(I40, I41, I42, I43, I44, rnd6, I46, I47) [1 <= I42 /\ 1 <= rnd6 /\ rnd6 = rnd6 /\ 1 <= I42] f1(I48, I49, I50, I51, I52, I53, I54, I55) -> f2(I48, I49, rnd3, I51, I52, I56, I54, I55) [I56 = I56 /\ rnd3 = rnd3] We use the basic value criterion with the projection function NU: NU[f3#(z1,z2,z3,z4,z5,z6,z7,z8)] = z6 NU[f6#(z1,z2,z3,z4,z5,z6,z7,z8)] = z6 This gives the following inequalities: ==> I5 (>! \union =) I5 1 <= rnd8 /\ -1 + rnd8 <= -1 + I13 /\ -1 + I13 <= -1 + rnd8 /\ -1 + rnd5 <= -1 + I10 /\ -1 + I10 <= -1 + rnd5 /\ 1 <= I13 /\ rnd8 = rnd8 /\ rnd5 = rnd5 ==> I13 >! -1 + I13 We remove all the strictly oriented dependency pairs. DP problem for innermost termination. P = f6#(I0, I1, I2, I3, I4, I5, I6, I7) -> f3#(I0, I1, I2, I3, I4, I5, I6, I7) R = f7(x1, x2, x3, x4, x5, x6, x7, x8) -> f1(x1, x2, x3, x4, x5, x6, x7, x8) f6(I0, I1, I2, I3, I4, I5, I6, I7) -> f3(I0, I1, I2, I3, I4, I5, I6, I7) f3(I8, I9, I10, I11, I12, I13, I14, I15) -> f6(I8, I9, -1 + I10, I11, rnd5, -1 + I13, I14, rnd8) [1 <= rnd8 /\ -1 + rnd8 <= -1 + I13 /\ -1 + I13 <= -1 + rnd8 /\ -1 + rnd5 <= -1 + I10 /\ -1 + I10 <= -1 + rnd5 /\ 1 <= I13 /\ rnd8 = rnd8 /\ rnd5 = rnd5] f3(I16, I17, I18, I19, I20, I21, I22, I23) -> f2(I16, I17, I18, I19, I20, I21, I22, I23) [I21 <= 0 /\ I21 <= 0] f5(I24, I25, I26, I27, I28, I29, I30, I31) -> f3(I24, I25, -1 + I26, rnd4, I28, -1 + I29, rnd7, I31) [1 <= rnd7 /\ 1 <= rnd4 /\ -1 + rnd7 <= -1 + I29 /\ -1 + I29 <= -1 + rnd7 /\ -1 + rnd4 <= -1 + I26 /\ -1 + I26 <= -1 + rnd4 /\ 1 <= I29 /\ rnd7 = rnd7 /\ rnd4 = rnd4] f2(I32, I33, I34, I35, I36, I37, I38, I39) -> f4(I33, I33, I34, I35, I36, I37, I38, I39) [I34 <= 0] f2(I40, I41, I42, I43, I44, I45, I46, I47) -> f3(I40, I41, I42, I43, I44, rnd6, I46, I47) [1 <= I42 /\ 1 <= rnd6 /\ rnd6 = rnd6 /\ 1 <= I42] f1(I48, I49, I50, I51, I52, I53, I54, I55) -> f2(I48, I49, rnd3, I51, I52, I56, I54, I55) [I56 = I56 /\ rnd3 = rnd3] The dependency graph for this problem is: 1 -> Where: 1) f6#(I0, I1, I2, I3, I4, I5, I6, I7) -> f3#(I0, I1, I2, I3, I4, I5, I6, I7) We have the following SCCs.