YES Problem: -(x,0()) -> x -(0(),s(y)) -> 0() -(s(x),s(y)) -> -(x,y) lt(x,0()) -> false() lt(0(),s(y)) -> true() lt(s(x),s(y)) -> lt(x,y) if(true(),x,y) -> x if(false(),x,y) -> y div(x,0()) -> 0() div(0(),y) -> 0() div(s(x),s(y)) -> if(lt(x,y),0(),s(div(-(x,y),s(y)))) Proof: DP Processor: DPs: -#(s(x),s(y)) -> -#(x,y) lt#(s(x),s(y)) -> lt#(x,y) div#(s(x),s(y)) -> -#(x,y) div#(s(x),s(y)) -> div#(-(x,y),s(y)) div#(s(x),s(y)) -> lt#(x,y) div#(s(x),s(y)) -> if#(lt(x,y),0(),s(div(-(x,y),s(y)))) TRS: -(x,0()) -> x -(0(),s(y)) -> 0() -(s(x),s(y)) -> -(x,y) lt(x,0()) -> false() lt(0(),s(y)) -> true() lt(s(x),s(y)) -> lt(x,y) if(true(),x,y) -> x if(false(),x,y) -> y div(x,0()) -> 0() div(0(),y) -> 0() div(s(x),s(y)) -> if(lt(x,y),0(),s(div(-(x,y),s(y)))) LPO Processor: argument filtering: pi(0) = [] pi(-) = 0 pi(s) = [0] pi(lt) = [] pi(false) = [] pi(true) = [] pi(if) = [1,2] pi(div) = [0] pi(-#) = 0 pi(lt#) = 0 pi(if#) = 0 pi(div#) = 0 precedence: div > s > lt > div# ~ if# ~ lt# ~ -# ~ if ~ true ~ false ~ - ~ 0 problem: DPs: TRS: -(x,0()) -> x -(0(),s(y)) -> 0() -(s(x),s(y)) -> -(x,y) lt(x,0()) -> false() lt(0(),s(y)) -> true() lt(s(x),s(y)) -> lt(x,y) if(true(),x,y) -> x if(false(),x,y) -> y div(x,0()) -> 0() div(0(),y) -> 0() div(s(x),s(y)) -> if(lt(x,y),0(),s(div(-(x,y),s(y)))) Qed