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

Strict Trs:
  { f_0(x) -> a()
  , f_1(x) -> g_1(x, x)
  , g_1(s(x), y) -> b(f_0(y), g_1(x, y))
  , f_2(x) -> g_2(x, x)
  , g_2(s(x), y) -> b(f_1(y), g_2(x, y))
  , f_3(x) -> g_3(x, x)
  , g_3(s(x), y) -> b(f_2(y), g_3(x, y))
  , f_4(x) -> g_4(x, x)
  , g_4(s(x), y) -> b(f_3(y), g_4(x, y))
  , f_5(x) -> g_5(x, x)
  , g_5(s(x), y) -> b(f_4(y), g_5(x, y)) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(n^5))

We add the following weak dependency pairs:

Strict DPs:
  { f_0^#(x) -> c_1()
  , f_1^#(x) -> c_2(g_1^#(x, x))
  , g_1^#(s(x), y) -> c_3(f_0^#(y), g_1^#(x, y))
  , f_2^#(x) -> c_4(g_2^#(x, x))
  , g_2^#(s(x), y) -> c_5(f_1^#(y), g_2^#(x, y))
  , f_3^#(x) -> c_6(g_3^#(x, x))
  , g_3^#(s(x), y) -> c_7(f_2^#(y), g_3^#(x, y))
  , f_4^#(x) -> c_8(g_4^#(x, x))
  , g_4^#(s(x), y) -> c_9(f_3^#(y), g_4^#(x, y))
  , f_5^#(x) -> c_10(g_5^#(x, x))
  , g_5^#(s(x), y) -> c_11(f_4^#(y), g_5^#(x, 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^5)).

Strict DPs:
  { f_0^#(x) -> c_1()
  , f_1^#(x) -> c_2(g_1^#(x, x))
  , g_1^#(s(x), y) -> c_3(f_0^#(y), g_1^#(x, y))
  , f_2^#(x) -> c_4(g_2^#(x, x))
  , g_2^#(s(x), y) -> c_5(f_1^#(y), g_2^#(x, y))
  , f_3^#(x) -> c_6(g_3^#(x, x))
  , g_3^#(s(x), y) -> c_7(f_2^#(y), g_3^#(x, y))
  , f_4^#(x) -> c_8(g_4^#(x, x))
  , g_4^#(s(x), y) -> c_9(f_3^#(y), g_4^#(x, y))
  , f_5^#(x) -> c_10(g_5^#(x, x))
  , g_5^#(s(x), y) -> c_11(f_4^#(y), g_5^#(x, y)) }
Strict Trs:
  { f_0(x) -> a()
  , f_1(x) -> g_1(x, x)
  , g_1(s(x), y) -> b(f_0(y), g_1(x, y))
  , f_2(x) -> g_2(x, x)
  , g_2(s(x), y) -> b(f_1(y), g_2(x, y))
  , f_3(x) -> g_3(x, x)
  , g_3(s(x), y) -> b(f_2(y), g_3(x, y))
  , f_4(x) -> g_4(x, x)
  , g_4(s(x), y) -> b(f_3(y), g_4(x, y))
  , f_5(x) -> g_5(x, x)
  , g_5(s(x), y) -> b(f_4(y), g_5(x, y)) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(n^5))

No rule is usable, rules are removed from the input problem.

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

Strict DPs:
  { f_0^#(x) -> c_1()
  , f_1^#(x) -> c_2(g_1^#(x, x))
  , g_1^#(s(x), y) -> c_3(f_0^#(y), g_1^#(x, y))
  , f_2^#(x) -> c_4(g_2^#(x, x))
  , g_2^#(s(x), y) -> c_5(f_1^#(y), g_2^#(x, y))
  , f_3^#(x) -> c_6(g_3^#(x, x))
  , g_3^#(s(x), y) -> c_7(f_2^#(y), g_3^#(x, y))
  , f_4^#(x) -> c_8(g_4^#(x, x))
  , g_4^#(s(x), y) -> c_9(f_3^#(y), g_4^#(x, y))
  , f_5^#(x) -> c_10(g_5^#(x, x))
  , g_5^#(s(x), y) -> c_11(f_4^#(y), g_5^#(x, y)) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(n^5))

The weightgap principle applies (using the following constant
growth matrix-interpretation)

The following argument positions are usable:
  Uargs(c_2) = {1}, Uargs(c_3) = {1, 2}, Uargs(c_4) = {1},
  Uargs(c_5) = {1, 2}, Uargs(c_6) = {1}, Uargs(c_7) = {1, 2},
  Uargs(c_8) = {1}, Uargs(c_9) = {1, 2}, Uargs(c_10) = {1},
  Uargs(c_11) = {1, 2}

TcT has computed the following constructor-restricted matrix
interpretation.

          [s](x1) = [1 0] x1 + [0]           
                    [0 1]      [0]           
                                             
      [f_0^#](x1) = [0 0] x1 + [1]           
                    [0 2]      [1]           
                                             
            [c_1] = [0]                      
                    [0]                      
                                             
      [f_1^#](x1) = [0 0] x1 + [1]           
                    [2 0]      [0]           
                                             
        [c_2](x1) = [1 0] x1 + [0]           
                    [0 1]      [0]           
                                             
  [g_1^#](x1, x2) = [0 0] x1 + [0 0] x2 + [1]
                    [0 2]      [0 2]      [0]
                                             
    [c_3](x1, x2) = [1 0] x1 + [1 0] x2 + [2]
                    [0 1]      [0 1]      [0]
                                             
      [f_2^#](x1) = [0 0] x1 + [1]           
                    [2 1]      [0]           
                                             
        [c_4](x1) = [1 0] x1 + [0]           
                    [0 1]      [0]           
                                             
  [g_2^#](x1, x2) = [1]                      
                    [0]                      
                                             
    [c_5](x1, x2) = [1 0] x1 + [1 0] x2 + [2]
                    [0 1]      [0 1]      [0]
                                             
      [f_3^#](x1) = [0 0] x1 + [1]           
                    [2 2]      [0]           
                                             
        [c_6](x1) = [1 0] x1 + [0]           
                    [0 1]      [0]           
                                             
  [g_3^#](x1, x2) = [1]                      
                    [0]                      
                                             
    [c_7](x1, x2) = [1 0] x1 + [1 0] x2 + [2]
                    [0 1]      [0 1]      [0]
                                             
      [f_4^#](x1) = [0 0] x1 + [0]           
                    [1 1]      [0]           
                                             
        [c_8](x1) = [1 0] x1 + [0]           
                    [0 1]      [0]           
                                             
  [g_4^#](x1, x2) = [1]                      
                    [0]                      
                                             
    [c_9](x1, x2) = [1 0] x1 + [1 0] x2 + [2]
                    [0 1]      [0 1]      [0]
                                             
      [f_5^#](x1) = [1 1] x1 + [2]           
                    [1 1]      [1]           
                                             
       [c_10](x1) = [1 0] x1 + [0]           
                    [0 1]      [0]           
                                             
  [g_5^#](x1, x2) = [1 0] x1 + [0]           
                    [0 0]      [0]           
                                             
   [c_11](x1, x2) = [1 0] x1 + [1 0] x2 + [2]
                    [0 1]      [0 1]      [0]

The order satisfies the following ordering constraints:

        [f_0^#(x)] =  [0 0] x + [1]                
                      [0 2]     [1]                
                   >  [0]                          
                      [0]                          
                   =  [c_1()]                      
                                                   
        [f_1^#(x)] =  [0 0] x + [1]                
                      [2 0]     [0]                
                   ?  [0 0] x + [1]                
                      [0 4]     [0]                
                   =  [c_2(g_1^#(x, x))]           
                                                   
  [g_1^#(s(x), y)] =  [0 0] x + [0 0] y + [1]      
                      [0 2]     [0 2]     [0]      
                   ?  [0 0] x + [0 0] y + [4]      
                      [0 2]     [0 4]     [1]      
                   =  [c_3(f_0^#(y), g_1^#(x, y))] 
                                                   
        [f_2^#(x)] =  [0 0] x + [1]                
                      [2 1]     [0]                
                   >= [1]                          
                      [0]                          
                   =  [c_4(g_2^#(x, x))]           
                                                   
  [g_2^#(s(x), y)] =  [1]                          
                      [0]                          
                   ?  [0 0] y + [4]                
                      [2 0]     [0]                
                   =  [c_5(f_1^#(y), g_2^#(x, y))] 
                                                   
        [f_3^#(x)] =  [0 0] x + [1]                
                      [2 2]     [0]                
                   >= [1]                          
                      [0]                          
                   =  [c_6(g_3^#(x, x))]           
                                                   
  [g_3^#(s(x), y)] =  [1]                          
                      [0]                          
                   ?  [0 0] y + [4]                
                      [2 1]     [0]                
                   =  [c_7(f_2^#(y), g_3^#(x, y))] 
                                                   
        [f_4^#(x)] =  [0 0] x + [0]                
                      [1 1]     [0]                
                   ?  [1]                          
                      [0]                          
                   =  [c_8(g_4^#(x, x))]           
                                                   
  [g_4^#(s(x), y)] =  [1]                          
                      [0]                          
                   ?  [0 0] y + [4]                
                      [2 2]     [0]                
                   =  [c_9(f_3^#(y), g_4^#(x, y))] 
                                                   
        [f_5^#(x)] =  [1 1] x + [2]                
                      [1 1]     [1]                
                   >  [1 0] x + [0]                
                      [0 0]     [0]                
                   =  [c_10(g_5^#(x, x))]          
                                                   
  [g_5^#(s(x), y)] =  [1 0] x + [0]                
                      [0 0]     [0]                
                   ?  [1 0] x + [0 0] y + [2]      
                      [0 0]     [1 1]     [0]      
                   =  [c_11(f_4^#(y), g_5^#(x, y))]
                                                   

Further, it can be verified that all rules not oriented are covered by the weightgap condition.

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

Strict DPs:
  { f_1^#(x) -> c_2(g_1^#(x, x))
  , g_1^#(s(x), y) -> c_3(f_0^#(y), g_1^#(x, y))
  , f_2^#(x) -> c_4(g_2^#(x, x))
  , g_2^#(s(x), y) -> c_5(f_1^#(y), g_2^#(x, y))
  , f_3^#(x) -> c_6(g_3^#(x, x))
  , g_3^#(s(x), y) -> c_7(f_2^#(y), g_3^#(x, y))
  , f_4^#(x) -> c_8(g_4^#(x, x))
  , g_4^#(s(x), y) -> c_9(f_3^#(y), g_4^#(x, y))
  , g_5^#(s(x), y) -> c_11(f_4^#(y), g_5^#(x, y)) }
Weak DPs:
  { f_0^#(x) -> c_1()
  , f_5^#(x) -> c_10(g_5^#(x, x)) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(n^5))

The following weak DPs constitute a sub-graph of the DG that is
closed under successors. The DPs are removed.

{ f_0^#(x) -> c_1() }

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

Strict DPs:
  { f_1^#(x) -> c_2(g_1^#(x, x))
  , g_1^#(s(x), y) -> c_3(f_0^#(y), g_1^#(x, y))
  , f_2^#(x) -> c_4(g_2^#(x, x))
  , g_2^#(s(x), y) -> c_5(f_1^#(y), g_2^#(x, y))
  , f_3^#(x) -> c_6(g_3^#(x, x))
  , g_3^#(s(x), y) -> c_7(f_2^#(y), g_3^#(x, y))
  , f_4^#(x) -> c_8(g_4^#(x, x))
  , g_4^#(s(x), y) -> c_9(f_3^#(y), g_4^#(x, y))
  , g_5^#(s(x), y) -> c_11(f_4^#(y), g_5^#(x, y)) }
Weak DPs: { f_5^#(x) -> c_10(g_5^#(x, x)) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(n^5))

Due to missing edges in the dependency-graph, the right-hand sides
of following rules could be simplified:

  { g_1^#(s(x), y) -> c_3(f_0^#(y), g_1^#(x, y)) }

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

Strict DPs:
  { f_1^#(x) -> c_1(g_1^#(x, x))
  , g_1^#(s(x), y) -> c_2(g_1^#(x, y))
  , f_2^#(x) -> c_3(g_2^#(x, x))
  , g_2^#(s(x), y) -> c_4(f_1^#(y), g_2^#(x, y))
  , f_3^#(x) -> c_5(g_3^#(x, x))
  , g_3^#(s(x), y) -> c_6(f_2^#(y), g_3^#(x, y))
  , f_4^#(x) -> c_7(g_4^#(x, x))
  , g_4^#(s(x), y) -> c_8(f_3^#(y), g_4^#(x, y))
  , g_5^#(s(x), y) -> c_9(f_4^#(y), g_5^#(x, y)) }
Weak DPs: { f_5^#(x) -> c_10(g_5^#(x, x)) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(n^5))

Consider the dependency graph

  1: f_1^#(x) -> c_1(g_1^#(x, x))
     -->_1 g_1^#(s(x), y) -> c_2(g_1^#(x, y)) :2
  
  2: g_1^#(s(x), y) -> c_2(g_1^#(x, y))
     -->_1 g_1^#(s(x), y) -> c_2(g_1^#(x, y)) :2
  
  3: f_2^#(x) -> c_3(g_2^#(x, x))
     -->_1 g_2^#(s(x), y) -> c_4(f_1^#(y), g_2^#(x, y)) :4
  
  4: g_2^#(s(x), y) -> c_4(f_1^#(y), g_2^#(x, y))
     -->_2 g_2^#(s(x), y) -> c_4(f_1^#(y), g_2^#(x, y)) :4
     -->_1 f_1^#(x) -> c_1(g_1^#(x, x)) :1
  
  5: f_3^#(x) -> c_5(g_3^#(x, x))
     -->_1 g_3^#(s(x), y) -> c_6(f_2^#(y), g_3^#(x, y)) :6
  
  6: g_3^#(s(x), y) -> c_6(f_2^#(y), g_3^#(x, y))
     -->_2 g_3^#(s(x), y) -> c_6(f_2^#(y), g_3^#(x, y)) :6
     -->_1 f_2^#(x) -> c_3(g_2^#(x, x)) :3
  
  7: f_4^#(x) -> c_7(g_4^#(x, x))
     -->_1 g_4^#(s(x), y) -> c_8(f_3^#(y), g_4^#(x, y)) :8
  
  8: g_4^#(s(x), y) -> c_8(f_3^#(y), g_4^#(x, y))
     -->_2 g_4^#(s(x), y) -> c_8(f_3^#(y), g_4^#(x, y)) :8
     -->_1 f_3^#(x) -> c_5(g_3^#(x, x)) :5
  
  9: g_5^#(s(x), y) -> c_9(f_4^#(y), g_5^#(x, y))
     -->_2 g_5^#(s(x), y) -> c_9(f_4^#(y), g_5^#(x, y)) :9
     -->_1 f_4^#(x) -> c_7(g_4^#(x, x)) :7
  
  10: f_5^#(x) -> c_10(g_5^#(x, x))
     -->_1 g_5^#(s(x), y) -> c_9(f_4^#(y), g_5^#(x, y)) :9
  

Following roots of the dependency graph are removed, as the
considered set of starting terms is closed under reduction with
respect to these rules (modulo compound contexts).

  { f_5^#(x) -> c_10(g_5^#(x, x)) }


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

Strict DPs:
  { f_1^#(x) -> c_1(g_1^#(x, x))
  , g_1^#(s(x), y) -> c_2(g_1^#(x, y))
  , f_2^#(x) -> c_3(g_2^#(x, x))
  , g_2^#(s(x), y) -> c_4(f_1^#(y), g_2^#(x, y))
  , f_3^#(x) -> c_5(g_3^#(x, x))
  , g_3^#(s(x), y) -> c_6(f_2^#(y), g_3^#(x, y))
  , f_4^#(x) -> c_7(g_4^#(x, x))
  , g_4^#(s(x), y) -> c_8(f_3^#(y), g_4^#(x, y))
  , g_5^#(s(x), y) -> c_9(f_4^#(y), g_5^#(x, y)) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(n^5))

We decompose the input problem according to the dependency graph
into the upper component

  { g_5^#(s(x), y) -> c_9(f_4^#(y), g_5^#(x, y)) }

and lower component

  { f_1^#(x) -> c_1(g_1^#(x, x))
  , g_1^#(s(x), y) -> c_2(g_1^#(x, y))
  , f_2^#(x) -> c_3(g_2^#(x, x))
  , g_2^#(s(x), y) -> c_4(f_1^#(y), g_2^#(x, y))
  , f_3^#(x) -> c_5(g_3^#(x, x))
  , g_3^#(s(x), y) -> c_6(f_2^#(y), g_3^#(x, y))
  , f_4^#(x) -> c_7(g_4^#(x, x))
  , g_4^#(s(x), y) -> c_8(f_3^#(y), g_4^#(x, y)) }

Further, following extension rules are added to the lower
component.

{ g_5^#(s(x), y) -> f_4^#(y)
, g_5^#(s(x), y) -> g_5^#(x, y) }

TcT solves the upper component with certificate YES(O(1),O(n^1)).

Sub-proof:
----------
  We are left with following problem, upon which TcT provides the
  certificate YES(O(1),O(n^1)).
  
  Strict DPs: { g_5^#(s(x), y) -> c_9(f_4^#(y), g_5^#(x, y)) }
  Obligation:
    runtime complexity
  Answer:
    YES(O(1),O(n^1))
  
  We use the processor 'matrix interpretation of dimension 1' to
  orient following rules strictly.
  
  DPs:
    { 1: g_5^#(s(x), y) -> c_9(f_4^#(y), g_5^#(x, y)) }
  
  Sub-proof:
  ----------
    The following argument positions are usable:
      Uargs(c_9) = {2}
    
    TcT has computed the following constructor-based matrix
    interpretation satisfying not(EDA).
    
              [s](x1) = [1] x1 + [3]
                                    
          [f_4^#](x1) = [0]         
                                    
      [g_5^#](x1, x2) = [4] x1 + [3]
                                    
        [c_9](x1, x2) = [1] x2 + [4]
    
    The order satisfies the following ordering constraints:
    
      [g_5^#(s(x), y)] = [4] x + [15]                
                       > [4] x + [7]                 
                       = [c_9(f_4^#(y), g_5^#(x, y))]
                                                     
  
  The strictly oriented rules are moved into the weak component.
  
  We are left with following problem, upon which TcT provides the
  certificate YES(O(1),O(1)).
  
  Weak DPs: { g_5^#(s(x), y) -> c_9(f_4^#(y), g_5^#(x, y)) }
  Obligation:
    runtime complexity
  Answer:
    YES(O(1),O(1))
  
  The following weak DPs constitute a sub-graph of the DG that is
  closed under successors. The DPs are removed.
  
  { g_5^#(s(x), y) -> c_9(f_4^#(y), g_5^#(x, y)) }
  
  We are left with following problem, upon which TcT provides the
  certificate YES(O(1),O(1)).
  
  Rules: Empty
  Obligation:
    runtime complexity
  Answer:
    YES(O(1),O(1))
  
  Empty rules are trivially bounded

We return to the main proof.

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

Strict DPs:
  { f_1^#(x) -> c_1(g_1^#(x, x))
  , g_1^#(s(x), y) -> c_2(g_1^#(x, y))
  , f_2^#(x) -> c_3(g_2^#(x, x))
  , g_2^#(s(x), y) -> c_4(f_1^#(y), g_2^#(x, y))
  , f_3^#(x) -> c_5(g_3^#(x, x))
  , g_3^#(s(x), y) -> c_6(f_2^#(y), g_3^#(x, y))
  , f_4^#(x) -> c_7(g_4^#(x, x))
  , g_4^#(s(x), y) -> c_8(f_3^#(y), g_4^#(x, y)) }
Weak DPs:
  { g_5^#(s(x), y) -> f_4^#(y)
  , g_5^#(s(x), y) -> g_5^#(x, y) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(n^4))

We decompose the input problem according to the dependency graph
into the upper component

  { f_4^#(x) -> c_7(g_4^#(x, x))
  , g_4^#(s(x), y) -> c_8(f_3^#(y), g_4^#(x, y))
  , g_5^#(s(x), y) -> f_4^#(y)
  , g_5^#(s(x), y) -> g_5^#(x, y) }

and lower component

  { f_1^#(x) -> c_1(g_1^#(x, x))
  , g_1^#(s(x), y) -> c_2(g_1^#(x, y))
  , f_2^#(x) -> c_3(g_2^#(x, x))
  , g_2^#(s(x), y) -> c_4(f_1^#(y), g_2^#(x, y))
  , f_3^#(x) -> c_5(g_3^#(x, x))
  , g_3^#(s(x), y) -> c_6(f_2^#(y), g_3^#(x, y)) }

Further, following extension rules are added to the lower
component.

{ f_4^#(x) -> g_4^#(x, x)
, g_4^#(s(x), y) -> f_3^#(y)
, g_4^#(s(x), y) -> g_4^#(x, y)
, g_5^#(s(x), y) -> f_4^#(y)
, g_5^#(s(x), y) -> g_5^#(x, y) }

TcT solves the upper component with certificate YES(O(1),O(n^1)).

Sub-proof:
----------
  We are left with following problem, upon which TcT provides the
  certificate YES(O(1),O(n^1)).
  
  Strict DPs:
    { f_4^#(x) -> c_7(g_4^#(x, x))
    , g_4^#(s(x), y) -> c_8(f_3^#(y), g_4^#(x, y)) }
  Weak DPs:
    { g_5^#(s(x), y) -> f_4^#(y)
    , g_5^#(s(x), y) -> g_5^#(x, y) }
  Obligation:
    runtime complexity
  Answer:
    YES(O(1),O(n^1))
  
  We use the processor 'matrix interpretation of dimension 1' to
  orient following rules strictly.
  
  DPs:
    { 1: f_4^#(x) -> c_7(g_4^#(x, x))
    , 2: g_4^#(s(x), y) -> c_8(f_3^#(y), g_4^#(x, y)) }
  
  Sub-proof:
  ----------
    The following argument positions are usable:
      Uargs(c_7) = {1}, Uargs(c_8) = {2}
    
    TcT has computed the following constructor-based matrix
    interpretation satisfying not(EDA).
    
              [s](x1) = [1] x1 + [2]         
                                             
          [f_3^#](x1) = [1]                  
                                             
          [f_4^#](x1) = [7] x1 + [1]         
                                             
      [g_4^#](x1, x2) = [4] x1 + [0]         
                                             
      [g_5^#](x1, x2) = [7] x2 + [1]         
                                             
            [c_7](x1) = [1] x1 + [0]         
                                             
        [c_8](x1, x2) = [3] x1 + [1] x2 + [4]
    
    The order satisfies the following ordering constraints:
    
            [f_4^#(x)] =  [7] x + [1]                 
                       >  [4] x + [0]                 
                       =  [c_7(g_4^#(x, x))]          
                                                      
      [g_4^#(s(x), y)] =  [4] x + [8]                 
                       >  [4] x + [7]                 
                       =  [c_8(f_3^#(y), g_4^#(x, y))]
                                                      
      [g_5^#(s(x), y)] =  [7] y + [1]                 
                       >= [7] y + [1]                 
                       =  [f_4^#(y)]                  
                                                      
      [g_5^#(s(x), y)] =  [7] y + [1]                 
                       >= [7] y + [1]                 
                       =  [g_5^#(x, y)]               
                                                      
  
  The strictly oriented rules are moved into the weak component.
  
  We are left with following problem, upon which TcT provides the
  certificate YES(O(1),O(1)).
  
  Weak DPs:
    { f_4^#(x) -> c_7(g_4^#(x, x))
    , g_4^#(s(x), y) -> c_8(f_3^#(y), g_4^#(x, y))
    , g_5^#(s(x), y) -> f_4^#(y)
    , g_5^#(s(x), y) -> g_5^#(x, y) }
  Obligation:
    runtime complexity
  Answer:
    YES(O(1),O(1))
  
  The following weak DPs constitute a sub-graph of the DG that is
  closed under successors. The DPs are removed.
  
  { f_4^#(x) -> c_7(g_4^#(x, x))
  , g_4^#(s(x), y) -> c_8(f_3^#(y), g_4^#(x, y))
  , g_5^#(s(x), y) -> f_4^#(y)
  , g_5^#(s(x), y) -> g_5^#(x, y) }
  
  We are left with following problem, upon which TcT provides the
  certificate YES(O(1),O(1)).
  
  Rules: Empty
  Obligation:
    runtime complexity
  Answer:
    YES(O(1),O(1))
  
  Empty rules are trivially bounded

We return to the main proof.

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

Strict DPs:
  { f_1^#(x) -> c_1(g_1^#(x, x))
  , g_1^#(s(x), y) -> c_2(g_1^#(x, y))
  , f_2^#(x) -> c_3(g_2^#(x, x))
  , g_2^#(s(x), y) -> c_4(f_1^#(y), g_2^#(x, y))
  , f_3^#(x) -> c_5(g_3^#(x, x))
  , g_3^#(s(x), y) -> c_6(f_2^#(y), g_3^#(x, y)) }
Weak DPs:
  { f_4^#(x) -> g_4^#(x, x)
  , g_4^#(s(x), y) -> f_3^#(y)
  , g_4^#(s(x), y) -> g_4^#(x, y)
  , g_5^#(s(x), y) -> f_4^#(y)
  , g_5^#(s(x), y) -> g_5^#(x, y) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(n^3))

We decompose the input problem according to the dependency graph
into the upper component

  { f_3^#(x) -> c_5(g_3^#(x, x))
  , g_3^#(s(x), y) -> c_6(f_2^#(y), g_3^#(x, y))
  , f_4^#(x) -> g_4^#(x, x)
  , g_4^#(s(x), y) -> f_3^#(y)
  , g_4^#(s(x), y) -> g_4^#(x, y)
  , g_5^#(s(x), y) -> f_4^#(y)
  , g_5^#(s(x), y) -> g_5^#(x, y) }

and lower component

  { f_1^#(x) -> c_1(g_1^#(x, x))
  , g_1^#(s(x), y) -> c_2(g_1^#(x, y))
  , f_2^#(x) -> c_3(g_2^#(x, x))
  , g_2^#(s(x), y) -> c_4(f_1^#(y), g_2^#(x, y)) }

Further, following extension rules are added to the lower
component.

{ f_3^#(x) -> g_3^#(x, x)
, g_3^#(s(x), y) -> f_2^#(y)
, g_3^#(s(x), y) -> g_3^#(x, y)
, f_4^#(x) -> g_4^#(x, x)
, g_4^#(s(x), y) -> f_3^#(y)
, g_4^#(s(x), y) -> g_4^#(x, y)
, g_5^#(s(x), y) -> f_4^#(y)
, g_5^#(s(x), y) -> g_5^#(x, y) }

TcT solves the upper component with certificate YES(O(1),O(n^1)).

Sub-proof:
----------
  We are left with following problem, upon which TcT provides the
  certificate YES(O(1),O(n^1)).
  
  Strict DPs:
    { f_3^#(x) -> c_5(g_3^#(x, x))
    , g_3^#(s(x), y) -> c_6(f_2^#(y), g_3^#(x, y)) }
  Weak DPs:
    { f_4^#(x) -> g_4^#(x, x)
    , g_4^#(s(x), y) -> f_3^#(y)
    , g_4^#(s(x), y) -> g_4^#(x, y)
    , g_5^#(s(x), y) -> f_4^#(y)
    , g_5^#(s(x), y) -> g_5^#(x, y) }
  Obligation:
    runtime complexity
  Answer:
    YES(O(1),O(n^1))
  
  We use the processor 'matrix interpretation of dimension 1' to
  orient following rules strictly.
  
  DPs:
    { 2: g_3^#(s(x), y) -> c_6(f_2^#(y), g_3^#(x, y))
    , 3: f_4^#(x) -> g_4^#(x, x) }
  
  Sub-proof:
  ----------
    The following argument positions are usable:
      Uargs(c_5) = {1}, Uargs(c_6) = {2}
    
    TcT has computed the following constructor-based matrix
    interpretation satisfying not(EDA).
    
              [s](x1) = [1] x1 + [4]         
                                             
          [f_2^#](x1) = [1]                  
                                             
          [f_3^#](x1) = [4] x1 + [0]         
                                             
      [g_3^#](x1, x2) = [2] x1 + [0]         
                                             
          [f_4^#](x1) = [7] x1 + [1]         
                                             
      [g_4^#](x1, x2) = [5] x2 + [0]         
                                             
      [g_5^#](x1, x2) = [7] x2 + [1]         
                                             
            [c_5](x1) = [2] x1 + [0]         
                                             
        [c_6](x1, x2) = [3] x1 + [1] x2 + [4]
    
    The order satisfies the following ordering constraints:
    
            [f_3^#(x)] =  [4] x + [0]                 
                       >= [4] x + [0]                 
                       =  [c_5(g_3^#(x, x))]          
                                                      
      [g_3^#(s(x), y)] =  [2] x + [8]                 
                       >  [2] x + [7]                 
                       =  [c_6(f_2^#(y), g_3^#(x, y))]
                                                      
            [f_4^#(x)] =  [7] x + [1]                 
                       >  [5] x + [0]                 
                       =  [g_4^#(x, x)]               
                                                      
      [g_4^#(s(x), y)] =  [5] y + [0]                 
                       >= [4] y + [0]                 
                       =  [f_3^#(y)]                  
                                                      
      [g_4^#(s(x), y)] =  [5] y + [0]                 
                       >= [5] y + [0]                 
                       =  [g_4^#(x, y)]               
                                                      
      [g_5^#(s(x), y)] =  [7] y + [1]                 
                       >= [7] y + [1]                 
                       =  [f_4^#(y)]                  
                                                      
      [g_5^#(s(x), y)] =  [7] y + [1]                 
                       >= [7] y + [1]                 
                       =  [g_5^#(x, y)]               
                                                      
  
  The strictly oriented rules are moved into the weak component.
  
  We are left with following problem, upon which TcT provides the
  certificate YES(O(1),O(n^1)).
  
  Strict DPs: { f_3^#(x) -> c_5(g_3^#(x, x)) }
  Weak DPs:
    { g_3^#(s(x), y) -> c_6(f_2^#(y), g_3^#(x, y))
    , f_4^#(x) -> g_4^#(x, x)
    , g_4^#(s(x), y) -> f_3^#(y)
    , g_4^#(s(x), y) -> g_4^#(x, y)
    , g_5^#(s(x), y) -> f_4^#(y)
    , g_5^#(s(x), y) -> g_5^#(x, y) }
  Obligation:
    runtime complexity
  Answer:
    YES(O(1),O(n^1))
  
  The following weak DPs constitute a sub-graph of the DG that is
  closed under successors. The DPs are removed.
  
  { g_3^#(s(x), y) -> c_6(f_2^#(y), g_3^#(x, y)) }
  
  We are left with following problem, upon which TcT provides the
  certificate YES(O(1),O(n^1)).
  
  Strict DPs: { f_3^#(x) -> c_5(g_3^#(x, x)) }
  Weak DPs:
    { f_4^#(x) -> g_4^#(x, x)
    , g_4^#(s(x), y) -> f_3^#(y)
    , g_4^#(s(x), y) -> g_4^#(x, y)
    , g_5^#(s(x), y) -> f_4^#(y)
    , g_5^#(s(x), y) -> g_5^#(x, y) }
  Obligation:
    runtime complexity
  Answer:
    YES(O(1),O(n^1))
  
  Due to missing edges in the dependency-graph, the right-hand sides
  of following rules could be simplified:
  
    { f_3^#(x) -> c_5(g_3^#(x, x)) }
  
  We are left with following problem, upon which TcT provides the
  certificate YES(O(1),O(n^1)).
  
  Strict DPs: { f_3^#(x) -> c_1() }
  Weak DPs:
    { f_4^#(x) -> c_2(g_4^#(x, x))
    , g_4^#(s(x), y) -> c_3(f_3^#(y))
    , g_4^#(s(x), y) -> c_4(g_4^#(x, y))
    , g_5^#(s(x), y) -> c_5(f_4^#(y))
    , g_5^#(s(x), y) -> c_6(g_5^#(x, y)) }
  Obligation:
    runtime complexity
  Answer:
    YES(O(1),O(n^1))
  
  We use the processor 'matrix interpretation of dimension 1' to
  orient following rules strictly.
  
  DPs:
    { 1: f_3^#(x) -> c_1()
    , 3: g_4^#(s(x), y) -> c_3(f_3^#(y))
    , 4: g_4^#(s(x), y) -> c_4(g_4^#(x, y)) }
  
  Sub-proof:
  ----------
    The following argument positions are usable:
      Uargs(c_2) = {1}, Uargs(c_3) = {1}, Uargs(c_4) = {1},
      Uargs(c_5) = {1}, Uargs(c_6) = {1}
    
    TcT has computed the following constructor-based matrix
    interpretation satisfying not(EDA).
    
              [s](x1) = [1] x1 + [4]         
                                             
          [f_2^#](x1) = [0]                  
                                             
          [f_3^#](x1) = [3]                  
                                             
      [g_3^#](x1, x2) = [0]                  
                                             
          [f_4^#](x1) = [4] x1 + [0]         
                                             
      [g_4^#](x1, x2) = [2] x1 + [2] x2 + [0]
                                             
      [g_5^#](x1, x2) = [5] x2 + [0]         
                                             
            [c_5](x1) = [0]                  
                                             
        [c_6](x1, x2) = [0]                  
                                             
                  [c] = [0]                  
                                             
                [c_1] = [0]                  
                                             
            [c_2](x1) = [1] x1 + [0]         
                                             
            [c_3](x1) = [1] x1 + [4]         
                                             
            [c_4](x1) = [1] x1 + [0]         
                                             
            [c_5](x1) = [1] x1 + [0]         
                                             
            [c_6](x1) = [1] x1 + [0]         
    
    The order satisfies the following ordering constraints:
    
            [f_3^#(x)] =  [3]                
                       >  [0]                
                       =  [c_1()]            
                                             
            [f_4^#(x)] =  [4] x + [0]        
                       >= [4] x + [0]        
                       =  [c_2(g_4^#(x, x))] 
                                             
      [g_4^#(s(x), y)] =  [2] x + [2] y + [8]
                       >  [7]                
                       =  [c_3(f_3^#(y))]    
                                             
      [g_4^#(s(x), y)] =  [2] x + [2] y + [8]
                       >  [2] x + [2] y + [0]
                       =  [c_4(g_4^#(x, y))] 
                                             
      [g_5^#(s(x), y)] =  [5] y + [0]        
                       >= [4] y + [0]        
                       =  [c_5(f_4^#(y))]    
                                             
      [g_5^#(s(x), y)] =  [5] y + [0]        
                       >= [5] y + [0]        
                       =  [c_6(g_5^#(x, y))] 
                                             
  
  The strictly oriented rules are moved into the weak component.
  
  We are left with following problem, upon which TcT provides the
  certificate YES(O(1),O(1)).
  
  Weak DPs:
    { f_3^#(x) -> c_1()
    , f_4^#(x) -> c_2(g_4^#(x, x))
    , g_4^#(s(x), y) -> c_3(f_3^#(y))
    , g_4^#(s(x), y) -> c_4(g_4^#(x, y))
    , g_5^#(s(x), y) -> c_5(f_4^#(y))
    , g_5^#(s(x), y) -> c_6(g_5^#(x, y)) }
  Obligation:
    runtime complexity
  Answer:
    YES(O(1),O(1))
  
  The following weak DPs constitute a sub-graph of the DG that is
  closed under successors. The DPs are removed.
  
  { f_3^#(x) -> c_1()
  , f_4^#(x) -> c_2(g_4^#(x, x))
  , g_4^#(s(x), y) -> c_3(f_3^#(y))
  , g_4^#(s(x), y) -> c_4(g_4^#(x, y))
  , g_5^#(s(x), y) -> c_5(f_4^#(y))
  , g_5^#(s(x), y) -> c_6(g_5^#(x, y)) }
  
  We are left with following problem, upon which TcT provides the
  certificate YES(O(1),O(1)).
  
  Rules: Empty
  Obligation:
    runtime complexity
  Answer:
    YES(O(1),O(1))
  
  Empty rules are trivially bounded

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_1^#(x) -> c_1(g_1^#(x, x))
  , g_1^#(s(x), y) -> c_2(g_1^#(x, y))
  , f_2^#(x) -> c_3(g_2^#(x, x))
  , g_2^#(s(x), y) -> c_4(f_1^#(y), g_2^#(x, y)) }
Weak DPs:
  { f_3^#(x) -> g_3^#(x, x)
  , g_3^#(s(x), y) -> f_2^#(y)
  , g_3^#(s(x), y) -> g_3^#(x, y)
  , f_4^#(x) -> g_4^#(x, x)
  , g_4^#(s(x), y) -> f_3^#(y)
  , g_4^#(s(x), y) -> g_4^#(x, y)
  , g_5^#(s(x), y) -> f_4^#(y)
  , g_5^#(s(x), y) -> g_5^#(x, y) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(n^2))

We use the processor 'custom shape polynomial interpretation' to
orient following rules strictly.

DPs:
  { 2: g_1^#(s(x), y) -> c_2(g_1^#(x, y))
  , 3: f_2^#(x) -> c_3(g_2^#(x, x)) }

Sub-proof:
----------
  The following argument positions are considered usable:
    Uargs(c_1) = {1}, Uargs(c_2) = {1}, Uargs(c_3) = {1},
    Uargs(c_4) = {1, 2}
  TcT has computed the following constructor-restricted polynomial
  interpretation.
          [s](x1) = 1 + x1           
                                     
      [f_1^#](x1) = x1               
                                     
  [g_1^#](x1, x2) = x1               
                                     
      [f_2^#](x1) = 3 + 2*x1 + x1^2  
                                     
  [g_2^#](x1, x2) = x1*x2 + 2*x2     
                                     
      [f_3^#](x1) = 3 + 3*x1 + x1^2  
                                     
  [g_3^#](x1, x2) = 3 + 3*x2 + x2^2  
                                     
      [f_4^#](x1) = 3 + 3*x1 + 3*x1^2
                                     
  [g_4^#](x1, x2) = 3 + 3*x2 + x2^2  
                                     
  [g_5^#](x1, x2) = 3 + 3*x2 + 3*x2^2
                                     
        [c_1](x1) = x1               
                                     
        [c_2](x1) = x1               
                                     
        [c_3](x1) = x1               
                                     
    [c_4](x1, x2) = x1 + x2          
                                     
  
  This order satisfies the following ordering constraints.
  
          [f_1^#(x)] =  x                           
                     >= x                           
                     =  [c_1(g_1^#(x, x))]          
                                                    
    [g_1^#(s(x), y)] =  1 + x                       
                     >  x                           
                     =  [c_2(g_1^#(x, y))]          
                                                    
          [f_2^#(x)] =  3 + 2*x + x^2               
                     >  x^2 + 2*x                   
                     =  [c_3(g_2^#(x, x))]          
                                                    
    [g_2^#(s(x), y)] =  3*y + x*y                   
                     >= 3*y + x*y                   
                     =  [c_4(f_1^#(y), g_2^#(x, y))]
                                                    
          [f_3^#(x)] =  3 + 3*x + x^2               
                     >= 3 + 3*x + x^2               
                     =  [g_3^#(x, x)]               
                                                    
    [g_3^#(s(x), y)] =  3 + 3*y + y^2               
                     >= 3 + 2*y + y^2               
                     =  [f_2^#(y)]                  
                                                    
    [g_3^#(s(x), y)] =  3 + 3*y + y^2               
                     >= 3 + 3*y + y^2               
                     =  [g_3^#(x, y)]               
                                                    
          [f_4^#(x)] =  3 + 3*x + 3*x^2             
                     >= 3 + 3*x + x^2               
                     =  [g_4^#(x, x)]               
                                                    
    [g_4^#(s(x), y)] =  3 + 3*y + y^2               
                     >= 3 + 3*y + y^2               
                     =  [f_3^#(y)]                  
                                                    
    [g_4^#(s(x), y)] =  3 + 3*y + y^2               
                     >= 3 + 3*y + y^2               
                     =  [g_4^#(x, y)]               
                                                    
    [g_5^#(s(x), y)] =  3 + 3*y + 3*y^2             
                     >= 3 + 3*y + 3*y^2             
                     =  [f_4^#(y)]                  
                                                    
    [g_5^#(s(x), y)] =  3 + 3*y + 3*y^2             
                     >= 3 + 3*y + 3*y^2             
                     =  [g_5^#(x, y)]               
                                                    

The strictly oriented rules are moved into the weak component.

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

Strict DPs:
  { f_1^#(x) -> c_1(g_1^#(x, x))
  , g_2^#(s(x), y) -> c_4(f_1^#(y), g_2^#(x, y)) }
Weak DPs:
  { g_1^#(s(x), y) -> c_2(g_1^#(x, y))
  , f_2^#(x) -> c_3(g_2^#(x, x))
  , f_3^#(x) -> g_3^#(x, x)
  , g_3^#(s(x), y) -> f_2^#(y)
  , g_3^#(s(x), y) -> g_3^#(x, y)
  , f_4^#(x) -> g_4^#(x, x)
  , g_4^#(s(x), y) -> f_3^#(y)
  , g_4^#(s(x), y) -> g_4^#(x, y)
  , g_5^#(s(x), y) -> f_4^#(y)
  , g_5^#(s(x), y) -> g_5^#(x, y) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(n^1))

The following weak DPs constitute a sub-graph of the DG that is
closed under successors. The DPs are removed.

{ g_1^#(s(x), y) -> c_2(g_1^#(x, y)) }

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

Strict DPs:
  { f_1^#(x) -> c_1(g_1^#(x, x))
  , g_2^#(s(x), y) -> c_4(f_1^#(y), g_2^#(x, y)) }
Weak DPs:
  { f_2^#(x) -> c_3(g_2^#(x, x))
  , f_3^#(x) -> g_3^#(x, x)
  , g_3^#(s(x), y) -> f_2^#(y)
  , g_3^#(s(x), y) -> g_3^#(x, y)
  , f_4^#(x) -> g_4^#(x, x)
  , g_4^#(s(x), y) -> f_3^#(y)
  , g_4^#(s(x), y) -> g_4^#(x, y)
  , g_5^#(s(x), y) -> f_4^#(y)
  , g_5^#(s(x), y) -> g_5^#(x, y) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(n^1))

Due to missing edges in the dependency-graph, the right-hand sides
of following rules could be simplified:

  { f_1^#(x) -> c_1(g_1^#(x, x)) }

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

Strict DPs:
  { f_1^#(x) -> c_1()
  , g_2^#(s(x), y) -> c_2(f_1^#(y), g_2^#(x, y)) }
Weak DPs:
  { f_2^#(x) -> c_3(g_2^#(x, x))
  , f_3^#(x) -> c_4(g_3^#(x, x))
  , g_3^#(s(x), y) -> c_5(f_2^#(y))
  , g_3^#(s(x), y) -> c_6(g_3^#(x, y))
  , f_4^#(x) -> c_7(g_4^#(x, x))
  , g_4^#(s(x), y) -> c_8(f_3^#(y))
  , g_4^#(s(x), y) -> c_9(g_4^#(x, y))
  , g_5^#(s(x), y) -> c_10(f_4^#(y))
  , g_5^#(s(x), y) -> c_11(g_5^#(x, y)) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(n^1))

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

DPs:
  { 2: g_2^#(s(x), y) -> c_2(f_1^#(y), g_2^#(x, y)) }

Sub-proof:
----------
  The following argument positions are usable:
    Uargs(c_2) = {1, 2}, Uargs(c_3) = {1}, Uargs(c_4) = {1},
    Uargs(c_5) = {1}, Uargs(c_6) = {1}, Uargs(c_7) = {1},
    Uargs(c_8) = {1}, Uargs(c_9) = {1}, Uargs(c_10) = {1},
    Uargs(c_11) = {1}
  
  TcT has computed the following constructor-based matrix
  interpretation satisfying not(EDA).
  
            [s](x1) = [1] x1 + [1]         
                                           
        [f_1^#](x1) = [0]                  
                                           
    [g_1^#](x1, x2) = [0]                  
                                           
        [f_2^#](x1) = [5] x1 + [0]         
                                           
    [g_2^#](x1, x2) = [1] x1 + [4] x2 + [0]
                                           
        [f_3^#](x1) = [5] x1 + [0]         
                                           
    [g_3^#](x1, x2) = [5] x2 + [0]         
                                           
        [f_4^#](x1) = [6] x1 + [0]         
                                           
    [g_4^#](x1, x2) = [5] x2 + [0]         
                                           
    [g_5^#](x1, x2) = [6] x2 + [0]         
                                           
          [c_1](x1) = [0]                  
                                           
          [c_2](x1) = [0]                  
                                           
          [c_3](x1) = [0]                  
                                           
      [c_4](x1, x2) = [0]                  
                                           
                [c] = [0]                  
                                           
              [c_1] = [0]                  
                                           
      [c_2](x1, x2) = [4] x1 + [1] x2 + [0]
                                           
          [c_3](x1) = [1] x1 + [0]         
                                           
          [c_4](x1) = [1] x1 + [0]         
                                           
          [c_5](x1) = [1] x1 + [0]         
                                           
          [c_6](x1) = [1] x1 + [0]         
                                           
          [c_7](x1) = [1] x1 + [0]         
                                           
          [c_8](x1) = [1] x1 + [0]         
                                           
          [c_9](x1) = [1] x1 + [0]         
                                           
         [c_10](x1) = [1] x1 + [0]         
                                           
         [c_11](x1) = [1] x1 + [0]         
  
  The order satisfies the following ordering constraints:
  
          [f_1^#(x)] =  [0]                         
                     >= [0]                         
                     =  [c_1()]                     
                                                    
          [f_2^#(x)] =  [5] x + [0]                 
                     >= [5] x + [0]                 
                     =  [c_3(g_2^#(x, x))]          
                                                    
    [g_2^#(s(x), y)] =  [1] x + [4] y + [1]         
                     >  [1] x + [4] y + [0]         
                     =  [c_2(f_1^#(y), g_2^#(x, y))]
                                                    
          [f_3^#(x)] =  [5] x + [0]                 
                     >= [5] x + [0]                 
                     =  [c_4(g_3^#(x, x))]          
                                                    
    [g_3^#(s(x), y)] =  [5] y + [0]                 
                     >= [5] y + [0]                 
                     =  [c_5(f_2^#(y))]             
                                                    
    [g_3^#(s(x), y)] =  [5] y + [0]                 
                     >= [5] y + [0]                 
                     =  [c_6(g_3^#(x, y))]          
                                                    
          [f_4^#(x)] =  [6] x + [0]                 
                     >= [5] x + [0]                 
                     =  [c_7(g_4^#(x, x))]          
                                                    
    [g_4^#(s(x), y)] =  [5] y + [0]                 
                     >= [5] y + [0]                 
                     =  [c_8(f_3^#(y))]             
                                                    
    [g_4^#(s(x), y)] =  [5] y + [0]                 
                     >= [5] y + [0]                 
                     =  [c_9(g_4^#(x, y))]          
                                                    
    [g_5^#(s(x), y)] =  [6] y + [0]                 
                     >= [6] y + [0]                 
                     =  [c_10(f_4^#(y))]            
                                                    
    [g_5^#(s(x), y)] =  [6] y + [0]                 
                     >= [6] y + [0]                 
                     =  [c_11(g_5^#(x, y))]         
                                                    

We return to the main proof. Consider the set of all dependency
pairs

:
  { 1: f_1^#(x) -> c_1()
  , 2: g_2^#(s(x), y) -> c_2(f_1^#(y), g_2^#(x, y))
  , 3: f_2^#(x) -> c_3(g_2^#(x, x))
  , 4: f_3^#(x) -> c_4(g_3^#(x, x))
  , 5: g_3^#(s(x), y) -> c_5(f_2^#(y))
  , 6: g_3^#(s(x), y) -> c_6(g_3^#(x, y))
  , 7: f_4^#(x) -> c_7(g_4^#(x, x))
  , 8: g_4^#(s(x), y) -> c_8(f_3^#(y))
  , 9: g_4^#(s(x), y) -> c_9(g_4^#(x, y))
  , 10: g_5^#(s(x), y) -> c_10(f_4^#(y))
  , 11: g_5^#(s(x), y) -> c_11(g_5^#(x, y)) }

Processor 'matrix interpretation of dimension 1' induces the
complexity certificate YES(?,O(n^1)) on application of dependency
pairs {2}. These cover all (indirect) predecessors of dependency
pairs {1,2}, their number of application is equally bounded. The
dependency pairs are shifted into the weak component.

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

Weak DPs:
  { f_1^#(x) -> c_1()
  , f_2^#(x) -> c_3(g_2^#(x, x))
  , g_2^#(s(x), y) -> c_2(f_1^#(y), g_2^#(x, y))
  , f_3^#(x) -> c_4(g_3^#(x, x))
  , g_3^#(s(x), y) -> c_5(f_2^#(y))
  , g_3^#(s(x), y) -> c_6(g_3^#(x, y))
  , f_4^#(x) -> c_7(g_4^#(x, x))
  , g_4^#(s(x), y) -> c_8(f_3^#(y))
  , g_4^#(s(x), y) -> c_9(g_4^#(x, y))
  , g_5^#(s(x), y) -> c_10(f_4^#(y))
  , g_5^#(s(x), y) -> c_11(g_5^#(x, y)) }
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(1))

The following weak DPs constitute a sub-graph of the DG that is
closed under successors. The DPs are removed.

{ f_1^#(x) -> c_1()
, f_2^#(x) -> c_3(g_2^#(x, x))
, g_2^#(s(x), y) -> c_2(f_1^#(y), g_2^#(x, y))
, f_3^#(x) -> c_4(g_3^#(x, x))
, g_3^#(s(x), y) -> c_5(f_2^#(y))
, g_3^#(s(x), y) -> c_6(g_3^#(x, y))
, f_4^#(x) -> c_7(g_4^#(x, x))
, g_4^#(s(x), y) -> c_8(f_3^#(y))
, g_4^#(s(x), y) -> c_9(g_4^#(x, y))
, g_5^#(s(x), y) -> c_10(f_4^#(y))
, g_5^#(s(x), y) -> c_11(g_5^#(x, y)) }

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

Rules: Empty
Obligation:
  runtime complexity
Answer:
  YES(O(1),O(1))

Empty rules are trivially bounded

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