2.95/3.01 YES 2.95/3.01 2.95/3.01 DP problem for innermost termination. 2.95/3.01 P = 2.95/3.01 f7#(x1, x2, x3, x4) -> f6#(x1, x2, x3, x4) 2.95/3.01 f6#(I0, I1, I2, I3) -> f5#(I0, I1, I2, I3) 2.95/3.01 f6#(I4, I5, I6, I7) -> f4#(I4, I5, I6, I7) 2.95/3.01 f6#(I8, I9, I10, I11) -> f3#(I8, I9, I10, I11) 2.95/3.01 f6#(I12, I13, I14, I15) -> f1#(I12, I13, I14, I15) 2.95/3.01 f6#(I20, I21, I22, I23) -> f5#(I20, I23, rnd3, rnd4) [rnd4 = rnd3 /\ rnd3 = rnd3] 2.95/3.01 f5#(I24, I25, I26, I27) -> f4#(I24, I27, I26, 0) 2.95/3.01 f4#(I28, I29, I30, I31) -> f3#(I28, I31, I30, I31) [I31 <= I28] 2.95/3.01 f4#(I32, I33, I34, I35) -> f1#(I32, I35, I34, I35) [1 + I32 <= I35] 2.95/3.01 f3#(I36, I37, I38, I39) -> f4#(I36, I39, I38, 1 + I39) 2.95/3.01 R = 2.95/3.01 f7(x1, x2, x3, x4) -> f6(x1, x2, x3, x4) 2.95/3.01 f6(I0, I1, I2, I3) -> f5(I0, I1, I2, I3) 2.95/3.01 f6(I4, I5, I6, I7) -> f4(I4, I5, I6, I7) 2.95/3.01 f6(I8, I9, I10, I11) -> f3(I8, I9, I10, I11) 2.95/3.01 f6(I12, I13, I14, I15) -> f1(I12, I13, I14, I15) 2.95/3.01 f6(I16, I17, I18, I19) -> f2(I16, I17, I18, I19) 2.95/3.01 f6(I20, I21, I22, I23) -> f5(I20, I23, rnd3, rnd4) [rnd4 = rnd3 /\ rnd3 = rnd3] 2.95/3.01 f5(I24, I25, I26, I27) -> f4(I24, I27, I26, 0) 2.95/3.01 f4(I28, I29, I30, I31) -> f3(I28, I31, I30, I31) [I31 <= I28] 2.95/3.01 f4(I32, I33, I34, I35) -> f1(I32, I35, I34, I35) [1 + I32 <= I35] 2.95/3.01 f3(I36, I37, I38, I39) -> f4(I36, I39, I38, 1 + I39) 2.95/3.01 f1(I40, I41, I42, I43) -> f2(I40, I43, I44, I45) [I45 = I44 /\ I44 = I44] 2.95/3.01 2.95/3.01 The dependency graph for this problem is: 2.95/3.01 0 -> 1, 2, 3, 4, 5 2.95/3.01 1 -> 6 2.95/3.01 2 -> 7, 8 2.95/3.01 3 -> 9 2.95/3.01 4 -> 2.95/3.01 5 -> 6 2.95/3.01 6 -> 7, 8 2.95/3.01 7 -> 9 2.95/3.01 8 -> 2.95/3.01 9 -> 7, 8 2.95/3.01 Where: 2.95/3.01 0) f7#(x1, x2, x3, x4) -> f6#(x1, x2, x3, x4) 2.95/3.01 1) f6#(I0, I1, I2, I3) -> f5#(I0, I1, I2, I3) 2.95/3.01 2) f6#(I4, I5, I6, I7) -> f4#(I4, I5, I6, I7) 2.95/3.01 3) f6#(I8, I9, I10, I11) -> f3#(I8, I9, I10, I11) 2.95/3.01 4) f6#(I12, I13, I14, I15) -> f1#(I12, I13, I14, I15) 2.95/3.01 5) f6#(I20, I21, I22, I23) -> f5#(I20, I23, rnd3, rnd4) [rnd4 = rnd3 /\ rnd3 = rnd3] 2.95/3.01 6) f5#(I24, I25, I26, I27) -> f4#(I24, I27, I26, 0) 2.95/3.01 7) f4#(I28, I29, I30, I31) -> f3#(I28, I31, I30, I31) [I31 <= I28] 2.95/3.01 8) f4#(I32, I33, I34, I35) -> f1#(I32, I35, I34, I35) [1 + I32 <= I35] 2.95/3.01 9) f3#(I36, I37, I38, I39) -> f4#(I36, I39, I38, 1 + I39) 2.95/3.01 2.95/3.01 We have the following SCCs. 2.95/3.01 { 7, 9 } 2.95/3.01 2.95/3.01 DP problem for innermost termination. 2.95/3.01 P = 2.95/3.01 f4#(I28, I29, I30, I31) -> f3#(I28, I31, I30, I31) [I31 <= I28] 2.95/3.01 f3#(I36, I37, I38, I39) -> f4#(I36, I39, I38, 1 + I39) 2.95/3.01 R = 2.95/3.01 f7(x1, x2, x3, x4) -> f6(x1, x2, x3, x4) 2.95/3.01 f6(I0, I1, I2, I3) -> f5(I0, I1, I2, I3) 2.95/3.01 f6(I4, I5, I6, I7) -> f4(I4, I5, I6, I7) 2.95/3.01 f6(I8, I9, I10, I11) -> f3(I8, I9, I10, I11) 2.95/3.01 f6(I12, I13, I14, I15) -> f1(I12, I13, I14, I15) 2.95/3.01 f6(I16, I17, I18, I19) -> f2(I16, I17, I18, I19) 2.95/3.01 f6(I20, I21, I22, I23) -> f5(I20, I23, rnd3, rnd4) [rnd4 = rnd3 /\ rnd3 = rnd3] 2.95/3.01 f5(I24, I25, I26, I27) -> f4(I24, I27, I26, 0) 2.95/3.01 f4(I28, I29, I30, I31) -> f3(I28, I31, I30, I31) [I31 <= I28] 2.95/3.01 f4(I32, I33, I34, I35) -> f1(I32, I35, I34, I35) [1 + I32 <= I35] 2.95/3.01 f3(I36, I37, I38, I39) -> f4(I36, I39, I38, 1 + I39) 2.95/3.01 f1(I40, I41, I42, I43) -> f2(I40, I43, I44, I45) [I45 = I44 /\ I44 = I44] 2.95/3.01 2.95/3.01 We use the reverse value criterion with the projection function NU: 2.95/3.01 NU[f3#(z1,z2,z3,z4)] = z1 + -1 * (1 + z4) 2.95/3.01 NU[f4#(z1,z2,z3,z4)] = z1 + -1 * z4 2.95/3.01 2.95/3.01 This gives the following inequalities: 2.95/3.01 I31 <= I28 ==> I28 + -1 * I31 > I28 + -1 * (1 + I31) with I28 + -1 * I31 >= 0 2.95/3.01 ==> I36 + -1 * (1 + I39) >= I36 + -1 * (1 + I39) 2.95/3.01 2.95/3.01 We remove all the strictly oriented dependency pairs. 2.95/3.01 2.95/3.01 DP problem for innermost termination. 2.95/3.01 P = 2.95/3.01 f3#(I36, I37, I38, I39) -> f4#(I36, I39, I38, 1 + I39) 2.95/3.01 R = 2.95/3.01 f7(x1, x2, x3, x4) -> f6(x1, x2, x3, x4) 2.95/3.01 f6(I0, I1, I2, I3) -> f5(I0, I1, I2, I3) 2.95/3.01 f6(I4, I5, I6, I7) -> f4(I4, I5, I6, I7) 2.95/3.01 f6(I8, I9, I10, I11) -> f3(I8, I9, I10, I11) 2.95/3.01 f6(I12, I13, I14, I15) -> f1(I12, I13, I14, I15) 2.95/3.01 f6(I16, I17, I18, I19) -> f2(I16, I17, I18, I19) 2.95/3.01 f6(I20, I21, I22, I23) -> f5(I20, I23, rnd3, rnd4) [rnd4 = rnd3 /\ rnd3 = rnd3] 2.95/3.01 f5(I24, I25, I26, I27) -> f4(I24, I27, I26, 0) 2.95/3.01 f4(I28, I29, I30, I31) -> f3(I28, I31, I30, I31) [I31 <= I28] 2.95/3.01 f4(I32, I33, I34, I35) -> f1(I32, I35, I34, I35) [1 + I32 <= I35] 2.95/3.01 f3(I36, I37, I38, I39) -> f4(I36, I39, I38, 1 + I39) 2.95/3.01 f1(I40, I41, I42, I43) -> f2(I40, I43, I44, I45) [I45 = I44 /\ I44 = I44] 2.95/3.01 2.95/3.01 The dependency graph for this problem is: 2.95/3.01 9 -> 2.95/3.01 Where: 2.95/3.01 9) f3#(I36, I37, I38, I39) -> f4#(I36, I39, I38, 1 + I39) 2.95/3.01 2.95/3.01 We have the following SCCs. 2.95/3.01 2.95/5.99 EOF