0.62/0.72 YES 0.62/0.72 0.62/0.72 DP problem for innermost termination. 0.62/0.72 P = 0.62/0.72 init#(x1, x2) -> f1#(rnd1, rnd2) 0.62/0.72 f3#(I0, I1) -> f2#(I1, I0) [I0 <= I1 - 1] 0.62/0.72 f2#(I2, I3) -> f2#(I2, 0) [I2 = I3 /\ 0 <= I2 - 1] 0.62/0.72 f3#(I4, I5) -> f3#(I4 - I5, I5) [0 <= I5 - 1 /\ 0 <= I4 - 1 /\ I5 <= I4 - 1] 0.62/0.72 f2#(I6, I7) -> f3#(I6, I7) [0 <= I7 - 1 /\ -1 <= I6 - 1 /\ I7 <= I6 - 1] 0.62/0.72 f2#(I8, I9) -> f3#(I8, I9) [0 <= I9 - 1 /\ -1 <= I8 - 1 /\ I8 <= I9 - 1] 0.62/0.72 f1#(I10, I11) -> f2#(I12, I13) [0 <= I10 - 1 /\ -1 <= I12 - 1 /\ -1 <= I11 - 1 /\ -1 <= I13 - 1] 0.62/0.72 R = 0.62/0.72 init(x1, x2) -> f1(rnd1, rnd2) 0.62/0.72 f3(I0, I1) -> f2(I1, I0) [I0 <= I1 - 1] 0.62/0.72 f2(I2, I3) -> f2(I2, 0) [I2 = I3 /\ 0 <= I2 - 1] 0.62/0.72 f3(I4, I5) -> f3(I4 - I5, I5) [0 <= I5 - 1 /\ 0 <= I4 - 1 /\ I5 <= I4 - 1] 0.62/0.72 f2(I6, I7) -> f3(I6, I7) [0 <= I7 - 1 /\ -1 <= I6 - 1 /\ I7 <= I6 - 1] 0.62/0.72 f2(I8, I9) -> f3(I8, I9) [0 <= I9 - 1 /\ -1 <= I8 - 1 /\ I8 <= I9 - 1] 0.62/0.72 f1(I10, I11) -> f2(I12, I13) [0 <= I10 - 1 /\ -1 <= I12 - 1 /\ -1 <= I11 - 1 /\ -1 <= I13 - 1] 0.62/0.72 0.62/0.72 The dependency graph for this problem is: 0.62/0.72 0 -> 6 0.62/0.72 1 -> 4 0.62/0.72 2 -> 0.62/0.72 3 -> 1, 3 0.62/0.72 4 -> 3 0.62/0.72 5 -> 1 0.62/0.72 6 -> 2, 4, 5 0.62/0.72 Where: 0.62/0.72 0) init#(x1, x2) -> f1#(rnd1, rnd2) 0.62/0.72 1) f3#(I0, I1) -> f2#(I1, I0) [I0 <= I1 - 1] 0.62/0.72 2) f2#(I2, I3) -> f2#(I2, 0) [I2 = I3 /\ 0 <= I2 - 1] 0.62/0.72 3) f3#(I4, I5) -> f3#(I4 - I5, I5) [0 <= I5 - 1 /\ 0 <= I4 - 1 /\ I5 <= I4 - 1] 0.62/0.72 4) f2#(I6, I7) -> f3#(I6, I7) [0 <= I7 - 1 /\ -1 <= I6 - 1 /\ I7 <= I6 - 1] 0.62/0.72 5) f2#(I8, I9) -> f3#(I8, I9) [0 <= I9 - 1 /\ -1 <= I8 - 1 /\ I8 <= I9 - 1] 0.62/0.72 6) f1#(I10, I11) -> f2#(I12, I13) [0 <= I10 - 1 /\ -1 <= I12 - 1 /\ -1 <= I11 - 1 /\ -1 <= I13 - 1] 0.62/0.72 0.62/0.72 We have the following SCCs. 0.62/0.72 { 1, 3, 4 } 0.62/0.72 0.62/0.72 DP problem for innermost termination. 0.62/0.72 P = 0.62/0.72 f3#(I0, I1) -> f2#(I1, I0) [I0 <= I1 - 1] 0.62/0.72 f3#(I4, I5) -> f3#(I4 - I5, I5) [0 <= I5 - 1 /\ 0 <= I4 - 1 /\ I5 <= I4 - 1] 0.62/0.72 f2#(I6, I7) -> f3#(I6, I7) [0 <= I7 - 1 /\ -1 <= I6 - 1 /\ I7 <= I6 - 1] 0.62/0.72 R = 0.62/0.72 init(x1, x2) -> f1(rnd1, rnd2) 0.62/0.72 f3(I0, I1) -> f2(I1, I0) [I0 <= I1 - 1] 0.62/0.72 f2(I2, I3) -> f2(I2, 0) [I2 = I3 /\ 0 <= I2 - 1] 0.62/0.72 f3(I4, I5) -> f3(I4 - I5, I5) [0 <= I5 - 1 /\ 0 <= I4 - 1 /\ I5 <= I4 - 1] 0.62/0.72 f2(I6, I7) -> f3(I6, I7) [0 <= I7 - 1 /\ -1 <= I6 - 1 /\ I7 <= I6 - 1] 0.62/0.72 f2(I8, I9) -> f3(I8, I9) [0 <= I9 - 1 /\ -1 <= I8 - 1 /\ I8 <= I9 - 1] 0.62/0.72 f1(I10, I11) -> f2(I12, I13) [0 <= I10 - 1 /\ -1 <= I12 - 1 /\ -1 <= I11 - 1 /\ -1 <= I13 - 1] 0.62/0.72 0.62/0.72 We use the basic value criterion with the projection function NU: 0.62/0.72 NU[f2#(z1,z2)] = z1 0.62/0.72 NU[f3#(z1,z2)] = z2 0.62/0.72 0.62/0.72 This gives the following inequalities: 0.62/0.72 I0 <= I1 - 1 ==> I1 (>! \union =) I1 0.62/0.72 0 <= I5 - 1 /\ 0 <= I4 - 1 /\ I5 <= I4 - 1 ==> I5 (>! \union =) I5 0.62/0.72 0 <= I7 - 1 /\ -1 <= I6 - 1 /\ I7 <= I6 - 1 ==> I6 >! I7 0.62/0.72 0.62/0.72 We remove all the strictly oriented dependency pairs. 0.62/0.72 0.62/0.72 DP problem for innermost termination. 0.62/0.72 P = 0.62/0.72 f3#(I0, I1) -> f2#(I1, I0) [I0 <= I1 - 1] 0.62/0.72 f3#(I4, I5) -> f3#(I4 - I5, I5) [0 <= I5 - 1 /\ 0 <= I4 - 1 /\ I5 <= I4 - 1] 0.62/0.72 R = 0.62/0.72 init(x1, x2) -> f1(rnd1, rnd2) 0.62/0.72 f3(I0, I1) -> f2(I1, I0) [I0 <= I1 - 1] 0.62/0.72 f2(I2, I3) -> f2(I2, 0) [I2 = I3 /\ 0 <= I2 - 1] 0.62/0.72 f3(I4, I5) -> f3(I4 - I5, I5) [0 <= I5 - 1 /\ 0 <= I4 - 1 /\ I5 <= I4 - 1] 0.62/0.72 f2(I6, I7) -> f3(I6, I7) [0 <= I7 - 1 /\ -1 <= I6 - 1 /\ I7 <= I6 - 1] 0.62/0.72 f2(I8, I9) -> f3(I8, I9) [0 <= I9 - 1 /\ -1 <= I8 - 1 /\ I8 <= I9 - 1] 0.62/0.72 f1(I10, I11) -> f2(I12, I13) [0 <= I10 - 1 /\ -1 <= I12 - 1 /\ -1 <= I11 - 1 /\ -1 <= I13 - 1] 0.62/0.72 0.62/0.72 The dependency graph for this problem is: 0.62/0.72 1 -> 0.62/0.72 3 -> 1, 3 0.62/0.72 Where: 0.62/0.72 1) f3#(I0, I1) -> f2#(I1, I0) [I0 <= I1 - 1] 0.62/0.72 3) f3#(I4, I5) -> f3#(I4 - I5, I5) [0 <= I5 - 1 /\ 0 <= I4 - 1 /\ I5 <= I4 - 1] 0.62/0.72 0.62/0.72 We have the following SCCs. 0.62/0.72 { 3 } 0.62/0.72 0.62/0.72 DP problem for innermost termination. 0.62/0.72 P = 0.62/0.72 f3#(I4, I5) -> f3#(I4 - I5, I5) [0 <= I5 - 1 /\ 0 <= I4 - 1 /\ I5 <= I4 - 1] 0.62/0.72 R = 0.62/0.72 init(x1, x2) -> f1(rnd1, rnd2) 0.62/0.72 f3(I0, I1) -> f2(I1, I0) [I0 <= I1 - 1] 0.62/0.72 f2(I2, I3) -> f2(I2, 0) [I2 = I3 /\ 0 <= I2 - 1] 0.62/0.72 f3(I4, I5) -> f3(I4 - I5, I5) [0 <= I5 - 1 /\ 0 <= I4 - 1 /\ I5 <= I4 - 1] 0.62/0.72 f2(I6, I7) -> f3(I6, I7) [0 <= I7 - 1 /\ -1 <= I6 - 1 /\ I7 <= I6 - 1] 0.62/0.72 f2(I8, I9) -> f3(I8, I9) [0 <= I9 - 1 /\ -1 <= I8 - 1 /\ I8 <= I9 - 1] 0.62/0.72 f1(I10, I11) -> f2(I12, I13) [0 <= I10 - 1 /\ -1 <= I12 - 1 /\ -1 <= I11 - 1 /\ -1 <= I13 - 1] 0.62/0.72 0.62/0.72 We use the basic value criterion with the projection function NU: 0.62/0.72 NU[f3#(z1,z2)] = z1 0.62/0.72 0.62/0.72 This gives the following inequalities: 0.62/0.72 0 <= I5 - 1 /\ 0 <= I4 - 1 /\ I5 <= I4 - 1 ==> I4 >! I4 - I5 0.62/0.72 0.62/0.72 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 0.62/3.70 EOF