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: f8(x,y) -> x f8(x,y) -> y f(x,y,o()) -> y f(x,y,s(n)) -> H(x,f(x,y,n)) ADG 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: f8(x,y) -> x f8(x,y) -> y f(x,y,o()) -> y f(x,y,s(n)) -> H(x,f(x,y,n)) graph: f#(x,y,s(n)) -> f#(x,y,n) -> f#(x,y,s(n)) -> f#(x,y,n) battle#(H(H(H(0(),x),y),z),n) -> f#(x,y,n) -> f#(x,y,s(n)) -> f#(x,y,n) battle#(H(H(H(0(),x),y),z),n) -> battle#(H(f(x,y,n),z),s(n)) -> battle#(H(0(),x),n) -> battle#(x,s(n)) battle#(H(H(H(0(),x),y),z),n) -> battle#(H(f(x,y,n),z),s(n)) -> battle#(H(H(0(),x),y),n) -> f#(x,y,n) battle#(H(H(H(0(),x),y),z),n) -> battle#(H(f(x,y,n),z),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)) -> 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)) -> battle#(H(H(H(0(),x),y),z),n) -> battle#(H(f(x,y,n),z),s(n)) battle#(H(H(0(),x),y),n) -> f#(x,y,n) -> f#(x,y,s(n)) -> f#(x,y,n) battle#(H(H(0(),x),y),n) -> battle#(f(x,y,n),s(n)) -> 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(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(0(),x),y),n) -> battle#(f(x,y,n),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) -> 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) -> battle#(H(f(x,y,n),z),s(n)) battle#(H(0(),x),n) -> battle#(x,s(n)) -> battle#(H(0(),x),n) -> battle#(x,s(n)) battle#(H(0(),x),n) -> battle#(x,s(n)) -> battle#(H(H(0(),x),y),n) -> f#(x,y,n) 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(0(),x),n) -> battle#(x,s(n)) -> battle#(H(H(H(0(),x),y),z),n) -> f#(x,y,n) battle#(H(0(),x),n) -> battle#(x,s(n)) -> battle#(H(H(H(0(),x),y),z),n) -> battle#(H(f(x,y,n),z),s(n)) Restore Modifier: 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)) SCC Processor: #sccs: 2 #rules: 4 #arcs: 18/36 DPs: battle#(H(H(H(0(),x),y),z),n) -> battle#(H(f(x,y,n),z),s(n)) battle#(H(H(0(),x),y),n) -> battle#(f(x,y,n),s(n)) battle#(H(0(),x),n) -> battle#(x,s(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)) Open DPs: 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)) Matrix Interpretation Processor: dimension: 1 interpretation: [f#](x0, x1, x2) = x2 + 1, [o] = 0, [f](x0, x1, x2) = x1, [s](x0) = x0 + 1, [battle](x0, x1) = 0, [H](x0, x1) = x1, [0] = 0 orientation: f#(x,y,s(n)) = n + 2 >= n + 1 = f#(x,y,n) battle(H(0(),x),n) = 0 >= 0 = battle(x,s(n)) battle(H(H(0(),x),y),n) = 0 >= 0 = battle(f(x,y,n),s(n)) battle(H(H(H(0(),x),y),z),n) = 0 >= 0 = battle(H(f(x,y,n),z),s(n)) f(x,y,o()) = y >= y = y f(x,y,s(n)) = y >= y = H(x,f(x,y,n)) problem: DPs: 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)) Qed