MAYBE Problem: minus(x,x) -> 0() minus(s(x),s(y)) -> minus(x,y) minus(0(),x) -> 0() minus(x,0()) -> x div(s(x),s(y)) -> s(div(minus(x,y),s(y))) div(0(),s(y)) -> 0() f(x,0(),b) -> x f(x,s(y),b) -> div(f(x,minus(s(y),s(0())),b),b) Proof: DP Processor: DPs: minus#(s(x),s(y)) -> minus#(x,y) div#(s(x),s(y)) -> minus#(x,y) div#(s(x),s(y)) -> div#(minus(x,y),s(y)) f#(x,s(y),b) -> minus#(s(y),s(0())) f#(x,s(y),b) -> f#(x,minus(s(y),s(0())),b) f#(x,s(y),b) -> div#(f(x,minus(s(y),s(0())),b),b) TRS: minus(x,x) -> 0() minus(s(x),s(y)) -> minus(x,y) minus(0(),x) -> 0() minus(x,0()) -> x div(s(x),s(y)) -> s(div(minus(x,y),s(y))) div(0(),s(y)) -> 0() f(x,0(),b) -> x f(x,s(y),b) -> div(f(x,minus(s(y),s(0())),b),b) TDG Processor: DPs: minus#(s(x),s(y)) -> minus#(x,y) div#(s(x),s(y)) -> minus#(x,y) div#(s(x),s(y)) -> div#(minus(x,y),s(y)) f#(x,s(y),b) -> minus#(s(y),s(0())) f#(x,s(y),b) -> f#(x,minus(s(y),s(0())),b) f#(x,s(y),b) -> div#(f(x,minus(s(y),s(0())),b),b) TRS: minus(x,x) -> 0() minus(s(x),s(y)) -> minus(x,y) minus(0(),x) -> 0() minus(x,0()) -> x div(s(x),s(y)) -> s(div(minus(x,y),s(y))) div(0(),s(y)) -> 0() f(x,0(),b) -> x f(x,s(y),b) -> div(f(x,minus(s(y),s(0())),b),b) graph: f#(x,s(y),b) -> f#(x,minus(s(y),s(0())),b) -> f#(x,s(y),b) -> div#(f(x,minus(s(y),s(0())),b),b) f#(x,s(y),b) -> f#(x,minus(s(y),s(0())),b) -> f#(x,s(y),b) -> f#(x,minus(s(y),s(0())),b) f#(x,s(y),b) -> f#(x,minus(s(y),s(0())),b) -> f#(x,s(y),b) -> minus#(s(y),s(0())) f#(x,s(y),b) -> div#(f(x,minus(s(y),s(0())),b),b) -> div#(s(x),s(y)) -> div#(minus(x,y),s(y)) f#(x,s(y),b) -> div#(f(x,minus(s(y),s(0())),b),b) -> div#(s(x),s(y)) -> minus#(x,y) f#(x,s(y),b) -> minus#(s(y),s(0())) -> minus#(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)) -> 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)) -> minus#(x,y) minus#(s(x),s(y)) -> minus#(x,y) -> minus#(s(x),s(y)) -> minus#(x,y) SCC Processor: #sccs: 3 #rules: 3 #arcs: 10/36 DPs: f#(x,s(y),b) -> f#(x,minus(s(y),s(0())),b) TRS: minus(x,x) -> 0() minus(s(x),s(y)) -> minus(x,y) minus(0(),x) -> 0() minus(x,0()) -> x div(s(x),s(y)) -> s(div(minus(x,y),s(y))) div(0(),s(y)) -> 0() f(x,0(),b) -> x f(x,s(y),b) -> div(f(x,minus(s(y),s(0())),b),b) Open DPs: div#(s(x),s(y)) -> div#(minus(x,y),s(y)) TRS: minus(x,x) -> 0() minus(s(x),s(y)) -> minus(x,y) minus(0(),x) -> 0() minus(x,0()) -> x div(s(x),s(y)) -> s(div(minus(x,y),s(y))) div(0(),s(y)) -> 0() f(x,0(),b) -> x f(x,s(y),b) -> div(f(x,minus(s(y),s(0())),b),b) Usable Rule Processor: DPs: div#(s(x),s(y)) -> div#(minus(x,y),s(y)) TRS: minus(x,x) -> 0() minus(s(x),s(y)) -> minus(x,y) minus(0(),x) -> 0() minus(x,0()) -> x Arctic Interpretation Processor: dimension: 1 usable rules: minus(x,x) -> 0() minus(s(x),s(y)) -> minus(x,y) minus(0(),x) -> 0() minus(x,0()) -> x interpretation: [div#](x0, x1) = x0 + 0, [s](x0) = 4x0 + 4, [0] = 0, [minus](x0, x1) = x0 + 0 orientation: div#(s(x),s(y)) = 4x + 4 >= x + 0 = div#(minus(x,y),s(y)) minus(x,x) = x + 0 >= 0 = 0() minus(s(x),s(y)) = 4x + 4 >= x + 0 = minus(x,y) minus(0(),x) = 0 >= 0 = 0() minus(x,0()) = x + 0 >= x = x problem: DPs: TRS: minus(x,x) -> 0() minus(s(x),s(y)) -> minus(x,y) minus(0(),x) -> 0() minus(x,0()) -> x Qed DPs: minus#(s(x),s(y)) -> minus#(x,y) TRS: minus(x,x) -> 0() minus(s(x),s(y)) -> minus(x,y) minus(0(),x) -> 0() minus(x,0()) -> x div(s(x),s(y)) -> s(div(minus(x,y),s(y))) div(0(),s(y)) -> 0() f(x,0(),b) -> x f(x,s(y),b) -> div(f(x,minus(s(y),s(0())),b),b) Subterm Criterion Processor: simple projection: pi(minus#) = 1 problem: DPs: TRS: minus(x,x) -> 0() minus(s(x),s(y)) -> minus(x,y) minus(0(),x) -> 0() minus(x,0()) -> x div(s(x),s(y)) -> s(div(minus(x,y),s(y))) div(0(),s(y)) -> 0() f(x,0(),b) -> x f(x,s(y),b) -> div(f(x,minus(s(y),s(0())),b),b) Qed