YES
O(n^2)
TRS:
 {
     a__f(X) -> f(X),
  a__f(g(X)) -> g(X),
      a__c() -> a__f(g(c())),
      a__c() -> c(),
  mark(g(X)) -> g(X),
   mark(c()) -> a__c(),
  mark(f(X)) -> a__f(X)
 }
 DUP: We consider a non-duplicating system.
  Trs:
   {
       a__f(X) -> f(X),
    a__f(g(X)) -> g(X),
        a__c() -> a__f(g(c())),
        a__c() -> c(),
    mark(g(X)) -> g(X),
     mark(c()) -> a__c(),
    mark(f(X)) -> a__f(X)
   }
  Matrix Interpretation:
   Interpretation class: triangular
       [X1]    [1 1][X1]   [0]
   [f]([X0]) = [0 0][X0] + [2]
   
          [X1]    [1 2][X1]   [2]
   [mark]([X0]) = [0 0][X0] + [3]
   
            [3]
   [a__c] = [2]
   
         [0]
   [c] = [2]
   
       [X1]    [1 0][X1]   [0]
   [g]([X0]) = [0 0][X0] + [1]
   
          [X1]    [1 1][X1]   [1]
   [a__f]([X0]) = [0 0][X0] + [2]
   
   
   Qed