MAYBE

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

Strict Trs:
  { and(tt(), tt()) -> tt()
  , is_nat(0()) -> tt()
  , is_nat(s(x)) -> is_nat(x)
  , is_natlist(nil()) -> tt()
  , is_natlist(cons(x, xs)) -> and(is_nat(x), is_natlist(xs))
  , from(x) -> fromCond(is_natlist(x), x)
  , fromCond(tt(), cons(x, xs)) -> from(cons(s(x), cons(x, xs))) }
Obligation:
  innermost runtime complexity
Answer:
  MAYBE

We add following dependency tuples:

Strict DPs:
  { and^#(tt(), tt()) -> c_1()
  , is_nat^#(0()) -> c_2()
  , is_nat^#(s(x)) -> c_3(is_nat^#(x))
  , is_natlist^#(nil()) -> c_4()
  , is_natlist^#(cons(x, xs)) ->
    c_5(and^#(is_nat(x), is_natlist(xs)),
        is_nat^#(x),
        is_natlist^#(xs))
  , from^#(x) -> c_6(fromCond^#(is_natlist(x), x), is_natlist^#(x))
  , fromCond^#(tt(), cons(x, xs)) ->
    c_7(from^#(cons(s(x), cons(x, xs)))) }

and mark the set of starting terms.

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

Strict DPs:
  { and^#(tt(), tt()) -> c_1()
  , is_nat^#(0()) -> c_2()
  , is_nat^#(s(x)) -> c_3(is_nat^#(x))
  , is_natlist^#(nil()) -> c_4()
  , is_natlist^#(cons(x, xs)) ->
    c_5(and^#(is_nat(x), is_natlist(xs)),
        is_nat^#(x),
        is_natlist^#(xs))
  , from^#(x) -> c_6(fromCond^#(is_natlist(x), x), is_natlist^#(x))
  , fromCond^#(tt(), cons(x, xs)) ->
    c_7(from^#(cons(s(x), cons(x, xs)))) }
Weak Trs:
  { and(tt(), tt()) -> tt()
  , is_nat(0()) -> tt()
  , is_nat(s(x)) -> is_nat(x)
  , is_natlist(nil()) -> tt()
  , is_natlist(cons(x, xs)) -> and(is_nat(x), is_natlist(xs))
  , from(x) -> fromCond(is_natlist(x), x)
  , fromCond(tt(), cons(x, xs)) -> from(cons(s(x), cons(x, xs))) }
Obligation:
  innermost runtime complexity
Answer:
  MAYBE

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

  DPs:
    { 1: and^#(tt(), tt()) -> c_1()
    , 2: is_nat^#(0()) -> c_2()
    , 3: is_nat^#(s(x)) -> c_3(is_nat^#(x))
    , 4: is_natlist^#(nil()) -> c_4()
    , 5: is_natlist^#(cons(x, xs)) ->
         c_5(and^#(is_nat(x), is_natlist(xs)),
             is_nat^#(x),
             is_natlist^#(xs))
    , 6: from^#(x) ->
         c_6(fromCond^#(is_natlist(x), x), is_natlist^#(x))
    , 7: fromCond^#(tt(), cons(x, xs)) ->
         c_7(from^#(cons(s(x), cons(x, xs)))) }

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

Strict DPs:
  { is_nat^#(s(x)) -> c_3(is_nat^#(x))
  , is_natlist^#(cons(x, xs)) ->
    c_5(and^#(is_nat(x), is_natlist(xs)),
        is_nat^#(x),
        is_natlist^#(xs))
  , from^#(x) -> c_6(fromCond^#(is_natlist(x), x), is_natlist^#(x))
  , fromCond^#(tt(), cons(x, xs)) ->
    c_7(from^#(cons(s(x), cons(x, xs)))) }
Weak DPs:
  { and^#(tt(), tt()) -> c_1()
  , is_nat^#(0()) -> c_2()
  , is_natlist^#(nil()) -> c_4() }
Weak Trs:
  { and(tt(), tt()) -> tt()
  , is_nat(0()) -> tt()
  , is_nat(s(x)) -> is_nat(x)
  , is_natlist(nil()) -> tt()
  , is_natlist(cons(x, xs)) -> and(is_nat(x), is_natlist(xs))
  , from(x) -> fromCond(is_natlist(x), x)
  , fromCond(tt(), cons(x, xs)) -> from(cons(s(x), cons(x, xs))) }
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.

{ and^#(tt(), tt()) -> c_1()
, is_nat^#(0()) -> c_2()
, is_natlist^#(nil()) -> c_4() }

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

Strict DPs:
  { is_nat^#(s(x)) -> c_3(is_nat^#(x))
  , is_natlist^#(cons(x, xs)) ->
    c_5(and^#(is_nat(x), is_natlist(xs)),
        is_nat^#(x),
        is_natlist^#(xs))
  , from^#(x) -> c_6(fromCond^#(is_natlist(x), x), is_natlist^#(x))
  , fromCond^#(tt(), cons(x, xs)) ->
    c_7(from^#(cons(s(x), cons(x, xs)))) }
Weak Trs:
  { and(tt(), tt()) -> tt()
  , is_nat(0()) -> tt()
  , is_nat(s(x)) -> is_nat(x)
  , is_natlist(nil()) -> tt()
  , is_natlist(cons(x, xs)) -> and(is_nat(x), is_natlist(xs))
  , from(x) -> fromCond(is_natlist(x), x)
  , fromCond(tt(), cons(x, xs)) -> from(cons(s(x), cons(x, xs))) }
Obligation:
  innermost runtime complexity
Answer:
  MAYBE

Due to missing edges in the dependency-graph, the right-hand sides
of following rules could be simplified:

  { is_natlist^#(cons(x, xs)) ->
    c_5(and^#(is_nat(x), is_natlist(xs)),
        is_nat^#(x),
        is_natlist^#(xs)) }

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

Strict DPs:
  { is_nat^#(s(x)) -> c_1(is_nat^#(x))
  , is_natlist^#(cons(x, xs)) -> c_2(is_nat^#(x), is_natlist^#(xs))
  , from^#(x) -> c_3(fromCond^#(is_natlist(x), x), is_natlist^#(x))
  , fromCond^#(tt(), cons(x, xs)) ->
    c_4(from^#(cons(s(x), cons(x, xs)))) }
Weak Trs:
  { and(tt(), tt()) -> tt()
  , is_nat(0()) -> tt()
  , is_nat(s(x)) -> is_nat(x)
  , is_natlist(nil()) -> tt()
  , is_natlist(cons(x, xs)) -> and(is_nat(x), is_natlist(xs))
  , from(x) -> fromCond(is_natlist(x), x)
  , fromCond(tt(), cons(x, xs)) -> from(cons(s(x), cons(x, xs))) }
Obligation:
  innermost runtime complexity
Answer:
  MAYBE

We replace rewrite rules by usable rules:

  Weak Usable Rules:
    { and(tt(), tt()) -> tt()
    , is_nat(0()) -> tt()
    , is_nat(s(x)) -> is_nat(x)
    , is_natlist(nil()) -> tt()
    , is_natlist(cons(x, xs)) -> and(is_nat(x), is_natlist(xs)) }

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

Strict DPs:
  { is_nat^#(s(x)) -> c_1(is_nat^#(x))
  , is_natlist^#(cons(x, xs)) -> c_2(is_nat^#(x), is_natlist^#(xs))
  , from^#(x) -> c_3(fromCond^#(is_natlist(x), x), is_natlist^#(x))
  , fromCond^#(tt(), cons(x, xs)) ->
    c_4(from^#(cons(s(x), cons(x, xs)))) }
Weak Trs:
  { and(tt(), tt()) -> tt()
  , is_nat(0()) -> tt()
  , is_nat(s(x)) -> is_nat(x)
  , is_natlist(nil()) -> tt()
  , is_natlist(cons(x, xs)) -> and(is_nat(x), is_natlist(xs)) }
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..