YES Problem: minus(x,0()) -> x minus(s(x),s(y)) -> minus(x,y) f(0()) -> s(0()) f(s(x)) -> minus(s(x),g(f(x))) g(0()) -> 0() g(s(x)) -> minus(s(x),f(g(x))) Proof: DP Processor: DPs: minus#(s(x),s(y)) -> minus#(x,y) f#(s(x)) -> f#(x) f#(s(x)) -> g#(f(x)) f#(s(x)) -> minus#(s(x),g(f(x))) g#(s(x)) -> g#(x) g#(s(x)) -> f#(g(x)) g#(s(x)) -> minus#(s(x),f(g(x))) TRS: minus(x,0()) -> x minus(s(x),s(y)) -> minus(x,y) f(0()) -> s(0()) f(s(x)) -> minus(s(x),g(f(x))) g(0()) -> 0() g(s(x)) -> minus(s(x),f(g(x))) Matrix Interpretation Processor: dim=1 usable rules: minus(x,0()) -> x minus(s(x),s(y)) -> minus(x,y) f(0()) -> s(0()) f(s(x)) -> minus(s(x),g(f(x))) g(0()) -> 0() g(s(x)) -> minus(s(x),f(g(x))) interpretation: [g#](x0) = 2x0 + 4, [f#](x0) = 5x0 + 4, [minus#](x0, x1) = x1 + 5, [g](x0) = 2x0, [f](x0) = 4x0 + 2, [s](x0) = 5x0 + 2, [minus](x0, x1) = x0, [0] = 0 orientation: minus#(s(x),s(y)) = 5y + 7 >= y + 5 = minus#(x,y) f#(s(x)) = 25x + 14 >= 5x + 4 = f#(x) f#(s(x)) = 25x + 14 >= 8x + 8 = g#(f(x)) f#(s(x)) = 25x + 14 >= 8x + 9 = minus#(s(x),g(f(x))) g#(s(x)) = 10x + 8 >= 2x + 4 = g#(x) g#(s(x)) = 10x + 8 >= 10x + 4 = f#(g(x)) g#(s(x)) = 10x + 8 >= 8x + 7 = minus#(s(x),f(g(x))) minus(x,0()) = x >= x = x minus(s(x),s(y)) = 5x + 2 >= x = minus(x,y) f(0()) = 2 >= 2 = s(0()) f(s(x)) = 20x + 10 >= 5x + 2 = minus(s(x),g(f(x))) g(0()) = 0 >= 0 = 0() g(s(x)) = 10x + 4 >= 5x + 2 = minus(s(x),f(g(x))) problem: DPs: TRS: minus(x,0()) -> x minus(s(x),s(y)) -> minus(x,y) f(0()) -> s(0()) f(s(x)) -> minus(s(x),g(f(x))) g(0()) -> 0() g(s(x)) -> minus(s(x),f(g(x))) Qed