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