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

Strict Trs:
  { map(Cons(x, xs)) -> Cons(f(x), map(xs))
  , map(Nil()) -> Nil()
  , f(x) -> *(x, x)
  , +Full(S(x), y) -> +Full(x, S(y))
  , +Full(0(), y) -> y
  , goal(xs) -> map(xs) }
Weak Trs:
  { *(x, S(S(y))) -> +(x, *(x, S(y)))
  , *(x, S(0())) -> x
  , *(x, 0()) -> 0()
  , *(0(), y) -> 0() }
Obligation:
  innermost runtime complexity
Answer:
  YES(O(1),O(n^1))

We add the following weak dependency pairs:

Strict DPs:
  { map^#(Cons(x, xs)) -> c_1(f^#(x), map^#(xs))
  , map^#(Nil()) -> c_2()
  , f^#(x) -> c_3(*^#(x, x))
  , +Full^#(S(x), y) -> c_4(+Full^#(x, S(y)))
  , +Full^#(0(), y) -> c_5()
  , goal^#(xs) -> c_6(map^#(xs)) }
Weak DPs:
  { *^#(x, S(S(y))) -> c_7(*^#(x, S(y)))
  , *^#(x, S(0())) -> c_8()
  , *^#(x, 0()) -> c_9()
  , *^#(0(), y) -> c_10() }

and mark the set of starting terms.

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

Strict DPs:
  { map^#(Cons(x, xs)) -> c_1(f^#(x), map^#(xs))
  , map^#(Nil()) -> c_2()
  , f^#(x) -> c_3(*^#(x, x))
  , +Full^#(S(x), y) -> c_4(+Full^#(x, S(y)))
  , +Full^#(0(), y) -> c_5()
  , goal^#(xs) -> c_6(map^#(xs)) }
Strict Trs:
  { map(Cons(x, xs)) -> Cons(f(x), map(xs))
  , map(Nil()) -> Nil()
  , f(x) -> *(x, x)
  , +Full(S(x), y) -> +Full(x, S(y))
  , +Full(0(), y) -> y
  , goal(xs) -> map(xs) }
Weak DPs:
  { *^#(x, S(S(y))) -> c_7(*^#(x, S(y)))
  , *^#(x, S(0())) -> c_8()
  , *^#(x, 0()) -> c_9()
  , *^#(0(), y) -> c_10() }
Weak Trs:
  { *(x, S(S(y))) -> +(x, *(x, S(y)))
  , *(x, S(0())) -> x
  , *(x, 0()) -> 0()
  , *(0(), y) -> 0() }
Obligation:
  innermost runtime complexity
Answer:
  YES(O(1),O(n^1))

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^1)).

Strict DPs:
  { map^#(Cons(x, xs)) -> c_1(f^#(x), map^#(xs))
  , map^#(Nil()) -> c_2()
  , f^#(x) -> c_3(*^#(x, x))
  , +Full^#(S(x), y) -> c_4(+Full^#(x, S(y)))
  , +Full^#(0(), y) -> c_5()
  , goal^#(xs) -> c_6(map^#(xs)) }
Weak DPs:
  { *^#(x, S(S(y))) -> c_7(*^#(x, S(y)))
  , *^#(x, S(0())) -> c_8()
  , *^#(x, 0()) -> c_9()
  , *^#(0(), y) -> c_10() }
Obligation:
  innermost runtime complexity
Answer:
  YES(O(1),O(n^1))

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

The following argument positions are usable:
  Uargs(c_1) = {1, 2}, Uargs(c_3) = {1}, Uargs(c_4) = {1},
  Uargs(c_6) = {1}, Uargs(c_7) = {1}

TcT has computed the following constructor-restricted matrix
interpretation.

            [S](x1) = [0]                      
                      [0]                      
                                               
     [Cons](x1, x2) = [1 0] x1 + [1 0] x2 + [0]
                      [0 1]      [0 1]      [0]
                                               
              [Nil] = [0]                      
                      [0]                      
                                               
                [0] = [0]                      
                      [0]                      
                                               
        [map^#](x1) = [2 2] x1 + [0]           
                      [0 0]      [0]           
                                               
      [c_1](x1, x2) = [1 0] x1 + [1 0] x2 + [2]
                      [0 1]      [0 1]      [2]
                                               
          [f^#](x1) = [0]                      
                      [0]                      
                                               
              [c_2] = [0]                      
                      [0]                      
                                               
          [c_3](x1) = [1 0] x1 + [0]           
                      [0 1]      [0]           
                                               
      [*^#](x1, x2) = [0]                      
                      [0]                      
                                               
  [+Full^#](x1, x2) = [0]                      
                      [0]                      
                                               
          [c_4](x1) = [1 0] x1 + [2]           
                      [0 1]      [2]           
                                               
              [c_5] = [0]                      
                      [0]                      
                                               
       [goal^#](x1) = [2 2] x1 + [2]           
                      [2 1]      [2]           
                                               
          [c_6](x1) = [1 0] x1 + [0]           
                      [0 1]      [0]           
                                               
          [c_7](x1) = [1 0] x1 + [0]           
                      [0 1]      [0]           
                                               
              [c_8] = [0]                      
                      [0]                      
                                               
              [c_9] = [0]                      
                      [0]                      
                                               
             [c_10] = [0]                      
                      [0]                      

The order satisfies the following ordering constraints:

  [map^#(Cons(x, xs))] =  [2 2] x + [2 2] xs + [0]
                          [0 0]     [0 0]      [0]
                       ?  [2 2] xs + [2]          
                          [0 0]      [2]          
                       =  [c_1(f^#(x), map^#(xs))]
                                                  
        [map^#(Nil())] =  [0]                     
                          [0]                     
                       >= [0]                     
                          [0]                     
                       =  [c_2()]                 
                                                  
              [f^#(x)] =  [0]                     
                          [0]                     
                       >= [0]                     
                          [0]                     
                       =  [c_3(*^#(x, x))]        
                                                  
     [*^#(x, S(S(y)))] =  [0]                     
                          [0]                     
                       >= [0]                     
                          [0]                     
                       =  [c_7(*^#(x, S(y)))]     
                                                  
      [*^#(x, S(0()))] =  [0]                     
                          [0]                     
                       >= [0]                     
                          [0]                     
                       =  [c_8()]                 
                                                  
         [*^#(x, 0())] =  [0]                     
                          [0]                     
                       >= [0]                     
                          [0]                     
                       =  [c_9()]                 
                                                  
         [*^#(0(), y)] =  [0]                     
                          [0]                     
                       >= [0]                     
                          [0]                     
                       =  [c_10()]                
                                                  
    [+Full^#(S(x), y)] =  [0]                     
                          [0]                     
                       ?  [2]                     
                          [2]                     
                       =  [c_4(+Full^#(x, S(y)))] 
                                                  
     [+Full^#(0(), y)] =  [0]                     
                          [0]                     
                       >= [0]                     
                          [0]                     
                       =  [c_5()]                 
                                                  
          [goal^#(xs)] =  [2 2] xs + [2]          
                          [2 1]      [2]          
                       >  [2 2] xs + [0]          
                          [0 0]      [0]          
                       =  [c_6(map^#(xs))]        
                                                  

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^1)).

Strict DPs:
  { map^#(Cons(x, xs)) -> c_1(f^#(x), map^#(xs))
  , map^#(Nil()) -> c_2()
  , f^#(x) -> c_3(*^#(x, x))
  , +Full^#(S(x), y) -> c_4(+Full^#(x, S(y)))
  , +Full^#(0(), y) -> c_5() }
Weak DPs:
  { *^#(x, S(S(y))) -> c_7(*^#(x, S(y)))
  , *^#(x, S(0())) -> c_8()
  , *^#(x, 0()) -> c_9()
  , *^#(0(), y) -> c_10()
  , goal^#(xs) -> c_6(map^#(xs)) }
Obligation:
  innermost runtime complexity
Answer:
  YES(O(1),O(n^1))

We estimate the number of application of {3,5} by applications of
Pre({3,5}) = {1,4}. Here rules are labeled as follows:

  DPs:
    { 1: map^#(Cons(x, xs)) -> c_1(f^#(x), map^#(xs))
    , 2: map^#(Nil()) -> c_2()
    , 3: f^#(x) -> c_3(*^#(x, x))
    , 4: +Full^#(S(x), y) -> c_4(+Full^#(x, S(y)))
    , 5: +Full^#(0(), y) -> c_5()
    , 6: *^#(x, S(S(y))) -> c_7(*^#(x, S(y)))
    , 7: *^#(x, S(0())) -> c_8()
    , 8: *^#(x, 0()) -> c_9()
    , 9: *^#(0(), y) -> c_10()
    , 10: goal^#(xs) -> c_6(map^#(xs)) }

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

Strict DPs:
  { map^#(Cons(x, xs)) -> c_1(f^#(x), map^#(xs))
  , map^#(Nil()) -> c_2()
  , +Full^#(S(x), y) -> c_4(+Full^#(x, S(y))) }
Weak DPs:
  { f^#(x) -> c_3(*^#(x, x))
  , *^#(x, S(S(y))) -> c_7(*^#(x, S(y)))
  , *^#(x, S(0())) -> c_8()
  , *^#(x, 0()) -> c_9()
  , *^#(0(), y) -> c_10()
  , +Full^#(0(), y) -> c_5()
  , goal^#(xs) -> c_6(map^#(xs)) }
Obligation:
  innermost 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.

{ f^#(x) -> c_3(*^#(x, x))
, *^#(x, S(S(y))) -> c_7(*^#(x, S(y)))
, *^#(x, S(0())) -> c_8()
, *^#(x, 0()) -> c_9()
, *^#(0(), y) -> c_10()
, +Full^#(0(), y) -> c_5() }

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

Strict DPs:
  { map^#(Cons(x, xs)) -> c_1(f^#(x), map^#(xs))
  , map^#(Nil()) -> c_2()
  , +Full^#(S(x), y) -> c_4(+Full^#(x, S(y))) }
Weak DPs: { goal^#(xs) -> c_6(map^#(xs)) }
Obligation:
  innermost 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:

  { map^#(Cons(x, xs)) -> c_1(f^#(x), map^#(xs)) }

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

Strict DPs:
  { map^#(Cons(x, xs)) -> c_1(map^#(xs))
  , map^#(Nil()) -> c_2()
  , +Full^#(S(x), y) -> c_3(+Full^#(x, S(y))) }
Weak DPs: { goal^#(xs) -> c_4(map^#(xs)) }
Obligation:
  innermost runtime complexity
Answer:
  YES(O(1),O(n^1))

Consider the dependency graph

  1: map^#(Cons(x, xs)) -> c_1(map^#(xs))
     -->_1 map^#(Nil()) -> c_2() :2
     -->_1 map^#(Cons(x, xs)) -> c_1(map^#(xs)) :1
  
  2: map^#(Nil()) -> c_2()
  
  3: +Full^#(S(x), y) -> c_3(+Full^#(x, S(y)))
     -->_1 +Full^#(S(x), y) -> c_3(+Full^#(x, S(y))) :3
  
  4: goal^#(xs) -> c_4(map^#(xs))
     -->_1 map^#(Nil()) -> c_2() :2
     -->_1 map^#(Cons(x, xs)) -> c_1(map^#(xs)) :1
  

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).

  { goal^#(xs) -> c_4(map^#(xs)) }


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

Strict DPs:
  { map^#(Cons(x, xs)) -> c_1(map^#(xs))
  , map^#(Nil()) -> c_2()
  , +Full^#(S(x), y) -> c_3(+Full^#(x, S(y))) }
Obligation:
  innermost runtime complexity
Answer:
  YES(O(1),O(n^1))

We estimate the number of application of {2} by applications of
Pre({2}) = {1}. Here rules are labeled as follows:

  DPs:
    { 1: map^#(Cons(x, xs)) -> c_1(map^#(xs))
    , 2: map^#(Nil()) -> c_2()
    , 3: +Full^#(S(x), y) -> c_3(+Full^#(x, S(y))) }

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

Strict DPs:
  { map^#(Cons(x, xs)) -> c_1(map^#(xs))
  , +Full^#(S(x), y) -> c_3(+Full^#(x, S(y))) }
Weak DPs: { map^#(Nil()) -> c_2() }
Obligation:
  innermost 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.

{ map^#(Nil()) -> c_2() }

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

Strict DPs:
  { map^#(Cons(x, xs)) -> c_1(map^#(xs))
  , +Full^#(S(x), y) -> c_3(+Full^#(x, S(y))) }
Obligation:
  innermost runtime complexity
Answer:
  YES(O(1),O(n^1))

We use the processor 'Small Polynomial Path Order (PS,1-bounded)'
to orient following rules strictly.

DPs:
  { 1: map^#(Cons(x, xs)) -> c_1(map^#(xs))
  , 2: +Full^#(S(x), y) -> c_3(+Full^#(x, S(y))) }

Sub-proof:
----------
  The input was oriented with the instance of 'Small Polynomial Path
  Order (PS,1-bounded)' as induced by the safe mapping
  
   safe(S) = {1}, safe(Cons) = {1, 2}, safe(map^#) = {},
   safe(+Full^#) = {2}, safe(c_1) = {}, safe(c_3) = {}
  
  and precedence
  
   empty .
  
  Following symbols are considered recursive:
  
   {map^#, +Full^#}
  
  The recursion depth is 1.
  
  Further, following argument filtering is employed:
  
   pi(S) = [1], pi(Cons) = [2], pi(map^#) = [1], pi(+Full^#) = [1],
   pi(c_1) = [1], pi(c_3) = [1]
  
  Usable defined function symbols are a subset of:
  
   {map^#, +Full^#}
  
  For your convenience, here are the satisfied ordering constraints:
  
    pi(map^#(Cons(x, xs))) = map^#(Cons(; xs);)       
                           > c_1(map^#(xs;);)         
                           = pi(c_1(map^#(xs)))       
                                                      
      pi(+Full^#(S(x), y)) = +Full^#(S(; x);)         
                           > c_3(+Full^#(x;);)        
                           = pi(c_3(+Full^#(x, S(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:
  { map^#(Cons(x, xs)) -> c_1(map^#(xs))
  , +Full^#(S(x), y) -> c_3(+Full^#(x, S(y))) }
Obligation:
  innermost 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.

{ map^#(Cons(x, xs)) -> c_1(map^#(xs))
, +Full^#(S(x), y) -> c_3(+Full^#(x, S(y))) }

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

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

Empty rules are trivially bounded

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