0.98/1.46 YES 0.98/1.46 0.98/1.46 DP problem for innermost termination. 0.98/1.46 P = 0.98/1.46 f5#(x1, x2) -> f4#(x1, x2) 0.98/1.46 f4#(I0, I1) -> f3#(I0, I1) 0.98/1.46 f3#(I2, I3) -> f1#(-1 + I2, rnd2) [rnd2 = rnd2 /\ 1 <= I2] 0.98/1.46 f1#(I4, I5) -> f3#(I4, I5) [I5 <= 0] 0.98/1.46 f2#(I6, I7) -> f1#(I6, I7) 0.98/1.46 f1#(I8, I9) -> f2#(I8, -1 + I9) [1 <= I9] 0.98/1.46 R = 0.98/1.46 f5(x1, x2) -> f4(x1, x2) 0.98/1.46 f4(I0, I1) -> f3(I0, I1) 0.98/1.46 f3(I2, I3) -> f1(-1 + I2, rnd2) [rnd2 = rnd2 /\ 1 <= I2] 0.98/1.46 f1(I4, I5) -> f3(I4, I5) [I5 <= 0] 0.98/1.46 f2(I6, I7) -> f1(I6, I7) 0.98/1.46 f1(I8, I9) -> f2(I8, -1 + I9) [1 <= I9] 0.98/1.46 0.98/1.46 The dependency graph for this problem is: 0.98/1.46 0 -> 1 0.98/1.46 1 -> 2 0.98/1.46 2 -> 3, 5 0.98/1.46 3 -> 2 0.98/1.46 4 -> 3, 5 0.98/1.46 5 -> 4 0.98/1.46 Where: 0.98/1.46 0) f5#(x1, x2) -> f4#(x1, x2) 0.98/1.46 1) f4#(I0, I1) -> f3#(I0, I1) 0.98/1.46 2) f3#(I2, I3) -> f1#(-1 + I2, rnd2) [rnd2 = rnd2 /\ 1 <= I2] 0.98/1.46 3) f1#(I4, I5) -> f3#(I4, I5) [I5 <= 0] 0.98/1.46 4) f2#(I6, I7) -> f1#(I6, I7) 0.98/1.46 5) f1#(I8, I9) -> f2#(I8, -1 + I9) [1 <= I9] 0.98/1.46 0.98/1.46 We have the following SCCs. 0.98/1.46 { 2, 3, 4, 5 } 0.98/1.46 0.98/1.46 DP problem for innermost termination. 0.98/1.46 P = 0.98/1.46 f3#(I2, I3) -> f1#(-1 + I2, rnd2) [rnd2 = rnd2 /\ 1 <= I2] 0.98/1.46 f1#(I4, I5) -> f3#(I4, I5) [I5 <= 0] 0.98/1.46 f2#(I6, I7) -> f1#(I6, I7) 0.98/1.46 f1#(I8, I9) -> f2#(I8, -1 + I9) [1 <= I9] 0.98/1.46 R = 0.98/1.46 f5(x1, x2) -> f4(x1, x2) 0.98/1.46 f4(I0, I1) -> f3(I0, I1) 0.98/1.46 f3(I2, I3) -> f1(-1 + I2, rnd2) [rnd2 = rnd2 /\ 1 <= I2] 0.98/1.46 f1(I4, I5) -> f3(I4, I5) [I5 <= 0] 0.98/1.46 f2(I6, I7) -> f1(I6, I7) 0.98/1.46 f1(I8, I9) -> f2(I8, -1 + I9) [1 <= I9] 0.98/1.46 0.98/1.46 We use the basic value criterion with the projection function NU: 0.98/1.46 NU[f2#(z1,z2)] = z1 0.98/1.46 NU[f1#(z1,z2)] = z1 0.98/1.46 NU[f3#(z1,z2)] = z1 0.98/1.46 0.98/1.46 This gives the following inequalities: 0.98/1.46 rnd2 = rnd2 /\ 1 <= I2 ==> I2 >! -1 + I2 0.98/1.46 I5 <= 0 ==> I4 (>! \union =) I4 0.98/1.46 ==> I6 (>! \union =) I6 0.98/1.46 1 <= I9 ==> I8 (>! \union =) I8 0.98/1.46 0.98/1.46 We remove all the strictly oriented dependency pairs. 0.98/1.46 0.98/1.46 DP problem for innermost termination. 0.98/1.46 P = 0.98/1.46 f1#(I4, I5) -> f3#(I4, I5) [I5 <= 0] 0.98/1.46 f2#(I6, I7) -> f1#(I6, I7) 0.98/1.46 f1#(I8, I9) -> f2#(I8, -1 + I9) [1 <= I9] 0.98/1.46 R = 0.98/1.46 f5(x1, x2) -> f4(x1, x2) 0.98/1.46 f4(I0, I1) -> f3(I0, I1) 0.98/1.46 f3(I2, I3) -> f1(-1 + I2, rnd2) [rnd2 = rnd2 /\ 1 <= I2] 0.98/1.46 f1(I4, I5) -> f3(I4, I5) [I5 <= 0] 0.98/1.46 f2(I6, I7) -> f1(I6, I7) 0.98/1.46 f1(I8, I9) -> f2(I8, -1 + I9) [1 <= I9] 0.98/1.46 0.98/1.46 The dependency graph for this problem is: 0.98/1.46 3 -> 0.98/1.46 4 -> 3, 5 0.98/1.46 5 -> 4 0.98/1.46 Where: 0.98/1.46 3) f1#(I4, I5) -> f3#(I4, I5) [I5 <= 0] 0.98/1.46 4) f2#(I6, I7) -> f1#(I6, I7) 0.98/1.46 5) f1#(I8, I9) -> f2#(I8, -1 + I9) [1 <= I9] 0.98/1.46 0.98/1.46 We have the following SCCs. 0.98/1.46 { 4, 5 } 0.98/1.46 0.98/1.46 DP problem for innermost termination. 0.98/1.46 P = 0.98/1.46 f2#(I6, I7) -> f1#(I6, I7) 0.98/1.46 f1#(I8, I9) -> f2#(I8, -1 + I9) [1 <= I9] 0.98/1.46 R = 0.98/1.46 f5(x1, x2) -> f4(x1, x2) 0.98/1.46 f4(I0, I1) -> f3(I0, I1) 0.98/1.46 f3(I2, I3) -> f1(-1 + I2, rnd2) [rnd2 = rnd2 /\ 1 <= I2] 0.98/1.46 f1(I4, I5) -> f3(I4, I5) [I5 <= 0] 0.98/1.46 f2(I6, I7) -> f1(I6, I7) 0.98/1.46 f1(I8, I9) -> f2(I8, -1 + I9) [1 <= I9] 0.98/1.46 0.98/1.46 We use the basic value criterion with the projection function NU: 0.98/1.46 NU[f1#(z1,z2)] = z2 0.98/1.46 NU[f2#(z1,z2)] = z2 0.98/1.46 0.98/1.46 This gives the following inequalities: 0.98/1.46 ==> I7 (>! \union =) I7 0.98/1.46 1 <= I9 ==> I9 >! -1 + I9 0.98/1.46 0.98/1.46 We remove all the strictly oriented dependency pairs. 0.98/1.46 0.98/1.46 DP problem for innermost termination. 0.98/1.46 P = 0.98/1.46 f2#(I6, I7) -> f1#(I6, I7) 0.98/1.46 R = 0.98/1.46 f5(x1, x2) -> f4(x1, x2) 0.98/1.46 f4(I0, I1) -> f3(I0, I1) 0.98/1.46 f3(I2, I3) -> f1(-1 + I2, rnd2) [rnd2 = rnd2 /\ 1 <= I2] 0.98/1.46 f1(I4, I5) -> f3(I4, I5) [I5 <= 0] 0.98/1.46 f2(I6, I7) -> f1(I6, I7) 0.98/1.46 f1(I8, I9) -> f2(I8, -1 + I9) [1 <= I9] 0.98/1.46 0.98/1.46 The dependency graph for this problem is: 0.98/1.46 4 -> 0.98/1.46 Where: 0.98/1.46 4) f2#(I6, I7) -> f1#(I6, I7) 0.98/1.46 0.98/1.46 We have the following SCCs. 0.98/1.46 0.98/4.44 EOF