Problem:
 p(0()) -> 0()
 p(s(X)) -> X
 leq(0(),Y) -> true()
 leq(s(X),0()) -> false()
 leq(s(X),s(Y)) -> leq(X,Y)
 if(true(),X,Y) -> X
 if(false(),X,Y) -> Y
 diff(X,Y) -> if(leq(X,Y),0(),s(diff(p(X),Y)))

Proof:
 Containment Processor:
  loop length: 1
  terms:
   diff(X,Y)
  context: if(leq(X,Y),0(),s([]))
  substitution:
   X -> p(X)
   Y -> Y
  Qed