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