3.24/3.30 YES 3.24/3.30 3.24/3.30 DP problem for innermost termination. 3.24/3.30 P = 3.24/3.30 f7#(x1, x2, x3) -> f6#(x1, x2, x3) 3.24/3.30 f6#(I0, I1, I2) -> f3#(0, 0, rnd3) [rnd3 = rnd3 /\ y1 = 0] 3.24/3.30 f4#(I3, I4, I5) -> f2#(I3, 1 + I4, I5) [1 + I4 <= 50] 3.24/3.30 f2#(I9, I10, I11) -> f4#(I9, I10, I11) 3.24/3.30 f3#(I12, I13, I14) -> f1#(I12, I13, I14) 3.24/3.30 f1#(I15, I16, I17) -> f3#(1 + I15, I16, I17) [1 + I15 <= 50] 3.24/3.30 f1#(I18, I19, I20) -> f2#(I18, 0, I20) [50 <= I18] 3.24/3.30 R = 3.24/3.30 f7(x1, x2, x3) -> f6(x1, x2, x3) 3.24/3.30 f6(I0, I1, I2) -> f3(0, 0, rnd3) [rnd3 = rnd3 /\ y1 = 0] 3.24/3.30 f4(I3, I4, I5) -> f2(I3, 1 + I4, I5) [1 + I4 <= 50] 3.24/3.30 f4(I6, I7, I8) -> f5(I6, I7, I8) [50 <= I7] 3.24/3.30 f2(I9, I10, I11) -> f4(I9, I10, I11) 3.24/3.30 f3(I12, I13, I14) -> f1(I12, I13, I14) 3.24/3.30 f1(I15, I16, I17) -> f3(1 + I15, I16, I17) [1 + I15 <= 50] 3.24/3.30 f1(I18, I19, I20) -> f2(I18, 0, I20) [50 <= I18] 3.24/3.30 3.24/3.30 The dependency graph for this problem is: 3.24/3.30 0 -> 1 3.24/3.30 1 -> 4 3.24/3.30 2 -> 3 3.24/3.30 3 -> 2 3.24/3.30 4 -> 5, 6 3.24/3.30 5 -> 4 3.24/3.30 6 -> 3 3.24/3.30 Where: 3.24/3.30 0) f7#(x1, x2, x3) -> f6#(x1, x2, x3) 3.24/3.30 1) f6#(I0, I1, I2) -> f3#(0, 0, rnd3) [rnd3 = rnd3 /\ y1 = 0] 3.24/3.30 2) f4#(I3, I4, I5) -> f2#(I3, 1 + I4, I5) [1 + I4 <= 50] 3.24/3.30 3) f2#(I9, I10, I11) -> f4#(I9, I10, I11) 3.24/3.30 4) f3#(I12, I13, I14) -> f1#(I12, I13, I14) 3.24/3.30 5) f1#(I15, I16, I17) -> f3#(1 + I15, I16, I17) [1 + I15 <= 50] 3.24/3.30 6) f1#(I18, I19, I20) -> f2#(I18, 0, I20) [50 <= I18] 3.24/3.30 3.24/3.30 We have the following SCCs. 3.24/3.30 { 4, 5 } 3.24/3.30 { 2, 3 } 3.24/3.30 3.24/3.30 DP problem for innermost termination. 3.24/3.30 P = 3.24/3.30 f4#(I3, I4, I5) -> f2#(I3, 1 + I4, I5) [1 + I4 <= 50] 3.24/3.30 f2#(I9, I10, I11) -> f4#(I9, I10, I11) 3.24/3.30 R = 3.24/3.30 f7(x1, x2, x3) -> f6(x1, x2, x3) 3.24/3.30 f6(I0, I1, I2) -> f3(0, 0, rnd3) [rnd3 = rnd3 /\ y1 = 0] 3.24/3.30 f4(I3, I4, I5) -> f2(I3, 1 + I4, I5) [1 + I4 <= 50] 3.24/3.30 f4(I6, I7, I8) -> f5(I6, I7, I8) [50 <= I7] 3.24/3.30 f2(I9, I10, I11) -> f4(I9, I10, I11) 3.24/3.30 f3(I12, I13, I14) -> f1(I12, I13, I14) 3.24/3.30 f1(I15, I16, I17) -> f3(1 + I15, I16, I17) [1 + I15 <= 50] 3.24/3.30 f1(I18, I19, I20) -> f2(I18, 0, I20) [50 <= I18] 3.24/3.30 3.24/3.30 We use the reverse value criterion with the projection function NU: 3.24/3.30 NU[f2#(z1,z2,z3)] = 50 + -1 * (1 + z2) 3.24/3.30 NU[f4#(z1,z2,z3)] = 50 + -1 * (1 + z2) 3.24/3.30 3.24/3.30 This gives the following inequalities: 3.24/3.30 1 + I4 <= 50 ==> 50 + -1 * (1 + I4) > 50 + -1 * (1 + (1 + I4)) with 50 + -1 * (1 + I4) >= 0 3.24/3.30 ==> 50 + -1 * (1 + I10) >= 50 + -1 * (1 + I10) 3.24/3.30 3.24/3.30 We remove all the strictly oriented dependency pairs. 3.24/3.30 3.24/3.30 DP problem for innermost termination. 3.24/3.30 P = 3.24/3.30 f2#(I9, I10, I11) -> f4#(I9, I10, I11) 3.24/3.30 R = 3.24/3.30 f7(x1, x2, x3) -> f6(x1, x2, x3) 3.24/3.30 f6(I0, I1, I2) -> f3(0, 0, rnd3) [rnd3 = rnd3 /\ y1 = 0] 3.24/3.30 f4(I3, I4, I5) -> f2(I3, 1 + I4, I5) [1 + I4 <= 50] 3.24/3.30 f4(I6, I7, I8) -> f5(I6, I7, I8) [50 <= I7] 3.24/3.30 f2(I9, I10, I11) -> f4(I9, I10, I11) 3.24/3.30 f3(I12, I13, I14) -> f1(I12, I13, I14) 3.24/3.30 f1(I15, I16, I17) -> f3(1 + I15, I16, I17) [1 + I15 <= 50] 3.24/3.30 f1(I18, I19, I20) -> f2(I18, 0, I20) [50 <= I18] 3.24/3.30 3.24/3.30 The dependency graph for this problem is: 3.24/3.30 3 -> 3.24/3.30 Where: 3.24/3.30 3) f2#(I9, I10, I11) -> f4#(I9, I10, I11) 3.24/3.30 3.24/3.30 We have the following SCCs. 3.24/3.30 3.24/3.30 3.24/3.30 DP problem for innermost termination. 3.24/3.30 P = 3.24/3.30 f3#(I12, I13, I14) -> f1#(I12, I13, I14) 3.24/3.30 f1#(I15, I16, I17) -> f3#(1 + I15, I16, I17) [1 + I15 <= 50] 3.24/3.30 R = 3.24/3.30 f7(x1, x2, x3) -> f6(x1, x2, x3) 3.24/3.30 f6(I0, I1, I2) -> f3(0, 0, rnd3) [rnd3 = rnd3 /\ y1 = 0] 3.24/3.30 f4(I3, I4, I5) -> f2(I3, 1 + I4, I5) [1 + I4 <= 50] 3.24/3.30 f4(I6, I7, I8) -> f5(I6, I7, I8) [50 <= I7] 3.24/3.30 f2(I9, I10, I11) -> f4(I9, I10, I11) 3.24/3.30 f3(I12, I13, I14) -> f1(I12, I13, I14) 3.24/3.30 f1(I15, I16, I17) -> f3(1 + I15, I16, I17) [1 + I15 <= 50] 3.24/3.30 f1(I18, I19, I20) -> f2(I18, 0, I20) [50 <= I18] 3.24/3.30 3.24/3.30 We use the reverse value criterion with the projection function NU: 3.24/3.30 NU[f1#(z1,z2,z3)] = 50 + -1 * (1 + z1) 3.24/3.30 NU[f3#(z1,z2,z3)] = 50 + -1 * (1 + z1) 3.24/3.30 3.24/3.30 This gives the following inequalities: 3.24/3.30 ==> 50 + -1 * (1 + I12) >= 50 + -1 * (1 + I12) 3.24/3.30 1 + I15 <= 50 ==> 50 + -1 * (1 + I15) > 50 + -1 * (1 + (1 + I15)) with 50 + -1 * (1 + I15) >= 0 3.24/3.30 3.24/3.30 We remove all the strictly oriented dependency pairs. 3.24/3.30 3.24/3.30 DP problem for innermost termination. 3.24/3.30 P = 3.24/3.30 f3#(I12, I13, I14) -> f1#(I12, I13, I14) 3.24/3.30 R = 3.24/3.30 f7(x1, x2, x3) -> f6(x1, x2, x3) 3.24/3.30 f6(I0, I1, I2) -> f3(0, 0, rnd3) [rnd3 = rnd3 /\ y1 = 0] 3.24/3.30 f4(I3, I4, I5) -> f2(I3, 1 + I4, I5) [1 + I4 <= 50] 3.24/3.30 f4(I6, I7, I8) -> f5(I6, I7, I8) [50 <= I7] 3.24/3.30 f2(I9, I10, I11) -> f4(I9, I10, I11) 3.24/3.30 f3(I12, I13, I14) -> f1(I12, I13, I14) 3.24/3.30 f1(I15, I16, I17) -> f3(1 + I15, I16, I17) [1 + I15 <= 50] 3.24/3.30 f1(I18, I19, I20) -> f2(I18, 0, I20) [50 <= I18] 3.24/3.30 3.24/3.30 The dependency graph for this problem is: 3.24/3.30 4 -> 3.24/3.30 Where: 3.24/3.30 4) f3#(I12, I13, I14) -> f1#(I12, I13, I14) 3.24/3.30 3.24/3.30 We have the following SCCs. 3.24/3.30 3.24/6.28 EOF