YES

Problem:
 a__nats() -> cons(0(),incr(nats()))
 a__pairs() -> cons(0(),incr(odds()))
 a__odds() -> a__incr(a__pairs())
 a__incr(cons(X,XS)) -> cons(s(mark(X)),incr(XS))
 a__head(cons(X,XS)) -> mark(X)
 a__tail(cons(X,XS)) -> mark(XS)
 mark(nats()) -> a__nats()
 mark(pairs()) -> a__pairs()
 mark(odds()) -> a__odds()
 mark(incr(X)) -> a__incr(mark(X))
 mark(head(X)) -> a__head(mark(X))
 mark(tail(X)) -> a__tail(mark(X))
 mark(0()) -> 0()
 mark(s(X)) -> s(mark(X))
 mark(nil()) -> nil()
 mark(cons(X1,X2)) -> cons(mark(X1),X2)
 a__nats() -> nats()
 a__pairs() -> pairs()
 a__odds() -> odds()
 a__incr(X) -> incr(X)
 a__head(X) -> head(X)
 a__tail(X) -> tail(X)

Proof:
 Matrix Interpretation Processor: dim=3
  
  interpretation:
           [0]
   [nil] = [0]
           [0],
   
                [1 0 0]     [1]
   [tail](x0) = [0 0 0]x0 + [0]
                [0 0 1]     [0],
   
                [1 0 0]  
   [head](x0) = [0 0 0]x0
                [0 0 1]  ,
   
             [0]
   [pairs] = [0]
             [0],
   
                   [1 0 0]     [1]
   [a__tail](x0) = [0 0 1]x0 + [0]
                   [0 0 1]     [0],
   
                   [1 0 0]  
   [a__head](x0) = [0 0 0]x0
                   [0 0 1]  ,
   
             [1 0 1]  
   [s](x0) = [0 0 0]x0
             [0 0 0]  ,
   
                [1 0 1]  
   [mark](x0) = [0 0 0]x0
                [0 0 0]  ,
   
                   [1 0 0]  
   [a__incr](x0) = [0 0 1]x0
                   [0 1 1]  ,
   
               [0]
   [a__odds] = [0]
               [0],
   
            [0]
   [odds] = [0]
            [0],
   
                [0]
   [a__pairs] = [0]
                [0],
   
                    [1 1 1]     [1 1 1]  
   [cons](x0, x1) = [0 0 0]x0 + [0 0 0]x1
                    [0 0 0]     [0 0 0]  ,
   
                [1 0 0]  
   [incr](x0) = [0 0 0]x0
                [0 1 1]  ,
   
            [1]
   [nats] = [0]
            [0],
   
         [0]
   [0] = [0]
         [0],
   
               [1]
   [a__nats] = [0]
               [0]
  orientation:
               [1]    [1]                         
   a__nats() = [0] >= [0] = cons(0(),incr(nats()))
               [0]    [0]                         
   
                [0]    [0]                         
   a__pairs() = [0] >= [0] = cons(0(),incr(odds()))
                [0]    [0]                         
   
               [0]    [0]                      
   a__odds() = [0] >= [0] = a__incr(a__pairs())
               [0]    [0]                      
   
                         [1 1 1]    [1 1 1]      [1 0 1]    [1 1 1]                              
   a__incr(cons(X,XS)) = [0 0 0]X + [0 0 0]XS >= [0 0 0]X + [0 0 0]XS = cons(s(mark(X)),incr(XS))
                         [0 0 0]    [0 0 0]      [0 0 0]    [0 0 0]                              
   
                         [1 1 1]    [1 1 1]      [1 0 1]           
   a__head(cons(X,XS)) = [0 0 0]X + [0 0 0]XS >= [0 0 0]X = mark(X)
                         [0 0 0]    [0 0 0]      [0 0 0]           
   
                         [1 1 1]    [1 1 1]     [1]    [1 0 1]             
   a__tail(cons(X,XS)) = [0 0 0]X + [0 0 0]XS + [0] >= [0 0 0]XS = mark(XS)
                         [0 0 0]    [0 0 0]     [0]    [0 0 0]             
   
                  [1]    [1]            
   mark(nats()) = [0] >= [0] = a__nats()
                  [0]    [0]            
   
                   [0]    [0]             
   mark(pairs()) = [0] >= [0] = a__pairs()
                   [0]    [0]             
   
                  [0]    [0]            
   mark(odds()) = [0] >= [0] = a__odds()
                  [0]    [0]            
   
                   [1 1 1]     [1 0 1]                    
   mark(incr(X)) = [0 0 0]X >= [0 0 0]X = a__incr(mark(X))
                   [0 0 0]     [0 0 0]                    
   
                   [1 0 1]     [1 0 1]                    
   mark(head(X)) = [0 0 0]X >= [0 0 0]X = a__head(mark(X))
                   [0 0 0]     [0 0 0]                    
   
                   [1 0 1]    [1]    [1 0 1]    [1]                   
   mark(tail(X)) = [0 0 0]X + [0] >= [0 0 0]X + [0] = a__tail(mark(X))
                   [0 0 0]    [0]    [0 0 0]    [0]                   
   
               [0]    [0]      
   mark(0()) = [0] >= [0] = 0()
               [0]    [0]      
   
                [1 0 1]     [1 0 1]              
   mark(s(X)) = [0 0 0]X >= [0 0 0]X = s(mark(X))
                [0 0 0]     [0 0 0]              
   
                 [0]    [0]        
   mark(nil()) = [0] >= [0] = nil()
                 [0]    [0]        
   
                       [1 1 1]     [1 1 1]      [1 0 1]     [1 1 1]                      
   mark(cons(X1,X2)) = [0 0 0]X1 + [0 0 0]X2 >= [0 0 0]X1 + [0 0 0]X2 = cons(mark(X1),X2)
                       [0 0 0]     [0 0 0]      [0 0 0]     [0 0 0]                      
   
               [1]    [1]         
   a__nats() = [0] >= [0] = nats()
               [0]    [0]         
   
                [0]    [0]          
   a__pairs() = [0] >= [0] = pairs()
                [0]    [0]          
   
               [0]    [0]         
   a__odds() = [0] >= [0] = odds()
               [0]    [0]         
   
                [1 0 0]     [1 0 0]           
   a__incr(X) = [0 0 1]X >= [0 0 0]X = incr(X)
                [0 1 1]     [0 1 1]           
   
                [1 0 0]     [1 0 0]           
   a__head(X) = [0 0 0]X >= [0 0 0]X = head(X)
                [0 0 1]     [0 0 1]           
   
                [1 0 0]    [1]    [1 0 0]    [1]          
   a__tail(X) = [0 0 1]X + [0] >= [0 0 0]X + [0] = tail(X)
                [0 0 1]    [0]    [0 0 1]    [0]          
  problem:
   a__nats() -> cons(0(),incr(nats()))
   a__pairs() -> cons(0(),incr(odds()))
   a__odds() -> a__incr(a__pairs())
   a__incr(cons(X,XS)) -> cons(s(mark(X)),incr(XS))
   a__head(cons(X,XS)) -> mark(X)
   mark(nats()) -> a__nats()
   mark(pairs()) -> a__pairs()
   mark(odds()) -> a__odds()
   mark(incr(X)) -> a__incr(mark(X))
   mark(head(X)) -> a__head(mark(X))
   mark(tail(X)) -> a__tail(mark(X))
   mark(0()) -> 0()
   mark(s(X)) -> s(mark(X))
   mark(nil()) -> nil()
   mark(cons(X1,X2)) -> cons(mark(X1),X2)
   a__nats() -> nats()
   a__pairs() -> pairs()
   a__odds() -> odds()
   a__incr(X) -> incr(X)
   a__head(X) -> head(X)
   a__tail(X) -> tail(X)
  Matrix Interpretation Processor: dim=3
   
   interpretation:
            [0]
    [nil] = [0]
            [0],
    
                 [1 0 0]     [1]
    [tail](x0) = [0 1 0]x0 + [0]
                 [0 0 0]     [0],
    
                 [1 0 1]     [0]
    [head](x0) = [0 1 0]x0 + [1]
                 [0 1 0]     [0],
    
              [0]
    [pairs] = [1]
              [0],
    
                    [1 0 0]     [1]
    [a__tail](x0) = [0 1 0]x0 + [0]
                    [0 0 0]     [0],
    
                    [1 0 1]     [0]
    [a__head](x0) = [0 1 0]x0 + [1]
                    [0 1 0]     [0],
    
              [1 0 0]  
    [s](x0) = [0 1 0]x0
              [0 0 0]  ,
    
                 [1 1 0]  
    [mark](x0) = [0 1 0]x0
                 [0 0 1]  ,
    
                    [1 0 1]  
    [a__incr](x0) = [0 1 0]x0
                    [0 0 1]  ,
    
                [1]
    [a__odds] = [1]
                [0],
    
             [0]
    [odds] = [1]
             [0],
    
                 [1]
    [a__pairs] = [1]
                 [0],
    
                     [1 0 0]     [1 0 0]  
    [cons](x0, x1) = [0 1 1]x0 + [0 0 0]x1
                     [0 1 0]     [0 0 1]  ,
    
                 [1 0 1]  
    [incr](x0) = [0 1 0]x0
                 [0 0 1]  ,
    
             [0]
    [nats] = [1]
             [0],
    
          [0]
    [0] = [0]
          [1],
    
                [1]
    [a__nats] = [1]
                [0]
   orientation:
                [1]    [0]                         
    a__nats() = [1] >= [1] = cons(0(),incr(nats()))
                [0]    [0]                         
    
                 [1]    [0]                         
    a__pairs() = [1] >= [1] = cons(0(),incr(odds()))
                 [0]    [0]                         
    
                [1]    [1]                      
    a__odds() = [1] >= [1] = a__incr(a__pairs())
                [0]    [0]                      
    
                          [1 1 0]    [1 0 1]      [1 1 0]    [1 0 1]                              
    a__incr(cons(X,XS)) = [0 1 1]X + [0 0 0]XS >= [0 1 0]X + [0 0 0]XS = cons(s(mark(X)),incr(XS))
                          [0 1 0]    [0 0 1]      [0 1 0]    [0 0 1]                              
    
                          [1 1 0]    [1 0 1]     [0]    [1 1 0]           
    a__head(cons(X,XS)) = [0 1 1]X + [0 0 0]XS + [1] >= [0 1 0]X = mark(X)
                          [0 1 1]    [0 0 0]     [0]    [0 0 1]           
    
                   [1]    [1]            
    mark(nats()) = [1] >= [1] = a__nats()
                   [0]    [0]            
    
                    [1]    [1]             
    mark(pairs()) = [1] >= [1] = a__pairs()
                    [0]    [0]             
    
                   [1]    [1]            
    mark(odds()) = [1] >= [1] = a__odds()
                   [0]    [0]            
    
                    [1 1 1]     [1 1 1]                    
    mark(incr(X)) = [0 1 0]X >= [0 1 0]X = a__incr(mark(X))
                    [0 0 1]     [0 0 1]                    
    
                    [1 1 1]    [1]    [1 1 1]    [0]                   
    mark(head(X)) = [0 1 0]X + [1] >= [0 1 0]X + [1] = a__head(mark(X))
                    [0 1 0]    [0]    [0 1 0]    [0]                   
    
                    [1 1 0]    [1]    [1 1 0]    [1]                   
    mark(tail(X)) = [0 1 0]X + [0] >= [0 1 0]X + [0] = a__tail(mark(X))
                    [0 0 0]    [0]    [0 0 0]    [0]                   
    
                [0]    [0]      
    mark(0()) = [0] >= [0] = 0()
                [1]    [1]      
    
                 [1 1 0]     [1 1 0]              
    mark(s(X)) = [0 1 0]X >= [0 1 0]X = s(mark(X))
                 [0 0 0]     [0 0 0]              
    
                  [0]    [0]        
    mark(nil()) = [0] >= [0] = nil()
                  [0]    [0]        
    
                        [1 1 1]     [1 0 0]      [1 1 0]     [1 0 0]                      
    mark(cons(X1,X2)) = [0 1 1]X1 + [0 0 0]X2 >= [0 1 1]X1 + [0 0 0]X2 = cons(mark(X1),X2)
                        [0 1 0]     [0 0 1]      [0 1 0]     [0 0 1]                      
    
                [1]    [0]         
    a__nats() = [1] >= [1] = nats()
                [0]    [0]         
    
                 [1]    [0]          
    a__pairs() = [1] >= [1] = pairs()
                 [0]    [0]          
    
                [1]    [0]         
    a__odds() = [1] >= [1] = odds()
                [0]    [0]         
    
                 [1 0 1]     [1 0 1]           
    a__incr(X) = [0 1 0]X >= [0 1 0]X = incr(X)
                 [0 0 1]     [0 0 1]           
    
                 [1 0 1]    [0]    [1 0 1]    [0]          
    a__head(X) = [0 1 0]X + [1] >= [0 1 0]X + [1] = head(X)
                 [0 1 0]    [0]    [0 1 0]    [0]          
    
                 [1 0 0]    [1]    [1 0 0]    [1]          
    a__tail(X) = [0 1 0]X + [0] >= [0 1 0]X + [0] = tail(X)
                 [0 0 0]    [0]    [0 0 0]    [0]          
   problem:
    a__odds() -> a__incr(a__pairs())
    a__incr(cons(X,XS)) -> cons(s(mark(X)),incr(XS))
    a__head(cons(X,XS)) -> mark(X)
    mark(nats()) -> a__nats()
    mark(pairs()) -> a__pairs()
    mark(odds()) -> a__odds()
    mark(incr(X)) -> a__incr(mark(X))
    mark(tail(X)) -> a__tail(mark(X))
    mark(0()) -> 0()
    mark(s(X)) -> s(mark(X))
    mark(nil()) -> nil()
    mark(cons(X1,X2)) -> cons(mark(X1),X2)
    a__incr(X) -> incr(X)
    a__head(X) -> head(X)
    a__tail(X) -> tail(X)
   Matrix Interpretation Processor: dim=1
    
    interpretation:
     [nil] = 2,
     
     [tail](x0) = x0 + 1,
     
     [head](x0) = x0,
     
     [pairs] = 5,
     
     [a__tail](x0) = x0 + 1,
     
     [a__head](x0) = x0,
     
     [s](x0) = x0,
     
     [mark](x0) = 2x0,
     
     [a__incr](x0) = 2x0,
     
     [a__odds] = 0,
     
     [odds] = 5,
     
     [a__pairs] = 0,
     
     [cons](x0, x1) = 2x0 + x1,
     
     [incr](x0) = 2x0,
     
     [nats] = 0,
     
     [0] = 0,
     
     [a__nats] = 0
    orientation:
     a__odds() = 0 >= 0 = a__incr(a__pairs())
     
     a__incr(cons(X,XS)) = 4X + 2XS >= 4X + 2XS = cons(s(mark(X)),incr(XS))
     
     a__head(cons(X,XS)) = 2X + XS >= 2X = mark(X)
     
     mark(nats()) = 0 >= 0 = a__nats()
     
     mark(pairs()) = 10 >= 0 = a__pairs()
     
     mark(odds()) = 10 >= 0 = a__odds()
     
     mark(incr(X)) = 4X >= 4X = a__incr(mark(X))
     
     mark(tail(X)) = 2X + 2 >= 2X + 1 = a__tail(mark(X))
     
     mark(0()) = 0 >= 0 = 0()
     
     mark(s(X)) = 2X >= 2X = s(mark(X))
     
     mark(nil()) = 4 >= 2 = nil()
     
     mark(cons(X1,X2)) = 4X1 + 2X2 >= 4X1 + X2 = cons(mark(X1),X2)
     
     a__incr(X) = 2X >= 2X = incr(X)
     
     a__head(X) = X >= X = head(X)
     
     a__tail(X) = X + 1 >= X + 1 = tail(X)
    problem:
     a__odds() -> a__incr(a__pairs())
     a__incr(cons(X,XS)) -> cons(s(mark(X)),incr(XS))
     a__head(cons(X,XS)) -> mark(X)
     mark(nats()) -> a__nats()
     mark(incr(X)) -> a__incr(mark(X))
     mark(0()) -> 0()
     mark(s(X)) -> s(mark(X))
     mark(cons(X1,X2)) -> cons(mark(X1),X2)
     a__incr(X) -> incr(X)
     a__head(X) -> head(X)
     a__tail(X) -> tail(X)
    DP Processor:
     DPs:
      a__odds#() -> a__incr#(a__pairs())
      a__incr#(cons(X,XS)) -> mark#(X)
      a__head#(cons(X,XS)) -> mark#(X)
      mark#(incr(X)) -> mark#(X)
      mark#(incr(X)) -> a__incr#(mark(X))
      mark#(s(X)) -> mark#(X)
      mark#(cons(X1,X2)) -> mark#(X1)
     TRS:
      a__odds() -> a__incr(a__pairs())
      a__incr(cons(X,XS)) -> cons(s(mark(X)),incr(XS))
      a__head(cons(X,XS)) -> mark(X)
      mark(nats()) -> a__nats()
      mark(incr(X)) -> a__incr(mark(X))
      mark(0()) -> 0()
      mark(s(X)) -> s(mark(X))
      mark(cons(X1,X2)) -> cons(mark(X1),X2)
      a__incr(X) -> incr(X)
      a__head(X) -> head(X)
      a__tail(X) -> tail(X)
     TDG Processor:
      DPs:
       a__odds#() -> a__incr#(a__pairs())
       a__incr#(cons(X,XS)) -> mark#(X)
       a__head#(cons(X,XS)) -> mark#(X)
       mark#(incr(X)) -> mark#(X)
       mark#(incr(X)) -> a__incr#(mark(X))
       mark#(s(X)) -> mark#(X)
       mark#(cons(X1,X2)) -> mark#(X1)
      TRS:
       a__odds() -> a__incr(a__pairs())
       a__incr(cons(X,XS)) -> cons(s(mark(X)),incr(XS))
       a__head(cons(X,XS)) -> mark(X)
       mark(nats()) -> a__nats()
       mark(incr(X)) -> a__incr(mark(X))
       mark(0()) -> 0()
       mark(s(X)) -> s(mark(X))
       mark(cons(X1,X2)) -> cons(mark(X1),X2)
       a__incr(X) -> incr(X)
       a__head(X) -> head(X)
       a__tail(X) -> tail(X)
      graph:
       a__head#(cons(X,XS)) -> mark#(X) ->
       mark#(cons(X1,X2)) -> mark#(X1)
       a__head#(cons(X,XS)) -> mark#(X) -> mark#(s(X)) -> mark#(X)
       a__head#(cons(X,XS)) -> mark#(X) ->
       mark#(incr(X)) -> a__incr#(mark(X))
       a__head#(cons(X,XS)) -> mark#(X) -> mark#(incr(X)) -> mark#(X)
       mark#(s(X)) -> mark#(X) -> mark#(cons(X1,X2)) -> mark#(X1)
       mark#(s(X)) -> mark#(X) -> mark#(s(X)) -> mark#(X)
       mark#(s(X)) -> mark#(X) -> mark#(incr(X)) -> a__incr#(mark(X))
       mark#(s(X)) -> mark#(X) -> mark#(incr(X)) -> mark#(X)
       mark#(cons(X1,X2)) -> mark#(X1) ->
       mark#(cons(X1,X2)) -> mark#(X1)
       mark#(cons(X1,X2)) -> mark#(X1) -> mark#(s(X)) -> mark#(X)
       mark#(cons(X1,X2)) -> mark#(X1) ->
       mark#(incr(X)) -> a__incr#(mark(X))
       mark#(cons(X1,X2)) -> mark#(X1) -> mark#(incr(X)) -> mark#(X)
       mark#(incr(X)) -> mark#(X) -> mark#(cons(X1,X2)) -> mark#(X1)
       mark#(incr(X)) -> mark#(X) -> mark#(s(X)) -> mark#(X)
       mark#(incr(X)) -> mark#(X) -> mark#(incr(X)) -> a__incr#(mark(X))
       mark#(incr(X)) -> mark#(X) -> mark#(incr(X)) -> mark#(X)
       mark#(incr(X)) -> a__incr#(mark(X)) ->
       a__incr#(cons(X,XS)) -> mark#(X)
       a__incr#(cons(X,XS)) -> mark#(X) ->
       mark#(cons(X1,X2)) -> mark#(X1)
       a__incr#(cons(X,XS)) -> mark#(X) -> mark#(s(X)) -> mark#(X)
       a__incr#(cons(X,XS)) -> mark#(X) ->
       mark#(incr(X)) -> a__incr#(mark(X))
       a__incr#(cons(X,XS)) -> mark#(X) ->
       mark#(incr(X)) -> mark#(X)
       a__odds#() -> a__incr#(a__pairs()) -> a__incr#(cons(X,XS)) -> mark#(X)
      SCC Processor:
       #sccs: 1
       #rules: 5
       #arcs: 22/49
       DPs:
        mark#(incr(X)) -> mark#(X)
        mark#(incr(X)) -> a__incr#(mark(X))
        a__incr#(cons(X,XS)) -> mark#(X)
        mark#(s(X)) -> mark#(X)
        mark#(cons(X1,X2)) -> mark#(X1)
       TRS:
        a__odds() -> a__incr(a__pairs())
        a__incr(cons(X,XS)) -> cons(s(mark(X)),incr(XS))
        a__head(cons(X,XS)) -> mark(X)
        mark(nats()) -> a__nats()
        mark(incr(X)) -> a__incr(mark(X))
        mark(0()) -> 0()
        mark(s(X)) -> s(mark(X))
        mark(cons(X1,X2)) -> cons(mark(X1),X2)
        a__incr(X) -> incr(X)
        a__head(X) -> head(X)
        a__tail(X) -> tail(X)
       Arctic Interpretation Processor:
        dimension: 1
        interpretation:
         [mark#](x0) = x0,
         
         [a__incr#](x0) = x0,
         
         [tail](x0) = x0 + 0,
         
         [head](x0) = x0 + 0,
         
         [a__tail](x0) = x0 + 0,
         
         [a__head](x0) = x0 + 0,
         
         [s](x0) = x0 + 0,
         
         [mark](x0) = x0,
         
         [a__incr](x0) = x0,
         
         [a__odds] = 0,
         
         [a__pairs] = 0,
         
         [cons](x0, x1) = 1x0 + x1 + 2,
         
         [incr](x0) = x0,
         
         [nats] = 0,
         
         [0] = 0,
         
         [a__nats] = 0
        orientation:
         mark#(incr(X)) = X >= X = mark#(X)
         
         mark#(incr(X)) = X >= X = a__incr#(mark(X))
         
         a__incr#(cons(X,XS)) = 1X + XS + 2 >= X = mark#(X)
         
         mark#(s(X)) = X + 0 >= X = mark#(X)
         
         mark#(cons(X1,X2)) = 1X1 + X2 + 2 >= X1 = mark#(X1)
         
         a__odds() = 0 >= 0 = a__incr(a__pairs())
         
         a__incr(cons(X,XS)) = 1X + XS + 2 >= 1X + XS + 2 = cons(s(mark(X)),incr(XS))
         
         a__head(cons(X,XS)) = 1X + XS + 2 >= X = mark(X)
         
         mark(nats()) = 0 >= 0 = a__nats()
         
         mark(incr(X)) = X >= X = a__incr(mark(X))
         
         mark(0()) = 0 >= 0 = 0()
         
         mark(s(X)) = X + 0 >= X + 0 = s(mark(X))
         
         mark(cons(X1,X2)) = 1X1 + X2 + 2 >= 1X1 + X2 + 2 = cons(mark(X1),X2)
         
         a__incr(X) = X >= X = incr(X)
         
         a__head(X) = X + 0 >= X + 0 = head(X)
         
         a__tail(X) = X + 0 >= X + 0 = tail(X)
        problem:
         DPs:
          mark#(incr(X)) -> mark#(X)
          mark#(incr(X)) -> a__incr#(mark(X))
          mark#(s(X)) -> mark#(X)
         TRS:
          a__odds() -> a__incr(a__pairs())
          a__incr(cons(X,XS)) -> cons(s(mark(X)),incr(XS))
          a__head(cons(X,XS)) -> mark(X)
          mark(nats()) -> a__nats()
          mark(incr(X)) -> a__incr(mark(X))
          mark(0()) -> 0()
          mark(s(X)) -> s(mark(X))
          mark(cons(X1,X2)) -> cons(mark(X1),X2)
          a__incr(X) -> incr(X)
          a__head(X) -> head(X)
          a__tail(X) -> tail(X)
        SCC Processor:
         #sccs: 1
         #rules: 2
         #arcs: 17/9
         DPs:
          mark#(s(X)) -> mark#(X)
          mark#(incr(X)) -> mark#(X)
         TRS:
          a__odds() -> a__incr(a__pairs())
          a__incr(cons(X,XS)) -> cons(s(mark(X)),incr(XS))
          a__head(cons(X,XS)) -> mark(X)
          mark(nats()) -> a__nats()
          mark(incr(X)) -> a__incr(mark(X))
          mark(0()) -> 0()
          mark(s(X)) -> s(mark(X))
          mark(cons(X1,X2)) -> cons(mark(X1),X2)
          a__incr(X) -> incr(X)
          a__head(X) -> head(X)
          a__tail(X) -> tail(X)
         Subterm Criterion Processor:
          simple projection:
           pi(mark#) = 0
          problem:
           DPs:
            
           TRS:
            a__odds() -> a__incr(a__pairs())
            a__incr(cons(X,XS)) -> cons(s(mark(X)),incr(XS))
            a__head(cons(X,XS)) -> mark(X)
            mark(nats()) -> a__nats()
            mark(incr(X)) -> a__incr(mark(X))
            mark(0()) -> 0()
            mark(s(X)) -> s(mark(X))
            mark(cons(X1,X2)) -> cons(mark(X1),X2)
            a__incr(X) -> incr(X)
            a__head(X) -> head(X)
            a__tail(X) -> tail(X)
          Qed