YES Problem: minus(X,0()) -> X minus(s(X),s(Y)) -> p(minus(X,Y)) p(s(X)) -> X div(0(),s(Y)) -> 0() div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) Proof: DP Processor: DPs: minus#(s(X),s(Y)) -> minus#(X,Y) minus#(s(X),s(Y)) -> p#(minus(X,Y)) div#(s(X),s(Y)) -> minus#(X,Y) div#(s(X),s(Y)) -> div#(minus(X,Y),s(Y)) TRS: minus(X,0()) -> X minus(s(X),s(Y)) -> p(minus(X,Y)) p(s(X)) -> X div(0(),s(Y)) -> 0() div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) EDG Processor: DPs: minus#(s(X),s(Y)) -> minus#(X,Y) minus#(s(X),s(Y)) -> p#(minus(X,Y)) div#(s(X),s(Y)) -> minus#(X,Y) div#(s(X),s(Y)) -> div#(minus(X,Y),s(Y)) TRS: minus(X,0()) -> X minus(s(X),s(Y)) -> p(minus(X,Y)) p(s(X)) -> X div(0(),s(Y)) -> 0() div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) graph: div#(s(X),s(Y)) -> div#(minus(X,Y),s(Y)) -> div#(s(X),s(Y)) -> minus#(X,Y) div#(s(X),s(Y)) -> div#(minus(X,Y),s(Y)) -> div#(s(X),s(Y)) -> div#(minus(X,Y),s(Y)) div#(s(X),s(Y)) -> minus#(X,Y) -> minus#(s(X),s(Y)) -> minus#(X,Y) div#(s(X),s(Y)) -> minus#(X,Y) -> minus#(s(X),s(Y)) -> p#(minus(X,Y)) minus#(s(X),s(Y)) -> minus#(X,Y) -> minus#(s(X),s(Y)) -> minus#(X,Y) minus#(s(X),s(Y)) -> minus#(X,Y) -> minus#(s(X),s(Y)) -> p#(minus(X,Y)) SCC Processor: #sccs: 2 #rules: 2 #arcs: 6/16 DPs: div#(s(X),s(Y)) -> div#(minus(X,Y),s(Y)) TRS: minus(X,0()) -> X minus(s(X),s(Y)) -> p(minus(X,Y)) p(s(X)) -> X div(0(),s(Y)) -> 0() div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) Matrix Interpretation Processor: dimension: 1 interpretation: [div#](x0, x1) = x0, [div](x0, x1) = x0, [p](x0) = x0 + 1, [s](x0) = x0 + 1, [minus](x0, x1) = x0, [0] = 1 orientation: div#(s(X),s(Y)) = X + 1 >= X = div#(minus(X,Y),s(Y)) minus(X,0()) = X >= X = X minus(s(X),s(Y)) = X + 1 >= X + 1 = p(minus(X,Y)) p(s(X)) = X + 2 >= X = X div(0(),s(Y)) = 1 >= 1 = 0() div(s(X),s(Y)) = X + 1 >= X + 1 = s(div(minus(X,Y),s(Y))) problem: DPs: TRS: minus(X,0()) -> X minus(s(X),s(Y)) -> p(minus(X,Y)) p(s(X)) -> X div(0(),s(Y)) -> 0() div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) Qed DPs: minus#(s(X),s(Y)) -> minus#(X,Y) TRS: minus(X,0()) -> X minus(s(X),s(Y)) -> p(minus(X,Y)) p(s(X)) -> X div(0(),s(Y)) -> 0() div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) Subterm Criterion Processor: simple projection: pi(minus#) = 1 problem: DPs: TRS: minus(X,0()) -> X minus(s(X),s(Y)) -> p(minus(X,Y)) p(s(X)) -> X div(0(),s(Y)) -> 0() div(s(X),s(Y)) -> s(div(minus(X,Y),s(Y))) Qed