MAYBE

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

Strict Trs:
  { half(0()) -> 0()
  , half(s(0())) -> 0()
  , half(s(s(x))) -> s(half(x))
  , le(0(), y) -> true()
  , le(s(x), 0()) -> false()
  , le(s(x), s(y)) -> le(x, y)
  , inc(0()) -> 0()
  , inc(s(x)) -> s(inc(x))
  , log(x) -> log2(x, 0())
  , log2(x, y) -> if(le(x, s(0())), x, inc(y))
  , if(true(), x, s(y)) -> y
  , if(false(), x, y) -> log2(half(x), y) }
Obligation:
  innermost runtime complexity
Answer:
  MAYBE

We add following dependency tuples:

Strict DPs:
  { half^#(0()) -> c_1()
  , half^#(s(0())) -> c_2()
  , half^#(s(s(x))) -> c_3(half^#(x))
  , le^#(0(), y) -> c_4()
  , le^#(s(x), 0()) -> c_5()
  , le^#(s(x), s(y)) -> c_6(le^#(x, y))
  , inc^#(0()) -> c_7()
  , inc^#(s(x)) -> c_8(inc^#(x))
  , log^#(x) -> c_9(log2^#(x, 0()))
  , log2^#(x, y) ->
    c_10(if^#(le(x, s(0())), x, inc(y)), le^#(x, s(0())), inc^#(y))
  , if^#(true(), x, s(y)) -> c_11()
  , if^#(false(), x, y) -> c_12(log2^#(half(x), y), half^#(x)) }

and mark the set of starting terms.

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

Strict DPs:
  { half^#(0()) -> c_1()
  , half^#(s(0())) -> c_2()
  , half^#(s(s(x))) -> c_3(half^#(x))
  , le^#(0(), y) -> c_4()
  , le^#(s(x), 0()) -> c_5()
  , le^#(s(x), s(y)) -> c_6(le^#(x, y))
  , inc^#(0()) -> c_7()
  , inc^#(s(x)) -> c_8(inc^#(x))
  , log^#(x) -> c_9(log2^#(x, 0()))
  , log2^#(x, y) ->
    c_10(if^#(le(x, s(0())), x, inc(y)), le^#(x, s(0())), inc^#(y))
  , if^#(true(), x, s(y)) -> c_11()
  , if^#(false(), x, y) -> c_12(log2^#(half(x), y), half^#(x)) }
Weak Trs:
  { half(0()) -> 0()
  , half(s(0())) -> 0()
  , half(s(s(x))) -> s(half(x))
  , le(0(), y) -> true()
  , le(s(x), 0()) -> false()
  , le(s(x), s(y)) -> le(x, y)
  , inc(0()) -> 0()
  , inc(s(x)) -> s(inc(x))
  , log(x) -> log2(x, 0())
  , log2(x, y) -> if(le(x, s(0())), x, inc(y))
  , if(true(), x, s(y)) -> y
  , if(false(), x, y) -> log2(half(x), y) }
Obligation:
  innermost runtime complexity
Answer:
  MAYBE

We estimate the number of application of {1,2,4,5,7,11} by
applications of Pre({1,2,4,5,7,11}) = {3,6,8,10,12}. Here rules are
labeled as follows:

  DPs:
    { 1: half^#(0()) -> c_1()
    , 2: half^#(s(0())) -> c_2()
    , 3: half^#(s(s(x))) -> c_3(half^#(x))
    , 4: le^#(0(), y) -> c_4()
    , 5: le^#(s(x), 0()) -> c_5()
    , 6: le^#(s(x), s(y)) -> c_6(le^#(x, y))
    , 7: inc^#(0()) -> c_7()
    , 8: inc^#(s(x)) -> c_8(inc^#(x))
    , 9: log^#(x) -> c_9(log2^#(x, 0()))
    , 10: log2^#(x, y) ->
          c_10(if^#(le(x, s(0())), x, inc(y)), le^#(x, s(0())), inc^#(y))
    , 11: if^#(true(), x, s(y)) -> c_11()
    , 12: if^#(false(), x, y) -> c_12(log2^#(half(x), y), half^#(x)) }

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

Strict DPs:
  { half^#(s(s(x))) -> c_3(half^#(x))
  , le^#(s(x), s(y)) -> c_6(le^#(x, y))
  , inc^#(s(x)) -> c_8(inc^#(x))
  , log^#(x) -> c_9(log2^#(x, 0()))
  , log2^#(x, y) ->
    c_10(if^#(le(x, s(0())), x, inc(y)), le^#(x, s(0())), inc^#(y))
  , if^#(false(), x, y) -> c_12(log2^#(half(x), y), half^#(x)) }
Weak DPs:
  { half^#(0()) -> c_1()
  , half^#(s(0())) -> c_2()
  , le^#(0(), y) -> c_4()
  , le^#(s(x), 0()) -> c_5()
  , inc^#(0()) -> c_7()
  , if^#(true(), x, s(y)) -> c_11() }
Weak Trs:
  { half(0()) -> 0()
  , half(s(0())) -> 0()
  , half(s(s(x))) -> s(half(x))
  , le(0(), y) -> true()
  , le(s(x), 0()) -> false()
  , le(s(x), s(y)) -> le(x, y)
  , inc(0()) -> 0()
  , inc(s(x)) -> s(inc(x))
  , log(x) -> log2(x, 0())
  , log2(x, y) -> if(le(x, s(0())), x, inc(y))
  , if(true(), x, s(y)) -> y
  , if(false(), x, y) -> log2(half(x), y) }
Obligation:
  innermost runtime complexity
Answer:
  MAYBE

The following weak DPs constitute a sub-graph of the DG that is
closed under successors. The DPs are removed.

{ half^#(0()) -> c_1()
, half^#(s(0())) -> c_2()
, le^#(0(), y) -> c_4()
, le^#(s(x), 0()) -> c_5()
, inc^#(0()) -> c_7()
, if^#(true(), x, s(y)) -> c_11() }

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

Strict DPs:
  { half^#(s(s(x))) -> c_3(half^#(x))
  , le^#(s(x), s(y)) -> c_6(le^#(x, y))
  , inc^#(s(x)) -> c_8(inc^#(x))
  , log^#(x) -> c_9(log2^#(x, 0()))
  , log2^#(x, y) ->
    c_10(if^#(le(x, s(0())), x, inc(y)), le^#(x, s(0())), inc^#(y))
  , if^#(false(), x, y) -> c_12(log2^#(half(x), y), half^#(x)) }
Weak Trs:
  { half(0()) -> 0()
  , half(s(0())) -> 0()
  , half(s(s(x))) -> s(half(x))
  , le(0(), y) -> true()
  , le(s(x), 0()) -> false()
  , le(s(x), s(y)) -> le(x, y)
  , inc(0()) -> 0()
  , inc(s(x)) -> s(inc(x))
  , log(x) -> log2(x, 0())
  , log2(x, y) -> if(le(x, s(0())), x, inc(y))
  , if(true(), x, s(y)) -> y
  , if(false(), x, y) -> log2(half(x), y) }
Obligation:
  innermost runtime complexity
Answer:
  MAYBE

Consider the dependency graph

  1: half^#(s(s(x))) -> c_3(half^#(x))
     -->_1 half^#(s(s(x))) -> c_3(half^#(x)) :1
  
  2: le^#(s(x), s(y)) -> c_6(le^#(x, y))
     -->_1 le^#(s(x), s(y)) -> c_6(le^#(x, y)) :2
  
  3: inc^#(s(x)) -> c_8(inc^#(x))
     -->_1 inc^#(s(x)) -> c_8(inc^#(x)) :3
  
  4: log^#(x) -> c_9(log2^#(x, 0()))
     -->_1 log2^#(x, y) ->
           c_10(if^#(le(x, s(0())), x, inc(y)), le^#(x, s(0())), inc^#(y)) :5
  
  5: log2^#(x, y) ->
     c_10(if^#(le(x, s(0())), x, inc(y)), le^#(x, s(0())), inc^#(y))
     -->_1 if^#(false(), x, y) -> c_12(log2^#(half(x), y), half^#(x)) :6
     -->_3 inc^#(s(x)) -> c_8(inc^#(x)) :3
     -->_2 le^#(s(x), s(y)) -> c_6(le^#(x, y)) :2
  
  6: if^#(false(), x, y) -> c_12(log2^#(half(x), y), half^#(x))
     -->_1 log2^#(x, y) ->
           c_10(if^#(le(x, s(0())), x, inc(y)), le^#(x, s(0())), inc^#(y)) :5
     -->_2 half^#(s(s(x))) -> c_3(half^#(x)) :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).

  { log^#(x) -> c_9(log2^#(x, 0())) }


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

Strict DPs:
  { half^#(s(s(x))) -> c_3(half^#(x))
  , le^#(s(x), s(y)) -> c_6(le^#(x, y))
  , inc^#(s(x)) -> c_8(inc^#(x))
  , log2^#(x, y) ->
    c_10(if^#(le(x, s(0())), x, inc(y)), le^#(x, s(0())), inc^#(y))
  , if^#(false(), x, y) -> c_12(log2^#(half(x), y), half^#(x)) }
Weak Trs:
  { half(0()) -> 0()
  , half(s(0())) -> 0()
  , half(s(s(x))) -> s(half(x))
  , le(0(), y) -> true()
  , le(s(x), 0()) -> false()
  , le(s(x), s(y)) -> le(x, y)
  , inc(0()) -> 0()
  , inc(s(x)) -> s(inc(x))
  , log(x) -> log2(x, 0())
  , log2(x, y) -> if(le(x, s(0())), x, inc(y))
  , if(true(), x, s(y)) -> y
  , if(false(), x, y) -> log2(half(x), y) }
Obligation:
  innermost runtime complexity
Answer:
  MAYBE

We replace rewrite rules by usable rules:

  Weak Usable Rules:
    { half(0()) -> 0()
    , half(s(0())) -> 0()
    , half(s(s(x))) -> s(half(x))
    , le(0(), y) -> true()
    , le(s(x), 0()) -> false()
    , le(s(x), s(y)) -> le(x, y)
    , inc(0()) -> 0()
    , inc(s(x)) -> s(inc(x)) }

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

Strict DPs:
  { half^#(s(s(x))) -> c_3(half^#(x))
  , le^#(s(x), s(y)) -> c_6(le^#(x, y))
  , inc^#(s(x)) -> c_8(inc^#(x))
  , log2^#(x, y) ->
    c_10(if^#(le(x, s(0())), x, inc(y)), le^#(x, s(0())), inc^#(y))
  , if^#(false(), x, y) -> c_12(log2^#(half(x), y), half^#(x)) }
Weak Trs:
  { half(0()) -> 0()
  , half(s(0())) -> 0()
  , half(s(s(x))) -> s(half(x))
  , le(0(), y) -> true()
  , le(s(x), 0()) -> false()
  , le(s(x), s(y)) -> le(x, y)
  , inc(0()) -> 0()
  , inc(s(x)) -> s(inc(x)) }
Obligation:
  innermost runtime complexity
Answer:
  MAYBE

None of the processors succeeded.

Details of failed attempt(s):
-----------------------------
1) 'matrices' failed due to the following reason:
   
   None of the processors succeeded.
   
   Details of failed attempt(s):
   -----------------------------
   1) 'matrix interpretation of dimension 4' failed due to the
      following reason:
      
      The input cannot be shown compatible
   
   2) 'matrix interpretation of dimension 3' failed due to the
      following reason:
      
      The input cannot be shown compatible
   
   3) 'matrix interpretation of dimension 3' failed due to the
      following reason:
      
      The input cannot be shown compatible
   
   4) 'matrix interpretation of dimension 2' failed due to the
      following reason:
      
      The input cannot be shown compatible
   
   5) 'matrix interpretation of dimension 2' failed due to the
      following reason:
      
      The input cannot be shown compatible
   
   6) 'matrix interpretation of dimension 1' failed due to the
      following reason:
      
      The input cannot be shown compatible
   

2) 'empty' failed due to the following reason:
   
   Empty strict component of the problem is NOT empty.


Arrrr..