MAYBE

We are left with following problem, upon which TcT provides the
certificate MAYBE.

Strict Trs:
  { le(s(x), s(y)) -> le(x, y)
  , le(s(x), 0()) -> false()
  , le(0(), y) -> true()
  , double(s(x)) -> s(s(double(x)))
  , double(0()) -> 0()
  , log(s(x)) -> loop(s(x), s(0()), 0())
  , log(0()) -> logError()
  , loop(x, s(y), z) -> if(le(x, s(y)), x, s(y), z)
  , if(false(), x, y, z) -> loop(x, double(y), s(z))
  , if(true(), x, y, z) -> z
  , maplog(xs) -> mapIter(xs, nil())
  , mapIter(xs, ys) -> ifmap(isempty(xs), xs, ys)
  , ifmap(false(), xs, ys) ->
    mapIter(droplast(xs), cons(log(last(xs)), ys))
  , ifmap(true(), xs, ys) -> ys
  , isempty(nil()) -> true()
  , isempty(cons(x, xs)) -> false()
  , droplast(nil()) -> nil()
  , droplast(cons(x, nil())) -> nil()
  , droplast(cons(x, cons(y, xs))) -> cons(x, droplast(cons(y, xs)))
  , last(nil()) -> error()
  , last(cons(x, nil())) -> x
  , last(cons(x, cons(y, xs))) -> last(cons(y, xs))
  , a() -> b()
  , a() -> c() }
Obligation:
  runtime complexity
Answer:
  MAYBE

None of the processors succeeded.

Details of failed attempt(s):
-----------------------------
1) 'WithProblem (timeout of 60 seconds)' failed due to the
   following reason:
   
   Computation stopped due to timeout after 60.0 seconds.

2) 'Best' failed due to the following reason:
   
   None of the processors succeeded.
   
   Details of failed attempt(s):
   -----------------------------
   1) 'WithProblem (timeout of 30 seconds) (timeout of 60 seconds)'
      failed due to the following reason:
      
      Computation stopped due to timeout after 30.0 seconds.
   
   2) 'Best' failed due to the following reason:
      
      None of the processors succeeded.
      
      Details of failed attempt(s):
      -----------------------------
      1) 'Polynomial Path Order (PS) (timeout of 60 seconds)' failed due
         to the following reason:
         
         The processor is inapplicable, reason:
           Processor only applicable for innermost runtime complexity analysis
      
      2) 'bsearch-popstar (timeout of 60 seconds)' failed due to the
         following reason:
         
         The processor is inapplicable, reason:
           Processor only applicable for innermost runtime complexity analysis
      
   
   3) 'Fastest (timeout of 5 seconds) (timeout of 60 seconds)' failed
      due to the following reason:
      
      None of the processors succeeded.
      
      Details of failed attempt(s):
      -----------------------------
      1) 'Bounds with perSymbol-enrichment and initial automaton 'match''
         failed due to the following reason:
         
         match-boundness of the problem could not be verified.
      
      2) 'Bounds with minimal-enrichment and initial automaton 'match''
         failed due to the following reason:
         
         match-boundness of the problem could not be verified.
      
   

