YES
O(n^2)
TRS:
 {
   app(app(app(curry(), f), x), y) -> app(app(f, x), y),
  app(app(plus(), app(s(), x)), y) -> app(s(), app(app(plus(), x), y)),
          app(app(plus(), 0()), y) -> y,
                             add() -> app(curry(), plus())
 }
 DUP: We consider a non-duplicating system.
  Trs:
   {
     app(app(app(curry(), f), x), y) -> app(app(f, x), y),
    app(app(plus(), app(s(), x)), y) -> app(s(), app(app(plus(), x), y)),
            app(app(plus(), 0()), y) -> y,
                               add() -> app(curry(), plus())
   }
  Matrix Interpretation:
   Interpretation class: triangular
           [1]
   [add] = [1]
   
             [0]
   [curry] = [0]
   
         [0]
   [s] = [0]
   
         [1]
   [0] = [1]
   
            [0]
   [plus] = [0]
   
         [X3]  [X1]    [1 1][X3]   [1 0][X1]   [0]
   [app]([X2], [X0]) = [0 1][X2] + [0 1][X0] + [1]
   
   
   Qed