23.70/23.82 MAYBE 23.70/23.82 23.70/23.82 DP problem for innermost termination. 23.70/23.82 P = 23.70/23.82 init#(x1, x2, x3, x4) -> f1#(rnd1, rnd2, rnd3, rnd4) 23.70/23.82 f2#(I0, I1, I2, I3) -> f2#(I0, I1 + 1, I0, I4) [I0 = I2 /\ -1 <= I1 - 1 /\ 2 <= I0 - 1 - (I1 + 1) - 1 /\ I1 <= 4 /\ I1 <= I0 /\ 0 <= I0 - 1] 23.70/23.82 f2#(I5, I6, I7, I8) -> f2#(I5 - 1, I6 + 2, I5 - 1, I9) [I5 = I7 /\ -1 <= I6 - 1 /\ I5 - 1 - (I6 + 1) <= 2 /\ I6 <= 4 /\ I6 <= I5 /\ 0 <= I5 - 1] 23.70/23.82 f3#(I10, I11, I12, I13) -> f2#(I12, I13, I12, I14) [I10 <= I13 /\ I12 <= I11 /\ I10 <= I11 - 1 /\ 0 <= I13 - 1 /\ 1 <= I12 - 1 /\ 1 <= I11 - 1 /\ 0 <= I10 - 1] 23.70/23.82 f2#(I15, I16, I17, I18) -> f3#(I15, I16, I15 + 1, I16 - 1) [I15 = I17 /\ 0 <= I15 - 1 /\ I15 + 1 <= 2 * I16 - 1 /\ 1 <= I16 - 1 /\ I15 <= I16 - 1] 23.70/23.82 f2#(I19, I20, I21, I22) -> f3#(I19, I20, I19 + 1, I20 + 1) [I19 = I21 /\ 0 <= I19 - 1 /\ 2 * I20 <= I19 + 1 /\ 1 <= I20 - 1 /\ I19 <= I20 - 1] 23.70/23.82 f2#(I23, I24, I25, I26) -> f2#(I23 - 1, I24 - 1, I23 - 1, I27) [I23 = I25 /\ 4 <= I24 - 1 /\ 1 <= I23 - 1 /\ I24 <= I23] 23.70/23.82 f1#(I28, I29, I30, I31) -> f2#(I29, I29, I29, I32) [-1 <= I29 - 1 /\ 0 <= I28 - 1] 23.70/23.82 R = 23.70/23.82 init(x1, x2, x3, x4) -> f1(rnd1, rnd2, rnd3, rnd4) 23.70/23.82 f2(I0, I1, I2, I3) -> f2(I0, I1 + 1, I0, I4) [I0 = I2 /\ -1 <= I1 - 1 /\ 2 <= I0 - 1 - (I1 + 1) - 1 /\ I1 <= 4 /\ I1 <= I0 /\ 0 <= I0 - 1] 23.70/23.82 f2(I5, I6, I7, I8) -> f2(I5 - 1, I6 + 2, I5 - 1, I9) [I5 = I7 /\ -1 <= I6 - 1 /\ I5 - 1 - (I6 + 1) <= 2 /\ I6 <= 4 /\ I6 <= I5 /\ 0 <= I5 - 1] 23.70/23.82 f3(I10, I11, I12, I13) -> f2(I12, I13, I12, I14) [I10 <= I13 /\ I12 <= I11 /\ I10 <= I11 - 1 /\ 0 <= I13 - 1 /\ 1 <= I12 - 1 /\ 1 <= I11 - 1 /\ 0 <= I10 - 1] 23.70/23.82 f2(I15, I16, I17, I18) -> f3(I15, I16, I15 + 1, I16 - 1) [I15 = I17 /\ 0 <= I15 - 1 /\ I15 + 1 <= 2 * I16 - 1 /\ 1 <= I16 - 1 /\ I15 <= I16 - 1] 23.70/23.82 f2(I19, I20, I21, I22) -> f3(I19, I20, I19 + 1, I20 + 1) [I19 = I21 /\ 0 <= I19 - 1 /\ 2 * I20 <= I19 + 1 /\ 1 <= I20 - 1 /\ I19 <= I20 - 1] 23.70/23.82 f2(I23, I24, I25, I26) -> f2(I23 - 1, I24 - 1, I23 - 1, I27) [I23 = I25 /\ 4 <= I24 - 1 /\ 1 <= I23 - 1 /\ I24 <= I23] 23.70/23.82 f1(I28, I29, I30, I31) -> f2(I29, I29, I29, I32) [-1 <= I29 - 1 /\ 0 <= I28 - 1] 23.70/23.82 23.70/23.82 The dependency graph for this problem is: 23.70/23.82 0 -> 7 23.70/23.82 1 -> 1, 2, 6 23.70/23.82 2 -> 2, 4, 6 23.70/23.82 3 -> 1, 2, 4, 6 23.70/23.82 4 -> 3 23.70/23.82 5 -> 23.70/23.82 6 -> 1, 2, 6 23.70/23.82 7 -> 2, 6 23.70/23.82 Where: 23.70/23.82 0) init#(x1, x2, x3, x4) -> f1#(rnd1, rnd2, rnd3, rnd4) 23.70/23.82 1) f2#(I0, I1, I2, I3) -> f2#(I0, I1 + 1, I0, I4) [I0 = I2 /\ -1 <= I1 - 1 /\ 2 <= I0 - 1 - (I1 + 1) - 1 /\ I1 <= 4 /\ I1 <= I0 /\ 0 <= I0 - 1] 23.70/23.82 2) f2#(I5, I6, I7, I8) -> f2#(I5 - 1, I6 + 2, I5 - 1, I9) [I5 = I7 /\ -1 <= I6 - 1 /\ I5 - 1 - (I6 + 1) <= 2 /\ I6 <= 4 /\ I6 <= I5 /\ 0 <= I5 - 1] 23.70/23.82 3) f3#(I10, I11, I12, I13) -> f2#(I12, I13, I12, I14) [I10 <= I13 /\ I12 <= I11 /\ I10 <= I11 - 1 /\ 0 <= I13 - 1 /\ 1 <= I12 - 1 /\ 1 <= I11 - 1 /\ 0 <= I10 - 1] 23.70/23.82 4) f2#(I15, I16, I17, I18) -> f3#(I15, I16, I15 + 1, I16 - 1) [I15 = I17 /\ 0 <= I15 - 1 /\ I15 + 1 <= 2 * I16 - 1 /\ 1 <= I16 - 1 /\ I15 <= I16 - 1] 23.70/23.82 5) f2#(I19, I20, I21, I22) -> f3#(I19, I20, I19 + 1, I20 + 1) [I19 = I21 /\ 0 <= I19 - 1 /\ 2 * I20 <= I19 + 1 /\ 1 <= I20 - 1 /\ I19 <= I20 - 1] 23.70/23.82 6) f2#(I23, I24, I25, I26) -> f2#(I23 - 1, I24 - 1, I23 - 1, I27) [I23 = I25 /\ 4 <= I24 - 1 /\ 1 <= I23 - 1 /\ I24 <= I23] 23.70/23.82 7) f1#(I28, I29, I30, I31) -> f2#(I29, I29, I29, I32) [-1 <= I29 - 1 /\ 0 <= I28 - 1] 23.70/23.82 23.70/23.82 We have the following SCCs. 23.70/23.82 { 1, 2, 3, 4, 6 } 23.70/23.82 23.70/23.82 DP problem for innermost termination. 23.70/23.82 P = 23.70/23.82 f2#(I0, I1, I2, I3) -> f2#(I0, I1 + 1, I0, I4) [I0 = I2 /\ -1 <= I1 - 1 /\ 2 <= I0 - 1 - (I1 + 1) - 1 /\ I1 <= 4 /\ I1 <= I0 /\ 0 <= I0 - 1] 23.70/23.82 f2#(I5, I6, I7, I8) -> f2#(I5 - 1, I6 + 2, I5 - 1, I9) [I5 = I7 /\ -1 <= I6 - 1 /\ I5 - 1 - (I6 + 1) <= 2 /\ I6 <= 4 /\ I6 <= I5 /\ 0 <= I5 - 1] 23.70/23.82 f3#(I10, I11, I12, I13) -> f2#(I12, I13, I12, I14) [I10 <= I13 /\ I12 <= I11 /\ I10 <= I11 - 1 /\ 0 <= I13 - 1 /\ 1 <= I12 - 1 /\ 1 <= I11 - 1 /\ 0 <= I10 - 1] 23.70/23.82 f2#(I15, I16, I17, I18) -> f3#(I15, I16, I15 + 1, I16 - 1) [I15 = I17 /\ 0 <= I15 - 1 /\ I15 + 1 <= 2 * I16 - 1 /\ 1 <= I16 - 1 /\ I15 <= I16 - 1] 23.70/23.82 f2#(I23, I24, I25, I26) -> f2#(I23 - 1, I24 - 1, I23 - 1, I27) [I23 = I25 /\ 4 <= I24 - 1 /\ 1 <= I23 - 1 /\ I24 <= I23] 23.70/23.82 R = 23.70/23.82 init(x1, x2, x3, x4) -> f1(rnd1, rnd2, rnd3, rnd4) 23.70/23.82 f2(I0, I1, I2, I3) -> f2(I0, I1 + 1, I0, I4) [I0 = I2 /\ -1 <= I1 - 1 /\ 2 <= I0 - 1 - (I1 + 1) - 1 /\ I1 <= 4 /\ I1 <= I0 /\ 0 <= I0 - 1] 23.70/23.82 f2(I5, I6, I7, I8) -> f2(I5 - 1, I6 + 2, I5 - 1, I9) [I5 = I7 /\ -1 <= I6 - 1 /\ I5 - 1 - (I6 + 1) <= 2 /\ I6 <= 4 /\ I6 <= I5 /\ 0 <= I5 - 1] 23.70/23.82 f3(I10, I11, I12, I13) -> f2(I12, I13, I12, I14) [I10 <= I13 /\ I12 <= I11 /\ I10 <= I11 - 1 /\ 0 <= I13 - 1 /\ 1 <= I12 - 1 /\ 1 <= I11 - 1 /\ 0 <= I10 - 1] 23.70/23.82 f2(I15, I16, I17, I18) -> f3(I15, I16, I15 + 1, I16 - 1) [I15 = I17 /\ 0 <= I15 - 1 /\ I15 + 1 <= 2 * I16 - 1 /\ 1 <= I16 - 1 /\ I15 <= I16 - 1] 23.70/23.82 f2(I19, I20, I21, I22) -> f3(I19, I20, I19 + 1, I20 + 1) [I19 = I21 /\ 0 <= I19 - 1 /\ 2 * I20 <= I19 + 1 /\ 1 <= I20 - 1 /\ I19 <= I20 - 1] 23.70/23.82 f2(I23, I24, I25, I26) -> f2(I23 - 1, I24 - 1, I23 - 1, I27) [I23 = I25 /\ 4 <= I24 - 1 /\ 1 <= I23 - 1 /\ I24 <= I23] 23.70/23.82 f1(I28, I29, I30, I31) -> f2(I29, I29, I29, I32) [-1 <= I29 - 1 /\ 0 <= I28 - 1] 23.70/23.82 23.70/23.82 EOF