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