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) Matrix Interpretation Processor: dim=1 interpretation: [div#](x0, x1) = 2x0, [f](x0, x1, x2) = x0 + 2, [div](x0, x1) = x0, [s](x0) = 4x0 + 1, [0] = 0, [minus](x0, x1) = x0 orientation: div#(s(x),s(y)) = 8x + 2 >= 2x = div#(minus(x,y),s(y)) minus(x,x) = x >= 0 = 0() minus(s(x),s(y)) = 4x + 1 >= x = minus(x,y) minus(0(),x) = 0 >= 0 = 0() minus(x,0()) = x >= x = x div(s(x),s(y)) = 4x + 1 >= 4x + 1 = s(div(minus(x,y),s(y))) div(0(),s(y)) = 0 >= 0 = 0() f(x,0(),b) = x + 2 >= x = x f(x,s(y),b) = x + 2 >= x + 2 = div(f(x,minus(s(y),s(0())),b),b) 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 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) Matrix Interpretation Processor: dim=1 interpretation: [minus#](x0, x1) = x0, [f](x0, x1, x2) = 2x0 + 4x2 + 1, [div](x0, x1) = x0, [s](x0) = 2x0 + 1, [0] = 0, [minus](x0, x1) = x0 orientation: minus#(s(x),s(y)) = 2x + 1 >= x = minus#(x,y) minus(x,x) = x >= 0 = 0() minus(s(x),s(y)) = 2x + 1 >= x = minus(x,y) minus(0(),x) = 0 >= 0 = 0() minus(x,0()) = x >= x = x div(s(x),s(y)) = 2x + 1 >= 2x + 1 = s(div(minus(x,y),s(y))) div(0(),s(y)) = 0 >= 0 = 0() f(x,0(),b) = 4b + 2x + 1 >= x = x f(x,s(y),b) = 4b + 2x + 1 >= 4b + 2x + 1 = div(f(x,minus(s(y),s(0())),b),b) 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