We are left with following problem, upon which TcT provides the
certificate YES(O(1),O(n^2)).

Strict Trs:
  { f(x, c(y)) -> f(x, s(f(y, y)))
  , f(s(x), y) -> f(x, s(c(y))) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(n^2))

We add the following weak dependency pairs:

Strict DPs:
  { f^#(x, c(y)) -> c_1(f^#(x, s(f(y, y))))
  , f^#(s(x), y) -> c_2(f^#(x, s(c(y)))) }

and mark the set of starting terms.

We are left with following problem, upon which TcT provides the
certificate YES(O(1),O(n^2)).

Strict DPs:
  { f^#(x, c(y)) -> c_1(f^#(x, s(f(y, y))))
  , f^#(s(x), y) -> c_2(f^#(x, s(c(y)))) }
Strict Trs:
  { f(x, c(y)) -> f(x, s(f(y, y)))
  , f(s(x), y) -> f(x, s(c(y))) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(n^2))

We use the processor 'matrix interpretation of dimension 2' to
orient following rules strictly.

DPs: { f^#(x, c(y)) -> c_1(f^#(x, s(f(y, y)))) }
Trs: { f(x, c(y)) -> f(x, s(f(y, y))) }

The induced complexity on above rules (modulo remaining rules) is
YES(?,O(n^2)) . These rules are moved into the corresponding weak
component(s).

Sub-proof:
----------
  The following argument positions are usable:
    Uargs(f) = {1, 2}, Uargs(c) = {1}, Uargs(s) = {1},
    Uargs(f^#) = {2}, Uargs(c_1) = {1}, Uargs(c_2) = {1}
  
  TcT has computed the following constructor-based matrix
  interpretation satisfying not(EDA).
  
      [f](x1, x2) = [1 0] x1 + [1 1] x2 + [0]
                    [0 0]      [0 0]      [0]
                                             
          [c](x1) = [1 0] x1 + [0]           
                    [1 1]      [2]           
                                             
          [s](x1) = [1 0] x1 + [1]           
                    [0 0]      [0]           
                                             
    [f^#](x1, x2) = [7 0] x1 + [5 7] x2 + [1]
                    [0 0]      [1 0]      [6]
                                             
        [c_1](x1) = [1 1] x1 + [1]           
                    [0 0]      [0]           
                                             
        [c_2](x1) = [1 0] x1 + [2]           
                    [0 0]      [0]           
  
  The order satisfies the following ordering constraints:
  
      [f(x, c(y))] =  [1 0] x + [2 1] y + [2]  
                      [0 0]     [0 0]     [0]  
                   >  [1 0] x + [2 1] y + [1]  
                      [0 0]     [0 0]     [0]  
                   =  [f(x, s(f(y, y)))]       
                                               
      [f(s(x), y)] =  [1 0] x + [1 1] y + [1]  
                      [0 0]     [0 0]     [0]  
                   >= [1 0] x + [1 0] y + [1]  
                      [0 0]     [0 0]     [0]  
                   =  [f(x, s(c(y)))]          
                                               
    [f^#(x, c(y))] =  [7 0] x + [12 7] y + [15]
                      [0 0]     [ 1 0]     [6] 
                   >  [7 0] x + [12 6] y + [14]
                      [0 0]     [ 0 0]     [0] 
                   =  [c_1(f^#(x, s(f(y, y))))]
                                               
    [f^#(s(x), y)] =  [7 0] x + [5 7] y + [8]  
                      [0 0]     [1 0]     [6]  
                   >= [7 0] x + [5 0] y + [8]  
                      [0 0]     [0 0]     [0]  
                   =  [c_2(f^#(x, s(c(y))))]   
                                               

We return to the main proof.

We are left with following problem, upon which TcT provides the
certificate YES(O(1),O(n^2)).

Strict DPs: { f^#(s(x), y) -> c_2(f^#(x, s(c(y)))) }
Strict Trs: { f(s(x), y) -> f(x, s(c(y))) }
Weak DPs: { f^#(x, c(y)) -> c_1(f^#(x, s(f(y, y)))) }
Weak Trs: { f(x, c(y)) -> f(x, s(f(y, y))) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(n^2))

We use the processor 'matrix interpretation of dimension 2' to
orient following rules strictly.

DPs: { f^#(s(x), y) -> c_2(f^#(x, s(c(y)))) }
Trs: { f(s(x), y) -> f(x, s(c(y))) }

The induced complexity on above rules (modulo remaining rules) is
YES(?,O(n^2)) . These rules are moved into the corresponding weak
component(s).

Sub-proof:
----------
  The following argument positions are usable:
    Uargs(f) = {1, 2}, Uargs(c) = {1}, Uargs(s) = {1},
    Uargs(f^#) = {2}, Uargs(c_1) = {1}, Uargs(c_2) = {1}
  
  TcT has computed the following constructor-based matrix
  interpretation satisfying not(EDA).
  
      [f](x1, x2) = [3 0] x1 + [1 3] x2 + [6]
                    [0 0]      [0 0]      [0]
                                             
          [c](x1) = [1 0] x1 + [0]           
                    [1 1]      [3]           
                                             
          [s](x1) = [1 0] x1 + [2]           
                    [0 0]      [0]           
                                             
    [f^#](x1, x2) = [4 0] x1 + [1 3] x2 + [0]
                    [0 0]      [0 4]      [0]
                                             
        [c_1](x1) = [1 0] x1 + [0]           
                    [0 0]      [0]           
                                             
        [c_2](x1) = [1 0] x1 + [0]           
                    [0 0]      [0]           
  
  The order satisfies the following ordering constraints:
  
      [f(x, c(y))] = [3 0] x + [4 3] y + [15] 
                     [0 0]     [0 0]     [0]  
                   > [3 0] x + [4 3] y + [14] 
                     [0 0]     [0 0]     [0]  
                   = [f(x, s(f(y, y)))]       
                                              
      [f(s(x), y)] = [3 0] x + [1 3] y + [12] 
                     [0 0]     [0 0]     [0]  
                   > [3 0] x + [1 0] y + [8]  
                     [0 0]     [0 0]     [0]  
                   = [f(x, s(c(y)))]          
                                              
    [f^#(x, c(y))] = [4 0] x + [4 3] y + [9]  
                     [0 0]     [4 4]     [12] 
                   > [4 0] x + [4 3] y + [8]  
                     [0 0]     [0 0]     [0]  
                   = [c_1(f^#(x, s(f(y, y))))]
                                              
    [f^#(s(x), y)] = [4 0] x + [1 3] y + [8]  
                     [0 0]     [0 4]     [0]  
                   > [4 0] x + [1 0] y + [2]  
                     [0 0]     [0 0]     [0]  
                   = [c_2(f^#(x, s(c(y))))]   
                                              

We return to the main proof.

We are left with following problem, upon which TcT provides the
certificate YES(O(1),O(1)).

Weak DPs:
  { f^#(x, c(y)) -> c_1(f^#(x, s(f(y, y))))
  , f^#(s(x), y) -> c_2(f^#(x, s(c(y)))) }
Weak Trs:
  { f(x, c(y)) -> f(x, s(f(y, y)))
  , f(s(x), y) -> f(x, s(c(y))) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(1))

Empty rules are trivially bounded

Hurray, we answered YES(O(1),O(n^2))