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))
  TDG 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))
   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(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(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(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(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(0(),x),n) -> battle#(x,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(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) -> 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(0(),x),y),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(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(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(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) -> f#(x,y,n)
    battle#(H(0(),x),n) -> battle#(x,s(n)) -> battle#(H(0(),x),n) -> battle#(x,s(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(0(),x),n) -> battle#(x,s(n))
     battle#(H(H(0(),x),y),n) -> battle#(f(x,y,n),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))
    Subterm Criterion Processor:
     simple projection:
      pi(f#) = 2
     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