We consider the following Problem:

  Strict Trs:
    {  f(empty(), l) -> l
     , f(cons(x, k), l) -> g(k, l, cons(x, k))
     , g(a, b, c) -> f(a, cons(b, c))}
  StartTerms: basic terms
  Strategy: innermost

Certificate: YES(?,O(n^1))

Proof:
  We consider the following Problem:
  
    Strict Trs:
      {  f(empty(), l) -> l
       , f(cons(x, k), l) -> g(k, l, cons(x, k))
       , g(a, b, c) -> f(a, cons(b, c))}
    StartTerms: basic terms
    Strategy: innermost
  
  Certificate: YES(?,O(n^1))
  
  Proof:
    The weightgap principle applies, where following rules are oriented strictly:
    
    TRS Component: {f(empty(), l) -> l}
    
    Interpretation of nonconstant growth:
    -------------------------------------
      The following argument positions are usable:
        Uargs(f) = {}, Uargs(cons) = {}, Uargs(g) = {}
      We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
      Interpretation Functions:
       f(x1, x2) = [0 0] x1 + [1 0] x2 + [1]
                   [0 0]      [1 1]      [1]
       empty() = [0]
                 [0]
       cons(x1, x2) = [0 0] x1 + [0 0] x2 + [0]
                      [0 0]      [0 0]      [0]
       g(x1, x2, x3) = [0 0] x1 + [0 0] x2 + [0 0] x3 + [1]
                       [1 1]      [0 0]      [0 0]      [1]
    
    The strictly oriented rules are moved into the weak component.
    
    We consider the following Problem:
    
      Strict Trs:
        {  f(cons(x, k), l) -> g(k, l, cons(x, k))
         , g(a, b, c) -> f(a, cons(b, c))}
      Weak Trs: {f(empty(), l) -> l}
      StartTerms: basic terms
      Strategy: innermost
    
    Certificate: YES(?,O(n^1))
    
    Proof:
      The weightgap principle applies, where following rules are oriented strictly:
      
      TRS Component: {g(a, b, c) -> f(a, cons(b, c))}
      
      Interpretation of nonconstant growth:
      -------------------------------------
        The following argument positions are usable:
          Uargs(f) = {}, Uargs(cons) = {}, Uargs(g) = {}
        We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
        Interpretation Functions:
         f(x1, x2) = [0 0] x1 + [1 0] x2 + [0]
                     [0 0]      [0 1]      [1]
         empty() = [0]
                   [0]
         cons(x1, x2) = [0 0] x1 + [0 0] x2 + [0]
                        [0 0]      [0 0]      [0]
         g(x1, x2, x3) = [0 0] x1 + [1 0] x2 + [0 0] x3 + [3]
                         [1 0]      [0 1]      [0 0]      [1]
      
      The strictly oriented rules are moved into the weak component.
      
      We consider the following Problem:
      
        Strict Trs: {f(cons(x, k), l) -> g(k, l, cons(x, k))}
        Weak Trs:
          {  g(a, b, c) -> f(a, cons(b, c))
           , f(empty(), l) -> l}
        StartTerms: basic terms
        Strategy: innermost
      
      Certificate: YES(?,O(n^1))
      
      Proof:
        We consider the following Problem:
        
          Strict Trs: {f(cons(x, k), l) -> g(k, l, cons(x, k))}
          Weak Trs:
            {  g(a, b, c) -> f(a, cons(b, c))
             , f(empty(), l) -> l}
          StartTerms: basic terms
          Strategy: innermost
        
        Certificate: YES(?,O(n^1))
        
        Proof:
          We have computed the following dependency pairs
          
            Strict DPs: {f^#(cons(x, k), l) -> g^#(k, l, cons(x, k))}
            Weak DPs:
              {  g^#(a, b, c) -> f^#(a, cons(b, c))
               , f^#(empty(), l) -> c_3()}
          
          We consider the following Problem:
          
            Strict DPs: {f^#(cons(x, k), l) -> g^#(k, l, cons(x, k))}
            Strict Trs: {f(cons(x, k), l) -> g(k, l, cons(x, k))}
            Weak DPs:
              {  g^#(a, b, c) -> f^#(a, cons(b, c))
               , f^#(empty(), l) -> c_3()}
            Weak Trs:
              {  g(a, b, c) -> f(a, cons(b, c))
               , f(empty(), l) -> l}
            StartTerms: basic terms
            Strategy: innermost
          
          Certificate: YES(?,O(n^1))
          
          Proof:
            No rule is usable.
            
            We consider the following Problem:
            
              Strict DPs: {f^#(cons(x, k), l) -> g^#(k, l, cons(x, k))}
              Weak DPs:
                {  g^#(a, b, c) -> f^#(a, cons(b, c))
                 , f^#(empty(), l) -> c_3()}
              StartTerms: basic terms
              Strategy: innermost
            
            Certificate: YES(?,O(n^1))
            
            Proof:
              We consider the following Problem:
              
                Strict DPs: {f^#(cons(x, k), l) -> g^#(k, l, cons(x, k))}
                Weak DPs:
                  {  g^#(a, b, c) -> f^#(a, cons(b, c))
                   , f^#(empty(), l) -> c_3()}
                StartTerms: basic terms
                Strategy: innermost
              
              Certificate: YES(?,O(n^1))
              
              Proof:
                We use following congruence DG for path analysis
                
                ->1:{1,2}                                                   [   YES(O(1),O(1))   ]
                   |
                   `->2:{3}                                                 [   YES(O(1),O(1))   ]
                
                
                Here dependency-pairs are as follows:
                
                Strict DPs:
                  {1: f^#(cons(x, k), l) -> g^#(k, l, cons(x, k))}
                WeakDPs DPs:
                  {  2: g^#(a, b, c) -> f^#(a, cons(b, c))
                   , 3: f^#(empty(), l) -> c_3()}
                
                * Path 1:{1,2}: YES(O(1),O(1))
                  ----------------------------
                  
                  We consider the following Problem:
                  
                    Strict DPs: {f^#(cons(x, k), l) -> g^#(k, l, cons(x, k))}
                    StartTerms: basic terms
                    Strategy: innermost
                  
                  Certificate: YES(O(1),O(1))
                  
                  Proof:
                    We consider the the dependency-graph
                    
                      1: f^#(cons(x, k), l) -> g^#(k, l, cons(x, k))
                      
                    
                    together with the congruence-graph
                    
                      ->1:{1}                                                     Noncyclic, trivial, SCC
                      
                      
                      Here dependency-pairs are as follows:
                      
                      Strict DPs:
                        {1: f^#(cons(x, k), l) -> g^#(k, l, cons(x, k))}
                    
                    The following rules are either leafs or part of trailing weak paths, and thus they can be removed:
                    
                      {1: f^#(cons(x, k), l) -> g^#(k, l, cons(x, k))}
                    
                    We consider the following Problem:
                    
                      StartTerms: basic terms
                      Strategy: innermost
                    
                    Certificate: YES(O(1),O(1))
                    
                    Proof:
                      We consider the following Problem:
                      
                        StartTerms: basic terms
                        Strategy: innermost
                      
                      Certificate: YES(O(1),O(1))
                      
                      Proof:
                        Empty rules are trivially bounded
                
                * Path 1:{1,2}->2:{3}: YES(O(1),O(1))
                  -----------------------------------
                  
                  We consider the following Problem:
                  
                    Weak DPs:
                      {  g^#(a, b, c) -> f^#(a, cons(b, c))
                       , f^#(cons(x, k), l) -> g^#(k, l, cons(x, k))}
                    StartTerms: basic terms
                    Strategy: innermost
                  
                  Certificate: YES(O(1),O(1))
                  
                  Proof:
                    We consider the the dependency-graph
                    
                      1: g^#(a, b, c) -> f^#(a, cons(b, c))
                         -->_1 f^#(cons(x, k), l) -> g^#(k, l, cons(x, k)) :2
                      
                      2: f^#(cons(x, k), l) -> g^#(k, l, cons(x, k))
                         -->_1 g^#(a, b, c) -> f^#(a, cons(b, c)) :1
                      
                    
                    together with the congruence-graph
                    
                      ->1:{1,2}                                                   Weak SCC
                      
                      
                      Here dependency-pairs are as follows:
                      
                      WeakDPs DPs:
                        {  1: g^#(a, b, c) -> f^#(a, cons(b, c))
                         , 2: f^#(cons(x, k), l) -> g^#(k, l, cons(x, k))}
                    
                    The following rules are either leafs or part of trailing weak paths, and thus they can be removed:
                    
                      {  1: g^#(a, b, c) -> f^#(a, cons(b, c))
                       , 2: f^#(cons(x, k), l) -> g^#(k, l, cons(x, k))}
                    
                    We consider the following Problem:
                    
                      StartTerms: basic terms
                      Strategy: innermost
                    
                    Certificate: YES(O(1),O(1))
                    
                    Proof:
                      We consider the following Problem:
                      
                        StartTerms: basic terms
                        Strategy: innermost
                      
                      Certificate: YES(O(1),O(1))
                      
                      Proof:
                        Empty rules are trivially bounded

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