MAYBE Problem: battle(H(0(),x),n) -> battle(x,s(n)) battle(H(H(0(),x),y),n) -> battle(f(x,y,n),s(n)) battle(H(H(H(0(),x),y),z),n) -> battle(H(f(x,y,n),z),s(n)) f(x,y,o()) -> y f(x,y,s(n)) -> H(x,f(x,y,n)) Proof: DP Processor: DPs: battle#(H(0(),x),n) -> battle#(x,s(n)) battle#(H(H(0(),x),y),n) -> f#(x,y,n) battle#(H(H(0(),x),y),n) -> battle#(f(x,y,n),s(n)) battle#(H(H(H(0(),x),y),z),n) -> f#(x,y,n) battle#(H(H(H(0(),x),y),z),n) -> battle#(H(f(x,y,n),z),s(n)) f#(x,y,s(n)) -> f#(x,y,n) TRS: battle(H(0(),x),n) -> battle(x,s(n)) battle(H(H(0(),x),y),n) -> battle(f(x,y,n),s(n)) battle(H(H(H(0(),x),y),z),n) -> battle(H(f(x,y,n),z),s(n)) f(x,y,o()) -> y f(x,y,s(n)) -> H(x,f(x,y,n)) Usable Rule Processor: DPs: battle#(H(0(),x),n) -> battle#(x,s(n)) battle#(H(H(0(),x),y),n) -> f#(x,y,n) battle#(H(H(0(),x),y),n) -> battle#(f(x,y,n),s(n)) battle#(H(H(H(0(),x),y),z),n) -> f#(x,y,n) battle#(H(H(H(0(),x),y),z),n) -> battle#(H(f(x,y,n),z),s(n)) f#(x,y,s(n)) -> f#(x,y,n) TRS: f(x,y,o()) -> y f(x,y,s(n)) -> H(x,f(x,y,n)) Open