1.04/1.07 MAYBE 1.04/1.07 1.04/1.07 DP problem for innermost termination. 1.04/1.07 P = 1.04/1.07 f5#(x1) -> f4#(x1) 1.04/1.07 f4#(I0) -> f1#(100) 1.04/1.07 f3#(I1) -> f1#(I1) 1.04/1.07 f2#(I2) -> f3#(I2) [301 <= I2] 1.04/1.07 f2#(I3) -> f3#(I3) [1 + I3 <= 300] 1.04/1.07 f1#(I4) -> f2#(-1 + I4) 1.04/1.07 R = 1.04/1.07 f5(x1) -> f4(x1) 1.04/1.07 f4(I0) -> f1(100) 1.04/1.07 f3(I1) -> f1(I1) 1.04/1.07 f2(I2) -> f3(I2) [301 <= I2] 1.04/1.07 f2(I3) -> f3(I3) [1 + I3 <= 300] 1.04/1.07 f1(I4) -> f2(-1 + I4) 1.04/1.07 1.04/1.07 The dependency graph for this problem is: 1.04/1.07 0 -> 1 1.04/1.07 1 -> 5 1.04/1.07 2 -> 5 1.04/1.07 3 -> 2 1.04/1.07 4 -> 2 1.04/1.07 5 -> 3, 4 1.04/1.07 Where: 1.04/1.07 0) f5#(x1) -> f4#(x1) 1.04/1.07 1) f4#(I0) -> f1#(100) 1.04/1.07 2) f3#(I1) -> f1#(I1) 1.04/1.07 3) f2#(I2) -> f3#(I2) [301 <= I2] 1.04/1.07 4) f2#(I3) -> f3#(I3) [1 + I3 <= 300] 1.04/1.07 5) f1#(I4) -> f2#(-1 + I4) 1.04/1.07 1.04/1.07 We have the following SCCs. 1.04/1.07 { 2, 3, 4, 5 } 1.04/1.07 1.04/1.07 DP problem for innermost termination. 1.04/1.07 P = 1.04/1.07 f3#(I1) -> f1#(I1) 1.04/1.07 f2#(I2) -> f3#(I2) [301 <= I2] 1.04/1.07 f2#(I3) -> f3#(I3) [1 + I3 <= 300] 1.04/1.07 f1#(I4) -> f2#(-1 + I4) 1.04/1.07 R = 1.04/1.07 f5(x1) -> f4(x1) 1.04/1.07 f4(I0) -> f1(100) 1.04/1.07 f3(I1) -> f1(I1) 1.04/1.07 f2(I2) -> f3(I2) [301 <= I2] 1.04/1.07 f2(I3) -> f3(I3) [1 + I3 <= 300] 1.04/1.07 f1(I4) -> f2(-1 + I4) 1.04/1.07 1.04/1.07 We use the extended value criterion with the projection function NU: 1.04/1.07 NU[f2#(x0)] = x0 1.04/1.07 NU[f1#(x0)] = x0 - 1 1.04/1.07 NU[f3#(x0)] = x0 - 1 1.04/1.07 1.04/1.07 This gives the following inequalities: 1.04/1.07 ==> I1 - 1 >= I1 - 1 1.04/1.07 301 <= I2 ==> I2 > I2 - 1 with I2 >= 0 1.04/1.07 1 + I3 <= 300 ==> I3 >= I3 - 1 1.04/1.07 ==> I4 - 1 >= (-1 + I4) 1.04/1.07 1.04/1.07 We remove all the strictly oriented dependency pairs. 1.04/1.07 1.04/1.07 DP problem for innermost termination. 1.04/1.07 P = 1.04/1.07 f3#(I1) -> f1#(I1) 1.04/1.07 f2#(I3) -> f3#(I3) [1 + I3 <= 300] 1.04/1.07 f1#(I4) -> f2#(-1 + I4) 1.04/1.07 R = 1.04/1.07 f5(x1) -> f4(x1) 1.04/1.07 f4(I0) -> f1(100) 1.04/1.07 f3(I1) -> f1(I1) 1.04/1.07 f2(I2) -> f3(I2) [301 <= I2] 1.04/1.07 f2(I3) -> f3(I3) [1 + I3 <= 300] 1.04/1.07 f1(I4) -> f2(-1 + I4) 1.04/1.07 1.04/1.08 EOF