1.08/1.13 MAYBE 1.08/1.13 1.08/1.13 DP problem for innermost termination. 1.08/1.13 P = 1.08/1.13 init#(x1, x2) -> f3#(rnd1, rnd2) 1.08/1.13 f5#(I0, I1) -> f5#(I2, I3) [-1 <= I2 - 1 /\ 0 <= I0 - 1 /\ I2 + 1 <= I0] 1.08/1.13 f2#(I4, I5) -> f5#(I6, I7) [0 <= y1 - 1 /\ 0 <= y2 - 1 /\ I6 + 2 <= I5 /\ 0 <= I4 - 1 /\ 2 <= I5 - 1 /\ 0 <= I6 - 1] 1.08/1.13 f4#(I8, I9) -> f4#(I8 - 1, I9 + 1) [0 <= I9 - 1 /\ 0 <= I8 - 1] 1.08/1.13 f3#(I10, I11) -> f4#(I12, 1) [0 <= I10 - 1 /\ -1 <= I12 - 1 /\ -1 <= I11 - 1] 1.08/1.13 f2#(I13, I14) -> f2#(I15, I16) [0 <= I17 - 1 /\ 0 <= I18 - 1 /\ I15 <= I13 /\ I15 + 2 <= I14 /\ 0 <= I13 - 1 /\ 2 <= I14 - 1 /\ 0 <= I15 - 1 /\ -1 <= I16 - 1] 1.08/1.13 f2#(I19, I20) -> f2#(I21, I22) [-1 <= I22 - 1 /\ 0 <= I21 - 1 /\ 1 <= I20 - 1 /\ 0 <= I19 - 1 /\ I22 + 2 <= I20 /\ I22 + 1 <= I19 /\ I21 + 1 <= I20 /\ I21 <= I19] 1.08/1.13 f3#(I23, I24) -> f2#(I25, I26) [-1 <= I26 - 1 /\ 0 <= I25 - 1 /\ 0 <= I23 - 1 /\ I25 <= I23] 1.08/1.13 f1#(I27, I28) -> f2#(I29, I30) [-1 <= I30 - 1 /\ 0 <= I29 - 1 /\ -1 <= I28 - 1 /\ 0 <= I27 - 1 /\ I30 <= I28 /\ I29 - 1 <= I28 /\ I29 <= I27] 1.08/1.13 R = 1.08/1.13 init(x1, x2) -> f3(rnd1, rnd2) 1.08/1.13 f5(I0, I1) -> f5(I2, I3) [-1 <= I2 - 1 /\ 0 <= I0 - 1 /\ I2 + 1 <= I0] 1.08/1.13 f2(I4, I5) -> f5(I6, I7) [0 <= y1 - 1 /\ 0 <= y2 - 1 /\ I6 + 2 <= I5 /\ 0 <= I4 - 1 /\ 2 <= I5 - 1 /\ 0 <= I6 - 1] 1.08/1.13 f4(I8, I9) -> f4(I8 - 1, I9 + 1) [0 <= I9 - 1 /\ 0 <= I8 - 1] 1.08/1.13 f3(I10, I11) -> f4(I12, 1) [0 <= I10 - 1 /\ -1 <= I12 - 1 /\ -1 <= I11 - 1] 1.08/1.13 f2(I13, I14) -> f2(I15, I16) [0 <= I17 - 1 /\ 0 <= I18 - 1 /\ I15 <= I13 /\ I15 + 2 <= I14 /\ 0 <= I13 - 1 /\ 2 <= I14 - 1 /\ 0 <= I15 - 1 /\ -1 <= I16 - 1] 1.08/1.13 f2(I19, I20) -> f2(I21, I22) [-1 <= I22 - 1 /\ 0 <= I21 - 1 /\ 1 <= I20 - 1 /\ 0 <= I19 - 1 /\ I22 + 2 <= I20 /\ I22 + 1 <= I19 /\ I21 + 1 <= I20 /\ I21 <= I19] 1.08/1.13 f3(I23, I24) -> f2(I25, I26) [-1 <= I26 - 1 /\ 0 <= I25 - 1 /\ 0 <= I23 - 1 /\ I25 <= I23] 1.08/1.13 f1(I27, I28) -> f2(I29, I30) [-1 <= I30 - 1 /\ 0 <= I29 - 1 /\ -1 <= I28 - 1 /\ 0 <= I27 - 1 /\ I30 <= I28 /\ I29 - 1 <= I28 /\ I29 <= I27] 1.08/1.13 1.08/1.13 The dependency graph for this problem is: 1.08/1.13 0 -> 4, 7 1.08/1.13 1 -> 1 1.08/1.13 2 -> 1 1.08/1.13 3 -> 3 1.08/1.13 4 -> 3 1.08/1.13 5 -> 2, 5, 6 1.08/1.13 6 -> 2, 5, 6 1.08/1.13 7 -> 2, 5, 6 1.08/1.13 8 -> 2, 5, 6 1.08/1.13 Where: 1.08/1.13 0) init#(x1, x2) -> f3#(rnd1, rnd2) 1.08/1.13 1) f5#(I0, I1) -> f5#(I2, I3) [-1 <= I2 - 1 /\ 0 <= I0 - 1 /\ I2 + 1 <= I0] 1.08/1.13 2) f2#(I4, I5) -> f5#(I6, I7) [0 <= y1 - 1 /\ 0 <= y2 - 1 /\ I6 + 2 <= I5 /\ 0 <= I4 - 1 /\ 2 <= I5 - 1 /\ 0 <= I6 - 1] 1.08/1.13 3) f4#(I8, I9) -> f4#(I8 - 1, I9 + 1) [0 <= I9 - 1 /\ 0 <= I8 - 1] 1.08/1.13 4) f3#(I10, I11) -> f4#(I12, 1) [0 <= I10 - 1 /\ -1 <= I12 - 1 /\ -1 <= I11 - 1] 1.08/1.13 5) f2#(I13, I14) -> f2#(I15, I16) [0 <= I17 - 1 /\ 0 <= I18 - 1 /\ I15 <= I13 /\ I15 + 2 <= I14 /\ 0 <= I13 - 1 /\ 2 <= I14 - 1 /\ 0 <= I15 - 1 /\ -1 <= I16 - 1] 1.08/1.13 6) f2#(I19, I20) -> f2#(I21, I22) [-1 <= I22 - 1 /\ 0 <= I21 - 1 /\ 1 <= I20 - 1 /\ 0 <= I19 - 1 /\ I22 + 2 <= I20 /\ I22 + 1 <= I19 /\ I21 + 1 <= I20 /\ I21 <= I19] 1.08/1.13 7) f3#(I23, I24) -> f2#(I25, I26) [-1 <= I26 - 1 /\ 0 <= I25 - 1 /\ 0 <= I23 - 1 /\ I25 <= I23] 1.08/1.13 8) f1#(I27, I28) -> f2#(I29, I30) [-1 <= I30 - 1 /\ 0 <= I29 - 1 /\ -1 <= I28 - 1 /\ 0 <= I27 - 1 /\ I30 <= I28 /\ I29 - 1 <= I28 /\ I29 <= I27] 1.08/1.13 1.08/1.13 We have the following SCCs. 1.08/1.13 { 3 } 1.08/1.13 { 5, 6 } 1.08/1.13 { 1 } 1.08/1.13 1.08/1.13 DP problem for innermost termination. 1.08/1.13 P = 1.08/1.13 f5#(I0, I1) -> f5#(I2, I3) [-1 <= I2 - 1 /\ 0 <= I0 - 1 /\ I2 + 1 <= I0] 1.08/1.13 R = 1.08/1.13 init(x1, x2) -> f3(rnd1, rnd2) 1.08/1.13 f5(I0, I1) -> f5(I2, I3) [-1 <= I2 - 1 /\ 0 <= I0 - 1 /\ I2 + 1 <= I0] 1.08/1.13 f2(I4, I5) -> f5(I6, I7) [0 <= y1 - 1 /\ 0 <= y2 - 1 /\ I6 + 2 <= I5 /\ 0 <= I4 - 1 /\ 2 <= I5 - 1 /\ 0 <= I6 - 1] 1.08/1.13 f4(I8, I9) -> f4(I8 - 1, I9 + 1) [0 <= I9 - 1 /\ 0 <= I8 - 1] 1.08/1.13 f3(I10, I11) -> f4(I12, 1) [0 <= I10 - 1 /\ -1 <= I12 - 1 /\ -1 <= I11 - 1] 1.08/1.13 f2(I13, I14) -> f2(I15, I16) [0 <= I17 - 1 /\ 0 <= I18 - 1 /\ I15 <= I13 /\ I15 + 2 <= I14 /\ 0 <= I13 - 1 /\ 2 <= I14 - 1 /\ 0 <= I15 - 1 /\ -1 <= I16 - 1] 1.08/1.13 f2(I19, I20) -> f2(I21, I22) [-1 <= I22 - 1 /\ 0 <= I21 - 1 /\ 1 <= I20 - 1 /\ 0 <= I19 - 1 /\ I22 + 2 <= I20 /\ I22 + 1 <= I19 /\ I21 + 1 <= I20 /\ I21 <= I19] 1.08/1.13 f3(I23, I24) -> f2(I25, I26) [-1 <= I26 - 1 /\ 0 <= I25 - 1 /\ 0 <= I23 - 1 /\ I25 <= I23] 1.08/1.13 f1(I27, I28) -> f2(I29, I30) [-1 <= I30 - 1 /\ 0 <= I29 - 1 /\ -1 <= I28 - 1 /\ 0 <= I27 - 1 /\ I30 <= I28 /\ I29 - 1 <= I28 /\ I29 <= I27] 1.08/1.13 1.08/1.13 We use the basic value criterion with the projection function NU: 1.08/1.13 NU[f5#(z1,z2)] = z1 1.08/1.13 1.08/1.13 This gives the following inequalities: 1.08/1.13 -1 <= I2 - 1 /\ 0 <= I0 - 1 /\ I2 + 1 <= I0 ==> I0 >! I2 1.08/1.13 1.08/1.13 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 1.08/1.13 1.08/1.13 DP problem for innermost termination. 1.08/1.13 P = 1.08/1.13 f2#(I13, I14) -> f2#(I15, I16) [0 <= I17 - 1 /\ 0 <= I18 - 1 /\ I15 <= I13 /\ I15 + 2 <= I14 /\ 0 <= I13 - 1 /\ 2 <= I14 - 1 /\ 0 <= I15 - 1 /\ -1 <= I16 - 1] 1.08/1.13 f2#(I19, I20) -> f2#(I21, I22) [-1 <= I22 - 1 /\ 0 <= I21 - 1 /\ 1 <= I20 - 1 /\ 0 <= I19 - 1 /\ I22 + 2 <= I20 /\ I22 + 1 <= I19 /\ I21 + 1 <= I20 /\ I21 <= I19] 1.08/1.13 R = 1.08/1.13 init(x1, x2) -> f3(rnd1, rnd2) 1.08/1.13 f5(I0, I1) -> f5(I2, I3) [-1 <= I2 - 1 /\ 0 <= I0 - 1 /\ I2 + 1 <= I0] 1.08/1.13 f2(I4, I5) -> f5(I6, I7) [0 <= y1 - 1 /\ 0 <= y2 - 1 /\ I6 + 2 <= I5 /\ 0 <= I4 - 1 /\ 2 <= I5 - 1 /\ 0 <= I6 - 1] 1.08/1.13 f4(I8, I9) -> f4(I8 - 1, I9 + 1) [0 <= I9 - 1 /\ 0 <= I8 - 1] 1.08/1.13 f3(I10, I11) -> f4(I12, 1) [0 <= I10 - 1 /\ -1 <= I12 - 1 /\ -1 <= I11 - 1] 1.08/1.13 f2(I13, I14) -> f2(I15, I16) [0 <= I17 - 1 /\ 0 <= I18 - 1 /\ I15 <= I13 /\ I15 + 2 <= I14 /\ 0 <= I13 - 1 /\ 2 <= I14 - 1 /\ 0 <= I15 - 1 /\ -1 <= I16 - 1] 1.08/1.13 f2(I19, I20) -> f2(I21, I22) [-1 <= I22 - 1 /\ 0 <= I21 - 1 /\ 1 <= I20 - 1 /\ 0 <= I19 - 1 /\ I22 + 2 <= I20 /\ I22 + 1 <= I19 /\ I21 + 1 <= I20 /\ I21 <= I19] 1.08/1.13 f3(I23, I24) -> f2(I25, I26) [-1 <= I26 - 1 /\ 0 <= I25 - 1 /\ 0 <= I23 - 1 /\ I25 <= I23] 1.08/1.13 f1(I27, I28) -> f2(I29, I30) [-1 <= I30 - 1 /\ 0 <= I29 - 1 /\ -1 <= I28 - 1 /\ 0 <= I27 - 1 /\ I30 <= I28 /\ I29 - 1 <= I28 /\ I29 <= I27] 1.08/1.13 1.08/1.13 EOF