YES Problem: pred(s(x)) -> x minus(x,0()) -> x minus(x,s(y)) -> pred(minus(x,y)) quot(0(),s(y)) -> 0() quot(s(x),s(y)) -> s(quot(minus(x,y),s(y))) Proof: DP Processor: DPs: minus#(x,s(y)) -> minus#(x,y) minus#(x,s(y)) -> pred#(minus(x,y)) quot#(s(x),s(y)) -> minus#(x,y) quot#(s(x),s(y)) -> quot#(minus(x,y),s(y)) TRS: pred(s(x)) -> x minus(x,0()) -> x minus(x,s(y)) -> pred(minus(x,y)) quot(0(),s(y)) -> 0() quot(s(x),s(y)) -> s(quot(minus(x,y),s(y))) Usable Rule Processor: DPs: minus#(x,s(y)) -> minus#(x,y) minus#(x,s(y)) -> pred#(minus(x,y)) quot#(s(x),s(y)) -> minus#(x,y) quot#(s(x),s(y)) -> quot#(minus(x,y),s(y)) TRS: minus(x,0()) -> x minus(x,s(y)) -> pred(minus(x,y)) pred(s(x)) -> x Matrix Interpretation Processor: dim=1 usable rules: minus(x,0()) -> x minus(x,s(y)) -> pred(minus(x,y)) pred(s(x)) -> x interpretation: [quot#](x0, x1) = x0 + 4x1, [minus#](x0, x1) = 2x0 + 4x1 + 2, [pred#](x0) = 2x0 + 5, [minus](x0, x1) = x0, [0] = 0, [pred](x0) = x0, [s](x0) = 2x0 + 1 orientation: minus#(x,s(y)) = 2x + 8y + 6 >= 2x + 4y + 2 = minus#(x,y) minus#(x,s(y)) = 2x + 8y + 6 >= 2x + 5 = pred#(minus(x,y)) quot#(s(x),s(y)) = 2x + 8y + 5 >= 2x + 4y + 2 = minus#(x,y) quot#(s(x),s(y)) = 2x + 8y + 5 >= x + 8y + 4 = quot#(minus(x,y),s(y)) minus(x,0()) = x >= x = x minus(x,s(y)) = x >= x = pred(minus(x,y)) pred(s(x)) = 2x + 1 >= x = x problem: DPs: TRS: minus(x,0()) -> x minus(x,s(y)) -> pred(minus(x,y)) pred(s(x)) -> x Qed