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))) TDG 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)) -> 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) div#(s(X),s(Y)) -> minus#(X,Y) -> minus#(s(X),s(Y)) -> p#(minus(X,Y)) div#(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)) minus#(s(X),s(Y)) -> minus#(X,Y) -> minus#(s(X),s(Y)) -> 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))) Usable Rule Processor: 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 Arctic Interpretation Processor: dimension: 1 usable rules: minus(X,0()) -> X minus(s(X),s(Y)) -> p(minus(X,Y)) p(s(X)) -> X interpretation: [div#](x0, x1) = 3x0, [p](x0) = 3x0, [s](x0) = 4x0 + -3, [minus](x0, x1) = 2x0, [0] = 4 orientation: div#(s(X),s(Y)) = 7X + 0 >= 5X = div#(minus(X,Y),s(Y)) minus(X,0()) = 2X >= X = X minus(s(X),s(Y)) = 6X + -1 >= 5X = p(minus(X,Y)) p(s(X)) = 7X + 0 >= X = X problem: DPs: TRS: minus(X,0()) -> X minus(s(X),s(Y)) -> p(minus(X,Y)) p(s(X)) -> X 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