MAYBE DP problem for innermost termination. P = init#(x1, x2, x3, x4) -> f1#(rnd1, rnd2, rnd3, rnd4) f3#(I0, I1, I2, I3) -> f2#(I1, I1, I1, I2) [1 <= I1 - 1 /\ 1 <= I0 - 1 /\ 0 <= I2 - 1] f2#(I4, I5, I6, I7) -> f3#(I4, I5 + 2, I7 + 1, I8) [I5 = I6 /\ -1 <= I7 - 1 /\ 0 <= I5 - 1 /\ I7 <= I5] f2#(I9, I10, I11, I12) -> f3#(I9, I10 + 4, I12, I13) [I10 = I11 /\ 0 <= I10 - 1 /\ I10 <= I12 - 1] f1#(I14, I15, I16, I17) -> f2#(2, 2, 2, 0) R = init(x1, x2, x3, x4) -> f1(rnd1, rnd2, rnd3, rnd4) f3(I0, I1, I2, I3) -> f2(I1, I1, I1, I2) [1 <= I1 - 1 /\ 1 <= I0 - 1 /\ 0 <= I2 - 1] f2(I4, I5, I6, I7) -> f3(I4, I5 + 2, I7 + 1, I8) [I5 = I6 /\ -1 <= I7 - 1 /\ 0 <= I5 - 1 /\ I7 <= I5] f2(I9, I10, I11, I12) -> f3(I9, I10 + 4, I12, I13) [I10 = I11 /\ 0 <= I10 - 1 /\ I10 <= I12 - 1] f1(I14, I15, I16, I17) -> f2(2, 2, 2, 0) The dependency graph for this problem is: 0 -> 4 1 -> 2, 3 2 -> 1 3 -> 1 4 -> 2 Where: 0) init#(x1, x2, x3, x4) -> f1#(rnd1, rnd2, rnd3, rnd4) 1) f3#(I0, I1, I2, I3) -> f2#(I1, I1, I1, I2) [1 <= I1 - 1 /\ 1 <= I0 - 1 /\ 0 <= I2 - 1] 2) f2#(I4, I5, I6, I7) -> f3#(I4, I5 + 2, I7 + 1, I8) [I5 = I6 /\ -1 <= I7 - 1 /\ 0 <= I5 - 1 /\ I7 <= I5] 3) f2#(I9, I10, I11, I12) -> f3#(I9, I10 + 4, I12, I13) [I10 = I11 /\ 0 <= I10 - 1 /\ I10 <= I12 - 1] 4) f1#(I14, I15, I16, I17) -> f2#(2, 2, 2, 0) We have the following SCCs. { 1, 2, 3 } DP problem for innermost termination. P = f3#(I0, I1, I2, I3) -> f2#(I1, I1, I1, I2) [1 <= I1 - 1 /\ 1 <= I0 - 1 /\ 0 <= I2 - 1] f2#(I4, I5, I6, I7) -> f3#(I4, I5 + 2, I7 + 1, I8) [I5 = I6 /\ -1 <= I7 - 1 /\ 0 <= I5 - 1 /\ I7 <= I5] f2#(I9, I10, I11, I12) -> f3#(I9, I10 + 4, I12, I13) [I10 = I11 /\ 0 <= I10 - 1 /\ I10 <= I12 - 1] R = init(x1, x2, x3, x4) -> f1(rnd1, rnd2, rnd3, rnd4) f3(I0, I1, I2, I3) -> f2(I1, I1, I1, I2) [1 <= I1 - 1 /\ 1 <= I0 - 1 /\ 0 <= I2 - 1] f2(I4, I5, I6, I7) -> f3(I4, I5 + 2, I7 + 1, I8) [I5 = I6 /\ -1 <= I7 - 1 /\ 0 <= I5 - 1 /\ I7 <= I5] f2(I9, I10, I11, I12) -> f3(I9, I10 + 4, I12, I13) [I10 = I11 /\ 0 <= I10 - 1 /\ I10 <= I12 - 1] f1(I14, I15, I16, I17) -> f2(2, 2, 2, 0) We use the reverse value criterion with the projection function NU: NU[f2#(z1,z2,z3,z4)] = z4 - 1 + -1 * z2 NU[f3#(z1,z2,z3,z4)] = z3 - 1 + -1 * z2 This gives the following inequalities: 1 <= I1 - 1 /\ 1 <= I0 - 1 /\ 0 <= I2 - 1 ==> I2 - 1 + -1 * I1 >= I2 - 1 + -1 * I1 I5 = I6 /\ -1 <= I7 - 1 /\ 0 <= I5 - 1 /\ I7 <= I5 ==> I7 - 1 + -1 * I5 >= I7 + 1 - 1 + -1 * (I5 + 2) I10 = I11 /\ 0 <= I10 - 1 /\ I10 <= I12 - 1 ==> I12 - 1 + -1 * I10 > I12 - 1 + -1 * (I10 + 4) with I12 - 1 + -1 * I10 >= 0 We remove all the strictly oriented dependency pairs. DP problem for innermost termination. P = f3#(I0, I1, I2, I3) -> f2#(I1, I1, I1, I2) [1 <= I1 - 1 /\ 1 <= I0 - 1 /\ 0 <= I2 - 1] f2#(I4, I5, I6, I7) -> f3#(I4, I5 + 2, I7 + 1, I8) [I5 = I6 /\ -1 <= I7 - 1 /\ 0 <= I5 - 1 /\ I7 <= I5] R = init(x1, x2, x3, x4) -> f1(rnd1, rnd2, rnd3, rnd4) f3(I0, I1, I2, I3) -> f2(I1, I1, I1, I2) [1 <= I1 - 1 /\ 1 <= I0 - 1 /\ 0 <= I2 - 1] f2(I4, I5, I6, I7) -> f3(I4, I5 + 2, I7 + 1, I8) [I5 = I6 /\ -1 <= I7 - 1 /\ 0 <= I5 - 1 /\ I7 <= I5] f2(I9, I10, I11, I12) -> f3(I9, I10 + 4, I12, I13) [I10 = I11 /\ 0 <= I10 - 1 /\ I10 <= I12 - 1] f1(I14, I15, I16, I17) -> f2(2, 2, 2, 0)