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