We consider the following Problem:

  Strict Trs:
    {  active(c()) -> mark(f(g(c())))
     , active(f(g(X))) -> mark(g(X))
     , proper(c()) -> ok(c())
     , proper(f(X)) -> f(proper(X))
     , proper(g(X)) -> g(proper(X))
     , f(ok(X)) -> ok(f(X))
     , g(ok(X)) -> ok(g(X))
     , top(mark(X)) -> top(proper(X))
     , top(ok(X)) -> top(active(X))}
  StartTerms: basic terms
  Strategy: innermost

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

Proof:
  We consider the following Problem:
  
    Strict Trs:
      {  active(c()) -> mark(f(g(c())))
       , active(f(g(X))) -> mark(g(X))
       , proper(c()) -> ok(c())
       , proper(f(X)) -> f(proper(X))
       , proper(g(X)) -> g(proper(X))
       , f(ok(X)) -> ok(f(X))
       , g(ok(X)) -> ok(g(X))
       , top(mark(X)) -> top(proper(X))
       , top(ok(X)) -> top(active(X))}
    StartTerms: basic terms
    Strategy: innermost
  
  Certificate: YES(?,O(n^1))
  
  Proof:
    The weightgap principle applies, where following rules are oriented strictly:
    
    TRS Component: {proper(c()) -> ok(c())}
    
    Interpretation of nonconstant growth:
    -------------------------------------
      The following argument positions are usable:
        Uargs(active) = {}, Uargs(mark) = {}, Uargs(f) = {1},
        Uargs(g) = {1}, Uargs(proper) = {}, Uargs(ok) = {1},
        Uargs(top) = {1}
      We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
      Interpretation Functions:
       active(x1) = [0 0] x1 + [1]
                    [0 0]      [1]
       c() = [0]
             [0]
       mark(x1) = [0 0] x1 + [1]
                  [1 0]      [1]
       f(x1) = [1 0] x1 + [0]
               [0 1]      [0]
       g(x1) = [1 0] x1 + [0]
               [0 1]      [0]
       proper(x1) = [0 0] x1 + [1]
                    [1 0]      [1]
       ok(x1) = [1 0] x1 + [0]
                [0 0]      [1]
       top(x1) = [1 0] x1 + [0]
                 [0 0]      [1]
    
    The strictly oriented rules are moved into the weak component.
    
    We consider the following Problem:
    
      Strict Trs:
        {  active(c()) -> mark(f(g(c())))
         , active(f(g(X))) -> mark(g(X))
         , proper(f(X)) -> f(proper(X))
         , proper(g(X)) -> g(proper(X))
         , f(ok(X)) -> ok(f(X))
         , g(ok(X)) -> ok(g(X))
         , top(mark(X)) -> top(proper(X))
         , top(ok(X)) -> top(active(X))}
      Weak Trs: {proper(c()) -> ok(c())}
      StartTerms: basic terms
      Strategy: innermost
    
    Certificate: YES(?,O(n^1))
    
    Proof:
      The weightgap principle applies, where following rules are oriented strictly:
      
      TRS Component: {top(mark(X)) -> top(proper(X))}
      
      Interpretation of nonconstant growth:
      -------------------------------------
        The following argument positions are usable:
          Uargs(active) = {}, Uargs(mark) = {}, Uargs(f) = {1},
          Uargs(g) = {1}, Uargs(proper) = {}, Uargs(ok) = {1},
          Uargs(top) = {1}
        We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
        Interpretation Functions:
         active(x1) = [0 0] x1 + [1]
                      [0 0]      [1]
         c() = [0]
               [0]
         mark(x1) = [0 0] x1 + [1]
                    [1 0]      [1]
         f(x1) = [1 0] x1 + [0]
                 [0 0]      [1]
         g(x1) = [1 0] x1 + [0]
                 [0 1]      [0]
         proper(x1) = [0 0] x1 + [0]
                      [0 0]      [1]
         ok(x1) = [1 0] x1 + [0]
                  [1 1]      [1]
         top(x1) = [1 0] x1 + [0]
                   [0 0]      [1]
      
      The strictly oriented rules are moved into the weak component.
      
      We consider the following Problem:
      
        Strict Trs:
          {  active(c()) -> mark(f(g(c())))
           , active(f(g(X))) -> mark(g(X))
           , proper(f(X)) -> f(proper(X))
           , proper(g(X)) -> g(proper(X))
           , f(ok(X)) -> ok(f(X))
           , g(ok(X)) -> ok(g(X))
           , top(ok(X)) -> top(active(X))}
        Weak Trs:
          {  top(mark(X)) -> top(proper(X))
           , proper(c()) -> ok(c())}
        StartTerms: basic terms
        Strategy: innermost
      
      Certificate: YES(?,O(n^1))
      
      Proof:
        The weightgap principle applies, where following rules are oriented strictly:
        
        TRS Component: {top(ok(X)) -> top(active(X))}
        
        Interpretation of nonconstant growth:
        -------------------------------------
          The following argument positions are usable:
            Uargs(active) = {}, Uargs(mark) = {}, Uargs(f) = {1},
            Uargs(g) = {1}, Uargs(proper) = {}, Uargs(ok) = {1},
            Uargs(top) = {1}
          We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
          Interpretation Functions:
           active(x1) = [0 0] x1 + [1]
                        [0 0]      [1]
           c() = [0]
                 [3]
           mark(x1) = [0 1] x1 + [1]
                      [1 0]      [1]
           f(x1) = [1 0] x1 + [0]
                   [0 0]      [0]
           g(x1) = [1 0] x1 + [0]
                   [0 0]      [1]
           proper(x1) = [0 0] x1 + [0]
                        [0 1]      [0]
           ok(x1) = [1 0] x1 + [0]
                    [0 0]      [3]
           top(x1) = [1 1] x1 + [0]
                     [0 0]      [1]
        
        The strictly oriented rules are moved into the weak component.
        
        We consider the following Problem:
        
          Strict Trs:
            {  active(c()) -> mark(f(g(c())))
             , active(f(g(X))) -> mark(g(X))
             , proper(f(X)) -> f(proper(X))
             , proper(g(X)) -> g(proper(X))
             , f(ok(X)) -> ok(f(X))
             , g(ok(X)) -> ok(g(X))}
          Weak Trs:
            {  top(ok(X)) -> top(active(X))
             , top(mark(X)) -> top(proper(X))
             , proper(c()) -> ok(c())}
          StartTerms: basic terms
          Strategy: innermost
        
        Certificate: YES(?,O(n^1))
        
        Proof:
          The weightgap principle applies, where following rules are oriented strictly:
          
          TRS Component: {active(f(g(X))) -> mark(g(X))}
          
          Interpretation of nonconstant growth:
          -------------------------------------
            The following argument positions are usable:
              Uargs(active) = {}, Uargs(mark) = {}, Uargs(f) = {1},
              Uargs(g) = {1}, Uargs(proper) = {}, Uargs(ok) = {1},
              Uargs(top) = {1}
            We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
            Interpretation Functions:
             active(x1) = [0 1] x1 + [1]
                          [0 0]      [1]
             c() = [0]
                   [0]
             mark(x1) = [0 0] x1 + [1]
                        [0 0]      [1]
             f(x1) = [1 0] x1 + [0]
                     [0 0]      [2]
             g(x1) = [1 0] x1 + [0]
                     [0 0]      [0]
             proper(x1) = [0 0] x1 + [1]
                          [0 0]      [1]
             ok(x1) = [1 0] x1 + [1]
                      [0 1]      [1]
             top(x1) = [1 1] x1 + [0]
                       [0 0]      [1]
          
          The strictly oriented rules are moved into the weak component.
          
          We consider the following Problem:
          
            Strict Trs:
              {  active(c()) -> mark(f(g(c())))
               , proper(f(X)) -> f(proper(X))
               , proper(g(X)) -> g(proper(X))
               , f(ok(X)) -> ok(f(X))
               , g(ok(X)) -> ok(g(X))}
            Weak Trs:
              {  active(f(g(X))) -> mark(g(X))
               , top(ok(X)) -> top(active(X))
               , top(mark(X)) -> top(proper(X))
               , proper(c()) -> ok(c())}
            StartTerms: basic terms
            Strategy: innermost
          
          Certificate: YES(?,O(n^1))
          
          Proof:
            The weightgap principle applies, where following rules are oriented strictly:
            
            TRS Component: {active(c()) -> mark(f(g(c())))}
            
            Interpretation of nonconstant growth:
            -------------------------------------
              The following argument positions are usable:
                Uargs(active) = {}, Uargs(mark) = {}, Uargs(f) = {1},
                Uargs(g) = {1}, Uargs(proper) = {}, Uargs(ok) = {1},
                Uargs(top) = {1}
              We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
              Interpretation Functions:
               active(x1) = [0 3] x1 + [0]
                            [0 0]      [0]
               c() = [0]
                     [3]
               mark(x1) = [0 3] x1 + [0]
                          [0 0]      [0]
               f(x1) = [1 0] x1 + [0]
                       [0 0]      [0]
               g(x1) = [1 0] x1 + [0]
                       [0 0]      [0]
               proper(x1) = [0 0] x1 + [0]
                            [0 1]      [0]
               ok(x1) = [1 0] x1 + [0]
                        [0 1]      [0]
               top(x1) = [1 3] x1 + [0]
                         [0 0]      [1]
            
            The strictly oriented rules are moved into the weak component.
            
            We consider the following Problem:
            
              Strict Trs:
                {  proper(f(X)) -> f(proper(X))
                 , proper(g(X)) -> g(proper(X))
                 , f(ok(X)) -> ok(f(X))
                 , g(ok(X)) -> ok(g(X))}
              Weak Trs:
                {  active(c()) -> mark(f(g(c())))
                 , active(f(g(X))) -> mark(g(X))
                 , top(ok(X)) -> top(active(X))
                 , top(mark(X)) -> top(proper(X))
                 , proper(c()) -> ok(c())}
              StartTerms: basic terms
              Strategy: innermost
            
            Certificate: YES(?,O(n^1))
            
            Proof:
              We fail transforming the problem using 'weightgap of dimension Nat 2, maximal degree 1, cbits 4'
              
                The weightgap principle does not apply
              
              We try instead 'weightgap of dimension Nat 3, maximal degree 2, cbits 3' on the problem
              
              Strict Trs:
                {  proper(f(X)) -> f(proper(X))
                 , proper(g(X)) -> g(proper(X))
                 , f(ok(X)) -> ok(f(X))
                 , g(ok(X)) -> ok(g(X))}
              Weak Trs:
                {  active(c()) -> mark(f(g(c())))
                 , active(f(g(X))) -> mark(g(X))
                 , top(ok(X)) -> top(active(X))
                 , top(mark(X)) -> top(proper(X))
                 , proper(c()) -> ok(c())}
              StartTerms: basic terms
              Strategy: innermost
              
                The weightgap principle applies, where following rules are oriented strictly:
                
                TRS Component: {proper(g(X)) -> g(proper(X))}
                
                Interpretation of nonconstant growth:
                -------------------------------------
                  The following argument positions are usable:
                    Uargs(active) = {}, Uargs(mark) = {}, Uargs(f) = {1},
                    Uargs(g) = {1}, Uargs(proper) = {}, Uargs(ok) = {1},
                    Uargs(top) = {1}
                  We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
                  Interpretation Functions:
                   active(x1) = [0 0 0] x1 + [0]
                                [0 0 0]      [0]
                                [0 1 0]      [2]
                   c() = [0]
                         [0]
                         [2]
                   mark(x1) = [0 0 0] x1 + [0]
                              [0 0 0]      [0]
                              [0 1 1]      [0]
                   f(x1) = [1 0 0] x1 + [0]
                           [0 1 0]      [0]
                           [0 0 0]      [0]
                   g(x1) = [1 0 0] x1 + [0]
                           [0 1 0]      [2]
                           [0 0 0]      [0]
                   proper(x1) = [0 2 0] x1 + [0]
                                [0 1 0]      [0]
                                [0 0 1]      [0]
                   ok(x1) = [1 0 0] x1 + [0]
                            [0 0 0]      [0]
                            [0 1 0]      [2]
                   top(x1) = [1 0 2] x1 + [0]
                             [0 0 0]      [1]
                             [0 0 0]      [1]
                
                The strictly oriented rules are moved into the weak component.
              
              We consider the following Problem:
              
                Strict Trs:
                  {  proper(f(X)) -> f(proper(X))
                   , f(ok(X)) -> ok(f(X))
                   , g(ok(X)) -> ok(g(X))}
                Weak Trs:
                  {  proper(g(X)) -> g(proper(X))
                   , active(c()) -> mark(f(g(c())))
                   , active(f(g(X))) -> mark(g(X))
                   , top(ok(X)) -> top(active(X))
                   , top(mark(X)) -> top(proper(X))
                   , proper(c()) -> ok(c())}
                StartTerms: basic terms
                Strategy: innermost
              
              Certificate: YES(?,O(n^1))
              
              Proof:
                We fail transforming the problem using 'weightgap of dimension Nat 2, maximal degree 1, cbits 4'
                
                  The weightgap principle does not apply
                
                We try instead 'weightgap of dimension Nat 3, maximal degree 2, cbits 3' on the problem
                
                Strict Trs:
                  {  proper(f(X)) -> f(proper(X))
                   , f(ok(X)) -> ok(f(X))
                   , g(ok(X)) -> ok(g(X))}
                Weak Trs:
                  {  proper(g(X)) -> g(proper(X))
                   , active(c()) -> mark(f(g(c())))
                   , active(f(g(X))) -> mark(g(X))
                   , top(ok(X)) -> top(active(X))
                   , top(mark(X)) -> top(proper(X))
                   , proper(c()) -> ok(c())}
                StartTerms: basic terms
                Strategy: innermost
                
                  The weightgap principle applies, where following rules are oriented strictly:
                  
                  TRS Component: {proper(f(X)) -> f(proper(X))}
                  
                  Interpretation of nonconstant growth:
                  -------------------------------------
                    The following argument positions are usable:
                      Uargs(active) = {}, Uargs(mark) = {}, Uargs(f) = {1},
                      Uargs(g) = {1}, Uargs(proper) = {}, Uargs(ok) = {1},
                      Uargs(top) = {1}
                    We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation:
                    Interpretation Functions:
                     active(x1) = [1 2 0] x1 + [1]
                                  [0 0 0]      [1]
                                  [0 0 0]      [0]
                     c() = [1]
                           [2]
                           [2]
                     mark(x1) = [0 2 0] x1 + [0]
                                [0 0 0]      [1]
                                [0 0 1]      [0]
                     f(x1) = [1 0 0] x1 + [0]
                             [0 1 0]      [1]
                             [0 0 0]      [0]
                     g(x1) = [1 0 0] x1 + [0]
                             [0 1 0]      [0]
                             [0 0 0]      [0]
                     proper(x1) = [0 2 0] x1 + [0]
                                  [0 1 0]      [0]
                                  [0 0 1]      [0]
                     ok(x1) = [1 0 0] x1 + [1]
                              [0 0 0]      [0]
                              [0 1 0]      [0]
                     top(x1) = [1 0 2] x1 + [0]
                               [0 0 0]      [1]
                               [0 0 0]      [1]
                  
                  The strictly oriented rules are moved into the weak component.
                
                We consider the following Problem:
                
                  Strict Trs:
                    {  f(ok(X)) -> ok(f(X))
                     , g(ok(X)) -> ok(g(X))}
                  Weak Trs:
                    {  proper(f(X)) -> f(proper(X))
                     , proper(g(X)) -> g(proper(X))
                     , active(c()) -> mark(f(g(c())))
                     , active(f(g(X))) -> mark(g(X))
                     , top(ok(X)) -> top(active(X))
                     , top(mark(X)) -> top(proper(X))
                     , proper(c()) -> ok(c())}
                  StartTerms: basic terms
                  Strategy: innermost
                
                Certificate: YES(?,O(n^1))
                
                Proof:
                  We consider the following Problem:
                  
                    Strict Trs:
                      {  f(ok(X)) -> ok(f(X))
                       , g(ok(X)) -> ok(g(X))}
                    Weak Trs:
                      {  proper(f(X)) -> f(proper(X))
                       , proper(g(X)) -> g(proper(X))
                       , active(c()) -> mark(f(g(c())))
                       , active(f(g(X))) -> mark(g(X))
                       , top(ok(X)) -> top(active(X))
                       , top(mark(X)) -> top(proper(X))
                       , proper(c()) -> ok(c())}
                    StartTerms: basic terms
                    Strategy: innermost
                  
                  Certificate: YES(?,O(n^1))
                  
                  Proof:
                    The problem is match-bounded by 3.
                    The enriched problem is compatible with the following automaton:
                    {  active_0(2) -> 1
                     , active_0(3) -> 1
                     , active_0(7) -> 1
                     , active_1(17) -> 16
                     , active_2(21) -> 23
                     , active_2(22) -> 23
                     , active_3(27) -> 28
                     , c_0() -> 2
                     , c_1() -> 15
                     , c_2() -> 26
                     , mark_0(2) -> 3
                     , mark_0(3) -> 3
                     , mark_0(7) -> 3
                     , mark_0(9) -> 1
                     , mark_1(11) -> 16
                     , mark_1(13) -> 1
                     , mark_2(21) -> 23
                     , f_0(2) -> 4
                     , f_0(3) -> 4
                     , f_0(5) -> 9
                     , f_0(7) -> 4
                     , f_0(12) -> 1
                     , f_1(2) -> 10
                     , f_1(3) -> 10
                     , f_1(7) -> 10
                     , f_1(11) -> 17
                     , f_1(14) -> 13
                     , f_1(18) -> 16
                     , f_2(11) -> 20
                     , f_2(21) -> 22
                     , g_0(2) -> 5
                     , g_0(3) -> 5
                     , g_0(6) -> 12
                     , g_0(7) -> 5
                     , g_1(2) -> 11
                     , g_1(3) -> 11
                     , g_1(7) -> 11
                     , g_1(15) -> 14
                     , g_1(19) -> 18
                     , g_1(24) -> 16
                     , g_2(15) -> 21
                     , g_2(25) -> 23
                     , g_3(26) -> 27
                     , proper_0(2) -> 6
                     , proper_0(3) -> 6
                     , proper_0(5) -> 12
                     , proper_0(7) -> 6
                     , proper_0(9) -> 1
                     , proper_1(2) -> 24
                     , proper_1(3) -> 24
                     , proper_1(7) -> 24
                     , proper_1(11) -> 16
                     , proper_1(13) -> 16
                     , proper_1(14) -> 18
                     , proper_1(15) -> 19
                     , proper_2(15) -> 25
                     , proper_2(21) -> 23
                     , ok_0(2) -> 6
                     , ok_0(2) -> 7
                     , ok_0(3) -> 7
                     , ok_0(7) -> 7
                     , ok_1(10) -> 4
                     , ok_1(10) -> 10
                     , ok_1(11) -> 5
                     , ok_1(11) -> 11
                     , ok_1(11) -> 12
                     , ok_1(15) -> 19
                     , ok_1(15) -> 24
                     , ok_1(17) -> 1
                     , ok_1(17) -> 9
                     , ok_2(20) -> 17
                     , ok_2(20) -> 20
                     , ok_2(21) -> 16
                     , ok_2(21) -> 18
                     , ok_2(22) -> 16
                     , ok_2(26) -> 25
                     , ok_3(27) -> 23
                     , top_0(1) -> 8
                     , top_0(2) -> 8
                     , top_0(3) -> 8
                     , top_0(6) -> 8
                     , top_0(7) -> 8
                     , top_1(16) -> 8
                     , top_2(23) -> 8
                     , top_3(28) -> 8}

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