0.00/0.33 YES 0.00/0.33 0.00/0.33 DP problem for innermost termination. 0.00/0.33 P = 0.00/0.33 eval#(x, y) -> eval#(x, y - 1) [x > 0 && y > 0] 0.00/0.33 eval#(I0, I1) -> eval#(I0 - 1, z) [I0 > 0 && I1 > 0] 0.00/0.33 R = 0.00/0.33 eval(x, y) -> eval(x, y - 1) [x > 0 && y > 0] 0.00/0.33 eval(I0, I1) -> eval(I0 - 1, z) [I0 > 0 && I1 > 0] 0.00/0.33 0.00/0.33 We use the reverse value criterion with the projection function NU: 0.00/0.33 NU[eval#(z1,z2)] = z1 0.00/0.33 0.00/0.33 This gives the following inequalities: 0.00/0.33 x > 0 && y > 0 ==> x >= x 0.00/0.33 I0 > 0 && I1 > 0 ==> I0 > I0 - 1 with I0 >= 0 0.00/0.33 0.00/0.33 We remove all the strictly oriented dependency pairs. 0.00/0.33 0.00/0.33 DP problem for innermost termination. 0.00/0.33 P = 0.00/0.33 eval#(x, y) -> eval#(x, y - 1) [x > 0 && y > 0] 0.00/0.33 R = 0.00/0.33 eval(x, y) -> eval(x, y - 1) [x > 0 && y > 0] 0.00/0.33 eval(I0, I1) -> eval(I0 - 1, z) [I0 > 0 && I1 > 0] 0.00/0.33 0.00/0.33 We use the reverse value criterion with the projection function NU: 0.00/0.33 NU[eval#(z1,z2)] = z2 0.00/0.33 0.00/0.33 This gives the following inequalities: 0.00/0.33 x > 0 && y > 0 ==> y > y - 1 with y >= 0 0.00/0.33 0.00/0.33 All dependency pairs are strictly oriented, so the entire dependency pair problem may be removed. 0.00/3.31 EOF