1.70/1.73 YES 1.70/1.73 1.70/1.73 DP problem for innermost termination. 1.70/1.73 P = 1.70/1.73 eval_2#(x, y) -> eval_1#(x - 1, y) [x > 0 && y >= 0 && y >= x] 1.70/1.73 eval_2#(I0, I1) -> eval_2#(I0, I1 + 1) [I0 > 0 && I1 >= 0 && I0 > I1] 1.70/1.73 eval_1#(I2, I3) -> eval_2#(I2, 0) [I2 > 0] 1.70/1.73 R = 1.70/1.73 eval_2(x, y) -> eval_1(x - 1, y) [x > 0 && y >= 0 && y >= x] 1.70/1.73 eval_2(I0, I1) -> eval_2(I0, I1 + 1) [I0 > 0 && I1 >= 0 && I0 > I1] 1.70/1.73 eval_1(I2, I3) -> eval_2(I2, 0) [I2 > 0] 1.70/1.73 1.70/1.73 We use the reverse value criterion with the projection function NU: 1.70/1.73 NU[eval_1#(z1,z2)] = z1 1.70/1.73 NU[eval_2#(z1,z2)] = z1 1.70/1.73 1.70/1.73 This gives the following inequalities: 1.70/1.73 x > 0 && y >= 0 && y >= x ==> x > x - 1 with x >= 0 1.70/1.73 I0 > 0 && I1 >= 0 && I0 > I1 ==> I0 >= I0 1.70/1.73 I2 > 0 ==> I2 >= I2 1.70/1.73 1.70/1.73 We remove all the strictly oriented dependency pairs. 1.70/1.73 1.70/1.73 DP problem for innermost termination. 1.70/1.73 P = 1.70/1.73 eval_2#(I0, I1) -> eval_2#(I0, I1 + 1) [I0 > 0 && I1 >= 0 && I0 > I1] 1.70/1.73 eval_1#(I2, I3) -> eval_2#(I2, 0) [I2 > 0] 1.70/1.73 R = 1.70/1.73 eval_2(x, y) -> eval_1(x - 1, y) [x > 0 && y >= 0 && y >= x] 1.70/1.73 eval_2(I0, I1) -> eval_2(I0, I1 + 1) [I0 > 0 && I1 >= 0 && I0 > I1] 1.70/1.73 eval_1(I2, I3) -> eval_2(I2, 0) [I2 > 0] 1.70/1.73 1.70/1.73 The dependency graph for this problem is: 1.70/1.73 1 -> 1 1.70/1.73 2 -> 1 1.70/1.73 Where: 1.70/1.73 1) eval_2#(I0, I1) -> eval_2#(I0, I1 + 1) [I0 > 0 && I1 >= 0 && I0 > I1] 1.70/1.73 2) eval_1#(I2, I3) -> eval_2#(I2, 0) [I2 > 0] 1.70/1.73 1.70/1.73 We have the following SCCs. 1.70/1.73 { 1 } 1.70/1.73 1.70/1.73 DP problem for innermost termination. 1.70/1.73 P = 1.70/1.73 eval_2#(I0, I1) -> eval_2#(I0, I1 + 1) [I0 > 0 && I1 >= 0 && I0 > I1] 1.70/1.73 R = 1.70/1.73 eval_2(x, y) -> eval_1(x - 1, y) [x > 0 && y >= 0 && y >= x] 1.70/1.73 eval_2(I0, I1) -> eval_2(I0, I1 + 1) [I0 > 0 && I1 >= 0 && I0 > I1] 1.70/1.73 eval_1(I2, I3) -> eval_2(I2, 0) [I2 > 0] 1.70/1.73 1.70/1.73 We use the reverse value criterion with the projection function NU: 1.70/1.73 NU[eval_2#(z1,z2)] = z1 + -1 * z2 1.70/1.73 1.70/1.73 This gives the following inequalities: 1.70/1.73 I0 > 0 && I1 >= 0 && I0 > I1 ==> I0 + -1 * I1 > I0 + -1 * (I1 + 1) with I0 + -1 * I1 >= 0 1.70/1.73 1.70/1.73 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 1.70/4.71 EOF