4.86/4.83 YES 4.86/4.83 4.86/4.83 DP problem for innermost termination. 4.86/4.83 P = 4.86/4.83 init#(x1, x2, x3, x4) -> f1#(rnd1, rnd2, rnd3, rnd4) 4.86/4.83 f3#(I0, I1, I2, I3) -> f3#(I0, I1 - 1, I2 - 1, I2 - 1) [I2 = I3 /\ 0 <= I2 - 1] 4.86/4.83 f3#(I4, I5, I6, I7) -> f3#(I4, I5 + 1, I6 + 1, I6 + 1) [I6 = I7 /\ I6 <= 0 /\ 0 <= I6 - 1] 4.86/4.83 f3#(I8, I9, I10, I11) -> f3#(I8, I9 + 1, I10 + 1, I10 + 1) [I10 = I11 /\ I10 <= 0 /\ I10 <= -1] 4.86/4.83 f3#(I12, I13, I14, I15) -> f2#(I13, I12, I16, I17) [0 = I15 /\ 0 = I14] 4.86/4.83 f2#(I18, I19, I20, I21) -> f3#(I19, I18, I19, I19) [0 <= I19 - 1 /\ I19 <= I18] 4.86/4.83 f1#(I22, I23, I24, I25) -> f2#(I26, I27, I28, I29) [0 <= I22 - 1 /\ -1 <= I26 - 1 /\ 1 <= I23 - 1 /\ -1 <= I27 - 1] 4.86/4.83 R = 4.86/4.83 init(x1, x2, x3, x4) -> f1(rnd1, rnd2, rnd3, rnd4) 4.86/4.83 f3(I0, I1, I2, I3) -> f3(I0, I1 - 1, I2 - 1, I2 - 1) [I2 = I3 /\ 0 <= I2 - 1] 4.86/4.83 f3(I4, I5, I6, I7) -> f3(I4, I5 + 1, I6 + 1, I6 + 1) [I6 = I7 /\ I6 <= 0 /\ 0 <= I6 - 1] 4.86/4.83 f3(I8, I9, I10, I11) -> f3(I8, I9 + 1, I10 + 1, I10 + 1) [I10 = I11 /\ I10 <= 0 /\ I10 <= -1] 4.86/4.83 f3(I12, I13, I14, I15) -> f2(I13, I12, I16, I17) [0 = I15 /\ 0 = I14] 4.86/4.83 f2(I18, I19, I20, I21) -> f3(I19, I18, I19, I19) [0 <= I19 - 1 /\ I19 <= I18] 4.86/4.83 f1(I22, I23, I24, I25) -> f2(I26, I27, I28, I29) [0 <= I22 - 1 /\ -1 <= I26 - 1 /\ 1 <= I23 - 1 /\ -1 <= I27 - 1] 4.86/4.83 4.86/4.83 The dependency graph for this problem is: 4.86/4.83 0 -> 6 4.86/4.83 1 -> 1, 4 4.86/4.83 2 -> 4.86/4.83 3 -> 3, 4 4.86/4.83 4 -> 5 4.86/4.83 5 -> 1 4.86/4.83 6 -> 5 4.86/4.83 Where: 4.86/4.83 0) init#(x1, x2, x3, x4) -> f1#(rnd1, rnd2, rnd3, rnd4) 4.86/4.83 1) f3#(I0, I1, I2, I3) -> f3#(I0, I1 - 1, I2 - 1, I2 - 1) [I2 = I3 /\ 0 <= I2 - 1] 4.86/4.83 2) f3#(I4, I5, I6, I7) -> f3#(I4, I5 + 1, I6 + 1, I6 + 1) [I6 = I7 /\ I6 <= 0 /\ 0 <= I6 - 1] 4.86/4.83 3) f3#(I8, I9, I10, I11) -> f3#(I8, I9 + 1, I10 + 1, I10 + 1) [I10 = I11 /\ I10 <= 0 /\ I10 <= -1] 4.86/4.83 4) f3#(I12, I13, I14, I15) -> f2#(I13, I12, I16, I17) [0 = I15 /\ 0 = I14] 4.86/4.83 5) f2#(I18, I19, I20, I21) -> f3#(I19, I18, I19, I19) [0 <= I19 - 1 /\ I19 <= I18] 4.86/4.83 6) f1#(I22, I23, I24, I25) -> f2#(I26, I27, I28, I29) [0 <= I22 - 1 /\ -1 <= I26 - 1 /\ 1 <= I23 - 1 /\ -1 <= I27 - 1] 4.86/4.83 4.86/4.83 We have the following SCCs. 4.86/4.83 { 3 } 4.86/4.83 { 1, 4, 5 } 4.86/4.83 4.86/4.83 DP problem for innermost termination. 4.86/4.83 P = 4.86/4.83 f3#(I0, I1, I2, I3) -> f3#(I0, I1 - 1, I2 - 1, I2 - 1) [I2 = I3 /\ 0 <= I2 - 1] 4.86/4.83 f3#(I12, I13, I14, I15) -> f2#(I13, I12, I16, I17) [0 = I15 /\ 0 = I14] 4.86/4.83 f2#(I18, I19, I20, I21) -> f3#(I19, I18, I19, I19) [0 <= I19 - 1 /\ I19 <= I18] 4.86/4.83 R = 4.86/4.83 init(x1, x2, x3, x4) -> f1(rnd1, rnd2, rnd3, rnd4) 4.86/4.83 f3(I0, I1, I2, I3) -> f3(I0, I1 - 1, I2 - 1, I2 - 1) [I2 = I3 /\ 0 <= I2 - 1] 4.86/4.83 f3(I4, I5, I6, I7) -> f3(I4, I5 + 1, I6 + 1, I6 + 1) [I6 = I7 /\ I6 <= 0 /\ 0 <= I6 - 1] 4.86/4.83 f3(I8, I9, I10, I11) -> f3(I8, I9 + 1, I10 + 1, I10 + 1) [I10 = I11 /\ I10 <= 0 /\ I10 <= -1] 4.86/4.83 f3(I12, I13, I14, I15) -> f2(I13, I12, I16, I17) [0 = I15 /\ 0 = I14] 4.86/4.83 f2(I18, I19, I20, I21) -> f3(I19, I18, I19, I19) [0 <= I19 - 1 /\ I19 <= I18] 4.86/4.83 f1(I22, I23, I24, I25) -> f2(I26, I27, I28, I29) [0 <= I22 - 1 /\ -1 <= I26 - 1 /\ 1 <= I23 - 1 /\ -1 <= I27 - 1] 4.86/4.83 4.86/4.83 We use the extended value criterion with the projection function NU: 4.86/4.83 NU[f2#(x0,x1,x2,x3)] = x0 - x1 4.86/4.83 NU[f3#(x0,x1,x2,x3)] = -x0 + x1 - x2 4.86/4.83 4.86/4.83 This gives the following inequalities: 4.86/4.83 I2 = I3 /\ 0 <= I2 - 1 ==> -I0 + I1 - I2 >= -I0 + (I1 - 1) - (I2 - 1) 4.86/4.83 0 = I15 /\ 0 = I14 ==> -I12 + I13 - I14 >= I13 - I12 4.86/4.83 0 <= I19 - 1 /\ I19 <= I18 ==> I18 - I19 > -I19 + I18 - I19 with I18 - I19 >= 0 4.86/4.83 4.86/4.83 We remove all the strictly oriented dependency pairs. 4.86/4.83 4.86/4.83 DP problem for innermost termination. 4.86/4.83 P = 4.86/4.83 f3#(I0, I1, I2, I3) -> f3#(I0, I1 - 1, I2 - 1, I2 - 1) [I2 = I3 /\ 0 <= I2 - 1] 4.86/4.83 f3#(I12, I13, I14, I15) -> f2#(I13, I12, I16, I17) [0 = I15 /\ 0 = I14] 4.86/4.83 R = 4.86/4.83 init(x1, x2, x3, x4) -> f1(rnd1, rnd2, rnd3, rnd4) 4.86/4.83 f3(I0, I1, I2, I3) -> f3(I0, I1 - 1, I2 - 1, I2 - 1) [I2 = I3 /\ 0 <= I2 - 1] 4.86/4.83 f3(I4, I5, I6, I7) -> f3(I4, I5 + 1, I6 + 1, I6 + 1) [I6 = I7 /\ I6 <= 0 /\ 0 <= I6 - 1] 4.86/4.83 f3(I8, I9, I10, I11) -> f3(I8, I9 + 1, I10 + 1, I10 + 1) [I10 = I11 /\ I10 <= 0 /\ I10 <= -1] 4.86/4.83 f3(I12, I13, I14, I15) -> f2(I13, I12, I16, I17) [0 = I15 /\ 0 = I14] 4.86/4.83 f2(I18, I19, I20, I21) -> f3(I19, I18, I19, I19) [0 <= I19 - 1 /\ I19 <= I18] 4.86/4.83 f1(I22, I23, I24, I25) -> f2(I26, I27, I28, I29) [0 <= I22 - 1 /\ -1 <= I26 - 1 /\ 1 <= I23 - 1 /\ -1 <= I27 - 1] 4.86/4.83 4.86/4.83 The dependency graph for this problem is: 4.86/4.83 1 -> 1, 4 4.86/4.83 4 -> 4.86/4.83 Where: 4.86/4.83 1) f3#(I0, I1, I2, I3) -> f3#(I0, I1 - 1, I2 - 1, I2 - 1) [I2 = I3 /\ 0 <= I2 - 1] 4.86/4.83 4) f3#(I12, I13, I14, I15) -> f2#(I13, I12, I16, I17) [0 = I15 /\ 0 = I14] 4.86/4.83 4.86/4.83 We have the following SCCs. 4.86/4.83 { 1 } 4.86/4.83 4.86/4.83 DP problem for innermost termination. 4.86/4.83 P = 4.86/4.83 f3#(I0, I1, I2, I3) -> f3#(I0, I1 - 1, I2 - 1, I2 - 1) [I2 = I3 /\ 0 <= I2 - 1] 4.86/4.83 R = 4.86/4.83 init(x1, x2, x3, x4) -> f1(rnd1, rnd2, rnd3, rnd4) 4.86/4.83 f3(I0, I1, I2, I3) -> f3(I0, I1 - 1, I2 - 1, I2 - 1) [I2 = I3 /\ 0 <= I2 - 1] 4.86/4.83 f3(I4, I5, I6, I7) -> f3(I4, I5 + 1, I6 + 1, I6 + 1) [I6 = I7 /\ I6 <= 0 /\ 0 <= I6 - 1] 4.86/4.83 f3(I8, I9, I10, I11) -> f3(I8, I9 + 1, I10 + 1, I10 + 1) [I10 = I11 /\ I10 <= 0 /\ I10 <= -1] 4.86/4.83 f3(I12, I13, I14, I15) -> f2(I13, I12, I16, I17) [0 = I15 /\ 0 = I14] 4.86/4.83 f2(I18, I19, I20, I21) -> f3(I19, I18, I19, I19) [0 <= I19 - 1 /\ I19 <= I18] 4.86/4.83 f1(I22, I23, I24, I25) -> f2(I26, I27, I28, I29) [0 <= I22 - 1 /\ -1 <= I26 - 1 /\ 1 <= I23 - 1 /\ -1 <= I27 - 1] 4.86/4.83 4.86/4.83 We use the basic value criterion with the projection function NU: 4.86/4.83 NU[f3#(z1,z2,z3,z4)] = z4 4.86/4.83 4.86/4.83 This gives the following inequalities: 4.86/4.83 I2 = I3 /\ 0 <= I2 - 1 ==> I3 >! I2 - 1 4.86/4.83 4.86/4.83 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 4.86/4.83 4.86/4.83 DP problem for innermost termination. 4.86/4.83 P = 4.86/4.83 f3#(I8, I9, I10, I11) -> f3#(I8, I9 + 1, I10 + 1, I10 + 1) [I10 = I11 /\ I10 <= 0 /\ I10 <= -1] 4.86/4.83 R = 4.86/4.83 init(x1, x2, x3, x4) -> f1(rnd1, rnd2, rnd3, rnd4) 4.86/4.83 f3(I0, I1, I2, I3) -> f3(I0, I1 - 1, I2 - 1, I2 - 1) [I2 = I3 /\ 0 <= I2 - 1] 4.86/4.83 f3(I4, I5, I6, I7) -> f3(I4, I5 + 1, I6 + 1, I6 + 1) [I6 = I7 /\ I6 <= 0 /\ 0 <= I6 - 1] 4.86/4.83 f3(I8, I9, I10, I11) -> f3(I8, I9 + 1, I10 + 1, I10 + 1) [I10 = I11 /\ I10 <= 0 /\ I10 <= -1] 4.86/4.83 f3(I12, I13, I14, I15) -> f2(I13, I12, I16, I17) [0 = I15 /\ 0 = I14] 4.86/4.83 f2(I18, I19, I20, I21) -> f3(I19, I18, I19, I19) [0 <= I19 - 1 /\ I19 <= I18] 4.86/4.83 f1(I22, I23, I24, I25) -> f2(I26, I27, I28, I29) [0 <= I22 - 1 /\ -1 <= I26 - 1 /\ 1 <= I23 - 1 /\ -1 <= I27 - 1] 4.86/4.83 4.86/4.83 We use the reverse value criterion with the projection function NU: 4.86/4.83 NU[f3#(z1,z2,z3,z4)] = 0 + -1 * z3 4.86/4.83 4.86/4.83 This gives the following inequalities: 4.86/4.83 I10 = I11 /\ I10 <= 0 /\ I10 <= -1 ==> 0 + -1 * I10 > 0 + -1 * (I10 + 1) with 0 + -1 * I10 >= 0 4.86/4.83 4.86/4.83 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 4.86/7.81 EOF