3) 'Innermost Weak Dependency Pairs (timeout of 60 seconds)' failed
   due to the following reason:
   
   We add the following weak dependency pairs:
   
   Strict DPs:
     { le^#(s(x), s(y)) -> c_1(le^#(x, y))
     , le^#(s(x), 0()) -> c_2()
     , le^#(0(), y) -> c_3()
     , double^#(s(x)) -> c_4(double^#(x))
     , double^#(0()) -> c_5()
     , log^#(s(x)) -> c_6(loop^#(s(x), s(0()), 0()))
     , log^#(0()) -> c_7()
     , loop^#(x, s(y), z) -> c_8(if^#(le(x, s(y)), x, s(y), z))
     , if^#(false(), x, y, z) -> c_9(loop^#(x, double(y), s(z)))
     , if^#(true(), x, y, z) -> c_10(z)
     , maplog^#(xs) -> c_11(mapIter^#(xs, nil()))
     , mapIter^#(xs, ys) -> c_12(ifmap^#(isempty(xs), xs, ys))
     , ifmap^#(false(), xs, ys) ->
       c_13(mapIter^#(droplast(xs), cons(log(last(xs)), ys)))
     , ifmap^#(true(), xs, ys) -> c_14(ys)
     , isempty^#(nil()) -> c_15()
     , isempty^#(cons(x, xs)) -> c_16()
     , droplast^#(nil()) -> c_17()
     , droplast^#(cons(x, nil())) -> c_18()
     , droplast^#(cons(x, cons(y, xs))) ->
       c_19(x, droplast^#(cons(y, xs)))
     , last^#(nil()) -> c_20()
     , last^#(cons(x, nil())) -> c_21(x)
     , last^#(cons(x, cons(y, xs))) -> c_22(last^#(cons(y, xs)))
     , a^#() -> c_23()
     , a^#() -> c_24() }
   
   and mark the set of starting terms.
   
   We are left with following problem, upon which TcT provides the
   certificate MAYBE.
   
   Strict DPs:
     { le^#(s(x), s(y)) -> c_1(le^#(x, y))
     , le^#(s(x), 0()) -> c_2()
     , le^#(0(), y) -> c_3()
     , double^#(s(x)) -> c_4(double^#(x))
     , double^#(0()) -> c_5()
     , log^#(s(x)) -> c_6(loop^#(s(x), s(0()), 0()))
     , log^#(0()) -> c_7()
     , loop^#(x, s(y), z) -> c_8(if^#(le(x, s(y)), x, s(y), z))
     , if^#(false(), x, y, z) -> c_9(loop^#(x, double(y), s(z)))
     , if^#(true(), x, y, z) -> c_10(z)
     , maplog^#(xs) -> c_11(mapIter^#(xs, nil()))
     , mapIter^#(xs, ys) -> c_12(ifmap^#(isempty(xs), xs, ys))
     , ifmap^#(false(), xs, ys) ->
       c_13(mapIter^#(droplast(xs), cons(log(last(xs)), ys)))
     , ifmap^#(true(), xs, ys) -> c_14(ys)
     , isempty^#(nil()) -> c_15()
     , isempty^#(cons(x, xs)) -> c_16()
     , droplast^#(nil()) -> c_17()
     , droplast^#(cons(x, nil())) -> c_18()
     , droplast^#(cons(x, cons(y, xs))) ->
       c_19(x, droplast^#(cons(y, xs)))
     , last^#(nil()) -> c_20()
     , last^#(cons(x, nil())) -> c_21(x)
     , last^#(cons(x, cons(y, xs))) -> c_22(last^#(cons(y, xs)))
     , a^#() -> c_23()
     , a^#() -> c_24() }
   Strict Trs:
     { le(s(x), s(y)) -> le(x, y)
     , le(s(x), 0()) -> false()
     , le(0(), y) -> true()
     , double(s(x)) -> s(s(double(x)))
     , double(0()) -> 0()
     , log(s(x)) -> loop(s(x), s(0()), 0())
     , log(0()) -> logError()
     , loop(x, s(y), z) -> if(le(x, s(y)), x, s(y), z)
     , if(false(), x, y, z) -> loop(x, double(y), s(z))
     , if(true(), x, y, z) -> z
     , maplog(xs) -> mapIter(xs, nil())
     , mapIter(xs, ys) -> ifmap(isempty(xs), xs, ys)
     , ifmap(false(), xs, ys) ->
       mapIter(droplast(xs), cons(log(last(xs)), ys))
     , ifmap(true(), xs, ys) -> ys
     , isempty(nil()) -> true()
     , isempty(cons(x, xs)) -> false()
     , droplast(nil()) -> nil()
     , droplast(cons(x, nil())) -> nil()
     , droplast(cons(x, cons(y, xs))) -> cons(x, droplast(cons(y, xs)))
     , last(nil()) -> error()
     , last(cons(x, nil())) -> x
     , last(cons(x, cons(y, xs))) -> last(cons(y, xs))
     , a() -> b()
     , a() -> c() }
   Obligation:
     runtime complexity
   Answer:
     MAYBE
   
   We estimate the number of application of
   {2,3,5,7,15,16,17,18,20,23,24} by applications of
   Pre({2,3,5,7,15,16,17,18,20,23,24}) = {1,4,10,14,19,21}. Here rules
   are labeled as follows:
   
     DPs:
       { 1: le^#(s(x), s(y)) -> c_1(le^#(x, y))
       , 2: le^#(s(x), 0()) -> c_2()
       , 3: le^#(0(), y) -> c_3()
       , 4: double^#(s(x)) -> c_4(double^#(x))
       , 5: double^#(0()) -> c_5()
       , 6: log^#(s(x)) -> c_6(loop^#(s(x), s(0()), 0()))
       , 7: log^#(0()) -> c_7()
       , 8: loop^#(x, s(y), z) -> c_8(if^#(le(x, s(y)), x, s(y), z))
       , 9: if^#(false(), x, y, z) -> c_9(loop^#(x, double(y), s(z)))
       , 10: if^#(true(), x, y, z) -> c_10(z)
       , 11: maplog^#(xs) -> c_11(mapIter^#(xs, nil()))
       , 12: mapIter^#(xs, ys) -> c_12(ifmap^#(isempty(xs), xs, ys))
       , 13: ifmap^#(false(), xs, ys) ->
             c_13(mapIter^#(droplast(xs), cons(log(last(xs)), ys)))
       , 14: ifmap^#(true(), xs, ys) -> c_14(ys)
       , 15: isempty^#(nil()) -> c_15()
       , 16: isempty^#(cons(x, xs)) -> c_16()
       , 17: droplast^#(nil()) -> c_17()
       , 18: droplast^#(cons(x, nil())) -> c_18()
       , 19: droplast^#(cons(x, cons(y, xs))) ->
             c_19(x, droplast^#(cons(y, xs)))
       , 20: last^#(nil()) -> c_20()
       , 21: last^#(cons(x, nil())) -> c_21(x)
       , 22: last^#(cons(x, cons(y, xs))) -> c_22(last^#(cons(y, xs)))
       , 23: a^#() -> c_23()
       , 24: a^#() -> c_24() }
   
   We are left with following problem, upon which TcT provides the
   certificate MAYBE.
   
   Strict DPs:
     { le^#(s(x), s(y)) -> c_1(le^#(x, y))
     , double^#(s(x)) -> c_4(double^#(x))
     , log^#(s(x)) -> c_6(loop^#(s(x), s(0()), 0()))
     , loop^#(x, s(y), z) -> c_8(if^#(le(x, s(y)), x, s(y), z))
     , if^#(false(), x, y, z) -> c_9(loop^#(x, double(y), s(z)))
     , if^#(true(), x, y, z) -> c_10(z)
     , maplog^#(xs) -> c_11(mapIter^#(xs, nil()))
     , mapIter^#(xs, ys) -> c_12(ifmap^#(isempty(xs), xs, ys))
     , ifmap^#(false(), xs, ys) ->
       c_13(mapIter^#(droplast(xs), cons(log(last(xs)), ys)))
     , ifmap^#(true(), xs, ys) -> c_14(ys)
     , droplast^#(cons(x, cons(y, xs))) ->
       c_19(x, droplast^#(cons(y, xs)))
     , last^#(cons(x, nil())) -> c_21(x)
     , last^#(cons(x, cons(y, xs))) -> c_22(last^#(cons(y, xs))) }
   Strict Trs:
     { le(s(x), s(y)) -> le(x, y)
     , le(s(x), 0()) -> false()
     , le(0(), y) -> true()
     , double(s(x)) -> s(s(double(x)))
     , double(0()) -> 0()
     , log(s(x)) -> loop(s(x), s(0()), 0())
     , log(0()) -> logError()
     , loop(x, s(y), z) -> if(le(x, s(y)), x, s(y), z)
     , if(false(), x, y, z) -> loop(x, double(y), s(z))
     , if(true(), x, y, z) -> z
     , maplog(xs) -> mapIter(xs, nil())
     , mapIter(xs, ys) -> ifmap(isempty(xs), xs, ys)
     , ifmap(false(), xs, ys) ->
       mapIter(droplast(xs), cons(log(last(xs)), ys))
     , ifmap(true(), xs, ys) -> ys
     , isempty(nil()) -> true()
     , isempty(cons(x, xs)) -> false()
     , droplast(nil()) -> nil()
     , droplast(cons(x, nil())) -> nil()
     , droplast(cons(x, cons(y, xs))) -> cons(x, droplast(cons(y, xs)))
     , last(nil()) -> error()
     , last(cons(x, nil())) -> x
     , last(cons(x, cons(y, xs))) -> last(cons(y, xs))
     , a() -> b()
     , a() -> c() }
   Weak DPs:
     { le^#(s(x), 0()) -> c_2()
     , le^#(0(), y) -> c_3()
     , double^#(0()) -> c_5()
     , log^#(0()) -> c_7()
     , isempty^#(nil()) -> c_15()
     , isempty^#(cons(x, xs)) -> c_16()
     , droplast^#(nil()) -> c_17()
     , droplast^#(cons(x, nil())) -> c_18()
     , last^#(nil()) -> c_20()
     , a^#() -> c_23()
     , a^#() -> c_24() }
   Obligation:
     runtime complexity
   Answer:
     MAYBE
   
   Empty strict component of the problem is NOT empty.


Arrrr..